外部中断主要是在CubeMx中设置好GPIO

在引脚界面配置成中断

STM32Hal库学习(三)CubeMx学习外部中断

然后configuration里对GPIO配置

STM32Hal库学习(三)CubeMx学习外部中断

对于低电平触发中断,需要把GPIO设置为上拉,然后下降沿触发,反之高电平触发,反过来

对NVIC配置

STM32Hal库学习(三)CubeMx学习外部中断

在生成的程序里

stm32f1xx_it.c里有EXTI0中断处理函数

STM32Hal库学习(三)CubeMx学习外部中断

此函数在stm32f1xx_hal_gpio.c里

STM32Hal库学习(三)CubeMx学习外部中断

中断标志位不为0,清零然后调用回调函数

STM32Hal库学习(三)CubeMx学习外部中断

__weak函数用于定义变量或者函数,常见于定义函数,在MDK ARM链接时优先链接定义为非weak的函数或变量,如果找不到则再链接weak函数

在main里自定义HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin),处理中断

STM32Hal库学习(三)CubeMx学习外部中断


相关文章:

  • 2022-12-23
  • 2021-12-15
  • 2021-12-09
  • 2021-12-02
  • 2022-12-23
  • 2022-12-23
  • 2022-01-10
  • 2021-08-01
猜你喜欢
  • 2021-07-29
  • 2021-11-03
  • 2022-12-23
  • 2022-12-23
  • 2021-12-31
  • 2021-04-13
  • 2021-04-06
相关资源
相似解决方案