《PWM呼吸灯制作》 🔧 分步操作指南
《PWM呼吸灯制作》🔧 分步操作指南
[*]CubeMX配置
[*]打开TIM3→Channel2→PWM Generation CH2
[*]参数设置:text
复制
下载
Prescaler: 72-1Counter Period: 1000-1Pulse: 0 (初始占空比0%)
代码添加
c
HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_2); // 启动PWM
while(1) {
for(int i=0; i<1000; i++) {
__HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_2, i);
HAL_Delay(1); // 每1ms增加一次亮度
}
} 原理解析
PWM就像快速开关的水龙头,调节亮度的秘密在于改变"开"和"关"的时间比例
💥 高频错误
现象 原因 解决
无PWM输出 未启动时钟/GPIO未配置 检查__HAL_RCC_TIM3_CLK_ENABLE()
呼吸不平滑 HAL_Delay精度不够 改用SysTick定时器
页:
[1]