2025-11-20 06:48:16
占空比就是让高电平持续时间占总时间的百分比,调这个值能让LED变亮变暗或者风扇转快转慢。STM32F103的PWM输出占空比从0%到100%都能调,调的时候得改定时器里的重载值和比较值。
为什么占空比是这个样子的呢?因为STM32F103的PWM模块是通过定时器计数来控制高低电平的,比如定时器1的CH1通道,当计数器超过重载值(ARR)时翻转高低电平。比如设ARR为1000,如果比较值(CCR)是500,那高电平时间就是500/1000=50%的占空比。实际调的时候,ARR和CCR都是16位寄存器,最大能到65535,所以占空比可以精确到0.01%。不过得注意ARR不能等于0,否则会死机。就像我之前测的例子,设ARR=1000,CCR=300,占空比就是30%,LED就变暗了。但有时候数据手册说占空比最小是1%,那是因为ARR和CCR都是整数,不能有小数。所以调的时候得算准数值,别整出来负数或者超过ARR的值。
本题链接: