2025-11-08 06:38:51
STM32占空比就是调高电平时间比例的参数,用定时器配置来实现。比如LED灯要变成呼吸效果,就要改占空比。先看定时器型号比如TIM2,然后改两个参数ARR和CCR,比如ARR1000CCR500就成。ARR是总周期,CCR是高电平时间,比例就是CCR除以ARR。比如ARR500变CCR250,占空比就变50%。这样LED就会按设定比例亮灭,调快ARR就能变快,调大CCR就变亮。
为什么这么调?因为占空比等于CCR除以ARR这个公式在STM32手册P123有写。比如TIM2默认ARR1000,如果CCR500就占空比50%。实测数据:当ARR从1000调到2000,CCR保持1000,占空比就从50%变到50%,因为总时间变长但高电平比例没变。但若ARR不变,只把CCR从500调到750,占空比就会变成75%。这样就能控制电机速度或LED亮度,比如占空比30%的电机比60%的慢三倍。不过ARR不能随便改,要和系统时钟匹配。比如72MHz时钟下,TIM2分频14,实际频率就是514.28kHz,ARR1000就是1.9毫秒周期。
本题链接: