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

Posted CodeAllen2022

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STM32 HAL库学习系列第9篇---NVIC按键外部中断函数相关的知识,希望对你有一定的参考价值。

**

针对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.开启中断,配置中断 HAL_TIM_Base_Start_IT( &htim6);//开启基本定时器中断模式计数
2.回调处理(中断处理)

以上是关于STM32 HAL库学习系列第9篇---NVIC按键外部中断函数的主要内容,如果未能解决你的问题,请参考以下文章

STM32 HAL库学习系列第7篇---定时器TIM 输入捕获功能

STM32F4 HAL库开发 -- NVIC 中断优先级管理

STM32F4 HAL库开发 -- NVIC 中断优先级管理

STM32F4 HAL库开发 -- NVIC 中断优先级管理

STM32 学习9 SysTick 定时器

STM32 学习9 SysTick 定时器