//中断实验--利用按键进行的中断;
//首先分析STM32的中断机制:
/*
因为STM32的中断如此之多:
需要一个东西来控制,此时,就运用:NVIC(中断控制器)来操作,不可屏蔽中断(NMI)和外部中断都由它处理。
但是SYSTICK不是由NVIC来控制的。
*/
/*
库函数中NVIC 的结构体成员:
NVIC_InitTypeDef类型的结构体。这个结构体有4个成员:
NVIC_IRQChannel ---------- 需要配置的中断向量
NVIC_IRQChannelCmd ------- 使能或关闭相应中断向量的中断响应
NVIC_IRQChannelPreemptionPriority ------- 配置相应中断向量抢占优先级
NVIC_IRQChannelSubPriority -------- 配置相应中断向量的响应优先级;
使用:
首先使用NVIC_IRQChannel参数来选择将要配置的中断向量,
用NVIC_IRQChannelCmd参数来进行使能(ENABLE)和关闭(DISABLE)该中断;
NVIC_IRQChannelPreemptionPriority 成员中配置向量的抢占的优先级,
在NVIC_IRQChannelSubPriority 需要配置中断向量的响应优先级。
而在STM32中,最重要是配置其优先级。但是这两种优先级有什么区别和联系呢?
抢占优先级和响应优先级:
STM32的中断具有两个属性,一个为抢占属性,另一个为响应属性,其属性的编号越高表明其优先级越高。
抢占