外部中断基础

1. 引脚配置

  • 设置引脚

  • GPIO配置界面切换中断模式

  • NVIC使能勾选上

  • 生成文件。

2. 中断定义

  • 在stm32f4xx_hal_gpio.c文件中找到

    1
    __weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)

    void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)​复制到main.c文件中进行重定义

3. 点灯示例

1
2
3
4
5
6
7
8
9
10
11
12
13
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
if(GPIO_Pin == GPIO_PIN_3)
{
HAL_GPIO_TogglePin(GPIOF,GPIO_PIN_9);
while(HAL_GPIO_ReadPin(GPIOE,GPIO_PIN_3)==RESET);
}
if(GPIO_Pin == GPIO_PIN_4)
{
HAL_GPIO_TogglePin(GPIOF,GPIO_PIN_10);
while(HAL_GPIO_ReadPin(GPIOE,GPIO_PIN_4)==RESET);
}
}

这是跟随B站小蜜蜂老师的干货铺【小蜜蜂笔记】基于STM32CubeMX的嵌入式开发基础教程所写的学习笔记。

此教程以应用为主,辅以简单的原理讲解,能够快速的上手STM32的开发。