将
STM32定时器计数周期设为0xFF(累加256次溢出),比较值设为0x7F,在某一时刻将新的计数周期0x7F与比较值0x3F加载到影子寄存器(即,在当前计数周期结束后,新的周期值将自动加载,也就是不立即更新)。当正在进行的一个周期结束后,经示波器测量确实可以看到其下一个周期发生了变化,但其周期明显与预设值对应不上!再次经过一个周期,定时器才可安照预设值稳定输出。
目前已在H7/L4上发现此问题,定时器分频系数为1。此外,使用定时器输出PWM时也有相同情况出现,即改变PWM频率后的前两个周期输出不对。也有网友提及但未解决。
可简单通过cubeMX配置定时器,随后在比较中断内翻转IO,经示波器测量复现此问题。