2025-11-08 06:24:40
要改STM32的PWM占空比得先看定时器设置。就像调灯光亮度一样,把定时器里两个寄存器调对就行。高电平时间多就占空比高,少就低。比如调到50%就是高电平500ms低电平500ms这样。
为啥是这个办法呢?因为STM32的PWM靠定时器计数实现。定时器分两个关键参数:预分频值和自动重载值。比如用TIM1定时器,设预分频为8,自动重载1000,那周期就是1秒。占空比等于(自动重载- Capture Compare值)/自动重载×100%。比如 Capture Compare设500,占空比就是50%。手册里写得很清楚,占空比公式是(OCNT/ARR)×100%。这样调寄存器就能精准控制波形了。不过要注意ARR不能太小,否则计数不够。比如预分频8,ARR设100,那周期才125ms,可能不够用。
本题链接: