实验目的:掌握EXTI的使用方法。
实验现象:每按下一次USER按键,LD5灯显示反转一次。
STM32L071KB
中断的基本概念
处理器中的中断:在处理器中,中断是一个过程,即CPU在正常执行程序的过程中,遇到外部/内部的紧急事件需要处理,暂时中止当前程序的执行,转而去为处理紧急的事件,待处理完毕后再返回被打断的程序处继续往下执行。中断在计算机多任务处理,尤其是即时系统中尤为重要。比如uCOS,FreeRTOS等。
意义:中断能提高CPU的效率,同时能对突发事件做出实时处理。实现程序的并行化,实现嵌入式系统进程之间的切换。
STM32CumbeMX配置
Keil5程序编写
回调函数HAL_GPIO_EXTI_Callback():
实验现象:
按下user键ld5状态反转。
结论:
EXTI(External interrupt/event controller)—外部中断/事件控制器,管理了控制器的 20个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下降沿的检测。EXTI 可以实现对每个中断/事件线进行单独配置,可以单独配置为中断或者事件,以及触发事件的属性。
NVIC的全称是Nested vectoredinterrupt controller,即嵌套向量中断控制器。
NVIC是Cortex-M3核心的一部分,NVIC一个很重要的概念是优先级分组。和51单片机不同,NVIC将优先级分为两个:抢占优先级(PreemptionPriority)和响应优先级(SubPriority)。抢占优先级比响应优先级要高。同一个优先级上,数字越小,优先级越高。