NVIC是Cortex-M3中心的一部分,关于它的材料不在《STM32的技能参考手册》中,应查阅ARM公司的《Cortex-M3技能参考手册》
Cortex-M3的向量中止一致由NVIC办理
EXTI是ST公司在其STM32产品上扩展的外中止操控。它担任办理映射到GPIO引脚上的外中止和片内几个集成外设的中止(PVD,RTC alarm,USB wakeup,ethernet wakeup),以及软件中止。其输出终究被映射到NVIC的相应通道。因而,装备EXTI中止的进程必定包括对NVIC的装备,例如下面装备EXTI0的进程,就要首要装备EXTI操控器(使能相应的中止线,挑选中止/事情形式,触发边缘极性),然后再装备NVIC操控器(EXTI0映射在NVIC上的通道号,中止优先级,中止屏蔽状况):
GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource0);
EXTI_InitStructure.EXTI_Line = EXTI_Line0;
EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
EXTI_InitStructure.EXTI_LineCmd = ENABLE;
EXTI_Init(&EXTI_InitStructure);
NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPrio
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
EXTI0_IRQn的值,其实便是EXTI0中止向量在中止向量表中的方位(STM32技能参考手册中止向量表Position栏中的数值)