STM32 HAL库学习系列第9篇---NVIC按键外部中断函数

举报
CodeAllen 发表于 2021/10/29 23:34:26 2021/10/29
【摘要】 ** 针对HAL库的中断操作,使用按键实例进行说下,以供参考 --------------------------- ** void HAL_GPIO_EXTI_Callback(uint16_t G...
**

针对HAL库的中断操作,使用按键实例进行说下,以供参考
---------------------------

**
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)//回调函数
{
  if(GPIO_Pin==KEY1_GPIO_PIN)
  {
    HAL_Delay(20);// 延时一小段时间,消除抖动 
    if(HAL_GPIO_ReadPin(KEY1_GPIO,KEY1_GPIO_PIN)==KEY1_DOWN_LEVEL)//按键1判断
    {
      BEEP_TOGGLE;
      LED1_ON;
      LED2_ON;
      LED3_ON;
    }
    __HAL_GPIO_EXTI_CLEAR_IT(KEY1_GPIO_PIN);
  }
  else if(GPIO_Pin==KEY2_GPIO_PIN)
  {
    HAL_Delay(20);// 延时一小段时间,消除抖动 
    if(HAL_GPIO_ReadPin(KEY2_GPIO,KEY2_GPIO_PIN)==KEY2_DOWN_LEVEL)//按键2判断
    {
      BEEP_TOGGLE;
      LED1_OFF;
      LED2_OFF;
      LED3_OFF;
    }
    __HAL_GPIO_EXTI_CLEAR_IT(KEY2_GPIO_PIN);
  }
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

中断时间配置

1.开启中断,配置中断 HAL_TIM_Base_Start_IT( &htim6);//开启基本定时器中断模式计数
2.回调处理(中断处理)

文章来源: allen5g.blog.csdn.net,作者:CodeAllen2022,版权归原作者所有,如需转载,请联系作者。

原文链接:allen5g.blog.csdn.net/article/details/77920040

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。