(一)CubeMX设置:
1. 晶振配置(72M)
2. 引脚配置
3. 中断配置
4. 配置及实现方式
由上推出公式:
机器周期: (72MHz / 36) = 2MHz = 0.5us
PWM周期: 0.5 * 100 = 50us = 20kHz
5. 主函数调用PWM函数
HAL_TIM_PWM_Start_IT(&htim3, TIM_CHANNEL_2); //此处一句后可直接进入中断
6. PWM溢出回调函数
void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim) //中断回调
{
static uint16_t i = 0;
i++;
if(i >= 10) //此处10为产生PWM的数量,可设置为变量实时改变
{
i =0;
HAL_TIM_PWM_Stop(&htim3, TIM_CHANNEL_2); //产生指定数量的PWM波后停止PWM的产生
}
}
版权声明:本文为CSDN博主「qq_26043945」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_26043945/article/details/122845837
暂无评论