如标题所示,我最近在用tim8定时器的时候出现了很怪异的事情,查了整整一天才发现就只是顺序的问题,但是实在费解,感觉不该出现这样的事情,
情况我描述一下,用的tim8输出pwm,tim8配置的时候通道用的是ch1,ch2,ch3,pc6.7.8,不存在和spi1重合的情况,然后函数写法如下图
将tim8的配置函数TIM8_Configuration(1, 1800, 0); 放在第1幅图所示位置,延时函数delay_us(500)必须放在TLE5012B_Init()里面最后,tim8才有pwm输出,否则,如图示放置延时函数,或者把printf前面注释去掉,都会导致不能输出pwm。但是如果改成第二幅图上这样的配置顺序,输出pwm就很正常了,这个是为什么,有什么能解释一下吗?好诡异
|