1.原理图

PWM的输出需要使用定时器的通道,所以需要观察哪个拥有定时器
另外高级定时器和普通定时器的页面有不同之处,不要被吓到。
2.配置


这里是500,计数的次数,定时器要减一
另外还有开启中断
3.代码
关键函数
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_2)//启动PWM输出
__HAL_TIM_CLEAR_IT(&htim2,TIM_IT_UPDATE)//清除中断
__HAL_TIM_SET_COMPARE(&htim2,TIM_CHANNEL_2,500)//更改占空比
在初始化时一般打开PWM,或者某种情况下打开
HAL_TIM_PWM_Start_IT(&htim1,TIM_CHANNEL_1);
某种条件下改变占空比
__HAL_TIM_SetCompare(&htim1,TIM_CHANNEL_1,400);
某种情况下停止PWM
HAL_TIM_PWM_Stop_IT(&htim1,TIM_CHANNEL_1);
本文介绍了STM32中PWM输出的实现,涉及选择具有定时器的通道、配置计数次数和中断,以及如何通过HAL库启动、停止和改变占空比。关键函数包括HAL_TIM_PWM_Start、HAL_TIM_PWM_Start_IT、__HAL_TIM_SetCompare和HAL_TIM_PWM_Stop_IT。
1213

被折叠的 条评论
为什么被折叠?



