你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm8简单的点亮led程序,一直不成功,求助各位

[复制链接]
木头子 提问时间:2014-2-12 16:31 /
本人用的是stm8s103f3,编译器是ira。程序如下:
#include
main (void)
{
    PC_DDR = 0x80;   //设置PC7为输出模式
   
    PC_CR1 = 0x80;
    //设置PC7为推挽输出
   
    PC_CR2 = 0x0;
    //设置PC7输出速度最大为2MH
   
    
    PC_ODR = 0x0;
    while (1)
{
}
    
   高电平输出灯应该亮的,但是发觉芯片几乎所有的引脚都输出高电平,我给PC_ODR赋值为0,在编译器中看到寄存器内容和程序赋值的一样,可是送到板子上就是不行了,一直都是高电平。求大家帮忙看看程序错在哪里了。在此感激不尽。
收藏 评论13 发布时间:2014-2-12 16:31

举报

13个回答
废鱼 回答时间:2014-2-13 11:37:49

RE:stm8简单的点亮led程序,一直不成功,求助各位

高到低之间加个延时,速度太快你根本看不到.
shuimulingchen 回答时间:2015-1-20 23:55:30
我也有相同的疑问,楼主要是弄明白了麻烦告诉我一下,谢谢。
平淡是真 回答时间:2015-1-21 00:24:51
太爽了,谢谢楼主!
wenyangzeng 回答时间:2015-1-22 07:45:47
在循环中:

PC_ODR |=0X80;
delay();
PC_ODR &=~0X80;
delay();

埃斯提爱慕 回答时间:2015-1-22 08:46:48
提示: 作者被禁止或删除 内容自动屏蔽
shuimulingchen 回答时间:2015-1-22 22:01:38
s7631001 发表于 2015-1-21 00:24
太爽了,谢谢楼主!

你弄明白了?
拼命三郎 回答时间:2015-1-24 10:36:40
QQ截图20150124103212.jpg
星辰一方 回答时间:2015-1-24 12:25:39
楼主你这没有延时啊,而且ODR寄存器也没有给高电平呀,你怎么点亮?
星辰一方 回答时间:2015-1-24 12:26:49
不能以测量电压为准,你输出模式对照下是否是推挽输出,
liyiui 回答时间:2015-1-24 19:36:11
外设要设置,同时要加延时
八十八夜 回答时间:2015-1-28 10:10:05
#include"iostm8s103f3.h"
void main ()
{
    PC_DDR = 0x80;   
    PC_CR1 = 0x80;  
    PC_CR2 = 0x00; //PC口推挽输出
      
    PC_ODR = 0x00;//PC口输出低电平
    while (1);
}
星辰一方 回答时间:2015-1-28 10:33:51
xm3love 发表于 2015-1-28 10:10
#include"iostm8s103f3.h"
void main ()
{

楼主说“高电平应该是点亮的”为什么你们程序里都写PC_ODR =0X00; 啊?建议楼主不要直接赋值,把这句换成“PC_ODR |=0X80;”
QQ图片20150128102901.jpg
八十八夜 回答时间:2015-1-28 11:53:02
高电平亮?看楼主写的是0啊....    那改成PC_ODR = 0XFF;  或者 PC_ODR |= 0X80;    这样PC7应该能输出高电平了。不好意思  之前没细看

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版