这里的单脉冲控制是指在PWM下产生指定个数的脉冲。
先在CubeMx中按照PWM进行配置。
定义一个变量表示脉冲个数。
uint8_t PWMnum = 5;
开启PWM中断。
HAL_TIM_PWM_Start_IT(&htim1, TIM_CHANNEL_1);
定义脉冲完成回调函数。 uint8_t cnt = 0;
void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim)
{
if(htim->Instance == htim1.Instance)
{
cnt++;
if(cnt == PWMnum)
{
HAL_TIM_PWM_Stop_IT(&htim1, TIM_CHANNEL_1);
PWMnum = 0;
cnt = 0;
}
}
}
通过设置PWMnum即可控制输出脉冲数量。
最后
以上就是娇气毛豆最近收集整理的关于基于HAL库的STM32定时器单脉冲控制的全部内容,更多相关基于HAL库内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复