首页 > 其他 > 详细

基于HAL库的STM32定时器单脉冲控制

时间:2020-05-23 14:38:36      阅读:255      评论:0      收藏:0      [点我收藏+]

这里的单脉冲控制是指在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定时器单脉冲控制

原文:https://www.cnblogs.com/zjx123/p/12942271.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!