要配置这些优先级组,可以采用库函数NVIC_ Priority Config,可输入的参数为NVIC_PriorityGroup PriorityGroup-4_4,分别为以上介绍的5种分配组。于是,有读者觉得疑惑了,如此强大的STm32,所有GPIO都能够配置成外部中断,USART、ADC等外设也有中断,而NVIC只能配置16种中断向量,那在某个工程中使用了超过16个的中断怎么办呢?注意NVIC能配置的是16种中断向量,而不是16个,当工程之中有超过16个中断向量时,必然有2个以上的中断向量是使用相同的中断种类,而具有相同中断种类的中断向量不能互相嵌套。
STM2单片机的所有I/0端口都可以配置为EXT中断模式,用来捕捉外部信号,可以配置为下降沿中断,上升沿中断和上升下降沿中断这三种模式。它们以下图的方式连接到16个外部中断/事件线上。
函数 void EXTI9_5_IRQHandler( ),中断5到9使用同一个中断函数,那我们如何区分这不同的中断,可以使用每个中断的标志位来区分的,如图。