一.中断的介绍
1.中断的概念
2.中断的示意图
3.中断的作用
二.中断的简单使用
使用 用stm32F103核心板的GPIOA端一管脚接一个LED,GPIOB端口一引脚接一个开关(用杜邦线模拟代替)。采用中断模式编程,当开关接高电平时,LED亮灯;接低电平时,LED灭灯。
1.首先打开STM32CUBEMX,新建一个工程
选择芯片型号,我选择的是STM32F103C8
修改RCC的设置如下图:
再点击SYS修改设置:
点击GPIO,选择自己用到的管脚,这里我的LED是连在PB5管脚,按键是连在PA1管脚
连接LED的管脚选择GPIO_Output
,按键所连的管脚选择GPIO_EXIT
按键所连的管脚选择GPIO_EXIT
对于key选择中断上升沿触发
点击NVIC
修改时钟设置如图:
给项目命名,选择IDE型号
用Keil5打开工程,打开main.c,找到这里并在中间插入中断代码,代码如下:
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
/* Prevent unused argument(s) compilation warning */
HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_5);
/* NOTE: This function Should not be modified, when the callback is needed,
the HAL_GPIO_EXTI_Callback could be implemented in the user file
*/
}
用烧录软件烧入芯片
连接电路图如下图所示
黄色线为开关连的PA1
效果图:
略微有点点接触不良,不过实现了。
参考博客:
嵌入式:STM32F103中断方式点亮LED流水灯_LaiYiFei25的博客-CSDN博客