STM32配置PWM输出时通道极性CH Polarity对输出的影响
配置PWM输出时,通道极性CH Polarity对输出到底会有什么影响,废话不多说,实践出真知,这篇文章实测不同的极性配置对PWM输出的影响。
1、测试平台
使用STM32H732ZGT6的TIM1进行测试。
2、时钟配置
系统时钟配置为550MHz,定时器所在总线的时钟为275MHz,如下图:
3、PWM定时器配置
使用TIM1产生PWM,PWM计数器时钟分频配置为0,不分频,为275MHz;
计数模式为中心对其模式;
计数周期为13750,这样根据时钟频率和计数模式,得到PWM频率为275M/(13750*2)=10kHz。
配置如下:
4、不同的通道极性CH Polarity / CHN Polarity配置对比
PWM通道的模式配置为PWM mode 1,比较值Pulse配置为2750,即计数周期的20%。
不同极性配置后使用示波器测量,示波器通道1黄色线测量的CH,通道2蓝色线测量的互补通道CHN
4.1 CH Polarity High / CHN Polarity High
对于CH通道,计数器计数值小于比较值Pulse时,通道输出电平为H,计数值大于比较值Pulse时,通道输出电平为L,得到正占空比20%;
CHN通道与CH通道输出波形互补。
4.2 CH Polarity Low / CHN Polarity Low
对于CH通道,计数器计数值小于比较值Pulse时,通道输出电平为L,计数值大于比较值Pulse时,通道输出电平为H,得到正占空比80%;
CHN通道与CH通道输出波形互补。
4.3 CH Polarity High / CHN Polarity Low
对于CH通道,计数器计数值小于比较值Pulse时,通道输出电平为H,计数值大于比较值Pulse时,通道输出电平为L,得到正占空比20%;
CHN通道与CH通道输出相同波形。
4.4 CH Polarity Low / CHN Polarity High
对于CH通道,计数器计数值小于比较值Pulse时,通道输出电平为L,计数值大于比较值Pulse时,通道输出电平为H,得到正占空比80%;
CHN通道与CH通道输出相同波形。
5、总结
根据以上测试,定时器计数模式配置为中心对其模式,PWM模式配置为PWM mode 1时,对于CH通道,当计数器计数值小于PWM通道比较值Pulse时,通道输出电平与CH配置极性相同,当计数器计数值大于PWM通道比较值Pulse时,通道输出电平反转(即与CH配置极性相反);对于CHN通道,当其极性配置的与CH极性相同时,其通道输出波形与CH通道输出波形互补,当其极性配置的与CH极性相反时,其通道输出波形与CH通道输出波形相同。
需要注意的是,PWM模式配置为PWM mode 2时刚好相反,即当计数器计数值小于PWM通道比较值Pulse时,通道输出电平与CH配置极性相反,当计数器计数值大于PWM通道比较值Pulse时,通道输出电平反转(即与CH配置极性相同)。如下图:
作者:北山太湖