单片机/MCU论坛
直播中

王秀珍

7年用户 1451经验值
私信 关注
[问答]

STM32定时器实验中TIM_OutputState_Enable为什么要使能多次?

如图,tiM_OutputState_Enable这句话写了四遍,写一遍不就够了吗?因为写了一遍,相应寄存器就有值了,后边也没对该值进行更改,为什么要重写呢?而且问题是重写与不重写在PWM波产生时会出现细微的差距,就是在刚开始时可能出现不完整的情况,如图。求大神给解释!
2.jpg
3.jpg

回帖(3)

李玉兰

2023-5-5 10:53:30
你是给四个通道赋值所以写四个,不会有差距,pwm的周期是相同的不会不完整,一样的.
举报

王秀珍

2023-5-5 10:53:37
谢谢,我今早步进分析了下波形,发现波形的确是完整的,可能昨晚电脑有点抽风。现在遇到的问题是这样的,第一个周期时,输出的波形都有问题,但后面就好了,这又是什么原因呢?难道是计数器使能信号的延时?还有,的确是只写一遍赋值就行了,我试过了,结果一样的。
举报

李玉兰

2023-5-5 10:53:44
先设置io和定时器和通道,全配置好了最后再启动定时器,你说的第一个周期波形问题也可能是io没初始化之前状态不对,或者是仿真的问题.不过感觉影响应该不大.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分