STM32的PWM应用广泛,最重要的就是调节占空比来达到PWM的控制应用。
STM32的一个定时器能同时输出4路PWM分别占据一个通道,而定时器的频率确定了,四个通道的频率也就随之确定,所以同一个定时器的四个通道的频率是相同的。频率由PSC寄存器和arr寄存器计算得到。
f=72MHZ/[(arr+1)(psc+1)]
频率确定后,再通过寄存器TIMX->CCRY寄存器来确定通道Y的占空比。计数器向上计数时,当计数器的值比CCR寄存器值小时输出低电平,比它大时就输出高电平,高电平占总周期的时间就是占空比。
Duty circle=TIMX->CCRY/arr