TIM_SetCompare1(TIM1,led0pwmval),led0pwmval不能为1吗?

2019-07-21 00:40发布

我发现将原子哥的MINISTM32板子上的PWM例程稍微改动一点后,便出现LED0不在改变亮度,既没有PWM输出。将原子哥的源程序里面MAIN函数中的led0pwmval一开始初始化改动下,将led0pwmval=1,问题便出现。将这个变量改为其他值不会出现此现象。感到很奇怪,其他所有设置都没变。原子哥看看什么问题?
主函数现在改为:
 int main(void)
 {
u16 led0pwmval=1;    
u8 dir=1;
delay_init();     //延时函数初始化  
LED_Init();   //初始化与LED连接的硬件接口
TIM1_PWM_Init(899,0);//不分频。PWM频率=72000/(899+1)=80Khz 
    while(1)
{
  delay_ms(10);  
if(dir)led0pwmval++;
else led0pwmval--;  
  if(led0pwmval>300)dir=0;
if(led0pwmval==0)dir=1;    
TIM_SetCompare1(TIM1,led0pwmval);   

}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
lycreturn
1楼-- · 2019-07-21 01:55
 精彩回答 2  元偷偷看……
亮晶晶
2楼-- · 2019-07-21 03:28
对,但是我就是想知道为什么库函数版本不行?按照函数来说,这个应该没有影响的?
正点原子
3楼-- · 2019-07-21 08:38
回复【3楼】亮晶晶:
---------------------------------
不做任何改动,OK么?
亮晶晶
4楼-- · 2019-07-21 13:12
回复【4楼】正点原子:
---------------------------------
OK,就是改动了之后LED0一直是亮的,感觉很奇怪,不知道为什么?下次怎么避免出现这种情况?原子哥,这是为什么呢?
正点原子
5楼-- · 2019-07-21 14:35
 精彩回答 2  元偷偷看……
亮晶晶
6楼-- · 2019-07-21 15:33
回复【6楼】正点原子:
---------------------------------
就只是这里改变了,别的地方都没有改动,觉得很奇怪。

一周热门 更多>