有关STM32高级定时器中心对齐PWM输出的实验记录:
计算PWM的频率公式:f=PCLK2/(TIM_Prescaler+1)/(TIM_Period+1)/2, 条件TIM_ClockDivision=0;
而不是f=PCLK2/(TIM_Prescaler+1)/(TIM_Period+1),这个只针对边沿对齐;正确的计算中多除了2
为什么会这样,可以看中心对齐时的计数趋势图
arr-----|
|.|
| . |
| . |
| . |
| . |-------period
| . |
| . |
| . |
| . |
| . |-------0
中心
______
| |
| |
__| |_______ PWM波形
上图中可知,一个周期内计数从0->ARR,然后又从ARR->0;相对于边沿对齐来说,来回计数了2次,
所以相同的设置参数,中心对齐的PWM频率是边沿对齐的1/2
所以中心模式设置频率时,注意最后要除以2;