13. Nested vectored interrupt controller (NVIC)

13.1 NVIC main features

The NVIC and the processor core interfaces are closely coupled, resulting in low-latency interrupt processing and efficient processing of late arriving interrupts.

All interrupts including the core exceptions are managed by the NVIC.

For more information on exceptions and NVIC programming, refer to the PM0214 programming manual for Cortex ® -M4 (PM0214).

13.2 Interrupt and exception vectors

The vector table is given in Table 78 (shaded cells indicate the processor exceptions).

Table 78. Vector table

PositionPriorityType of priorityAcronymDescription (1)Address
----Reserved0x0000 0000
--3FixedResetReset0x0000 0004
--2FixedNMINon maskable interrupt HSE32 CSS, flash ECC and SRAM2 parity0x0000 0008
--1FixedHardFaultAll classes of fault0x0000 000C
-0SettableMemManagerMemory manager0x0000 0010
-1SettableBusFaultPrefetch fault, memory access fault0x0000 0014
-2SettableUsageFaultUndefined instruction or illegal state0x0000 0018
----Reserved0x0000 001C
0x0000 0028
-3SettableSVCallSystem service call via SWI instruction0x0000 002C
-4SettableDebugDebug monitor0x0000 0030
----Reserved0x0000 0034
-5SettablePendSVPendable request for system service0x0000 0038
-6SettableSysTickSysTick timer0x0000 003C
07SettableWWDGWindow watchdog early wake-up0x0000 0040

Table 78. Vector table (continued)

PositionPriorityType of priorityAcronymDescription (1)Address
18SettablePVD, PVM[3]PVD through EXTI[16]
PVM[3] through EXTI[34]
0x0000 0044
29SettableTAMP, RTC_STAMP, LSE_CSS, RTC_SSRUTAMP tamper
RTC timestamp
LSECSS interrupt
RTC SSR underflow interrupt
0x0000 0048
310SettableRTC_WKUPRTC wake-up interrupt0x0000 004C
411SettableFLASHFlash memory global interrupt and flash memory ECC single error interrupt0x0000 0050
512SettableRCCRCC global interrupt0x0000 0054
613SettableEXTI0EXTI line 0 interrupt through EXTI[0]0x0000 0058
714SettableEXTI1EXTI line 1 interrupt through EXTI[1]0x0000 005C
815SettableEXTI2EXTI line 2 interrupt through EXTI[2]0x0000 0060
916SettableEXTI3EXTI line 3 interrupt through EXTI[3]0x0000 0064
1017SettableEXTI4EXTI line 4 interrupt through EXTI[4]0x0000 0068
1118SettableDMA1_CH1DMA1 channel 1 non-secure interrupt0x0000 006C
1219SettableDMA1_CH2DMA1 channel 2 non-secure interrupt0x0000 0070
1320SettableDMA1_CH3DMA1 channel 3 non-secure interrupt0x0000 0074
1421SettableDMA1_CH4DMA1 channel 4 non-secure interrupt0x0000 0078
1522SettableDMA1_CH5DMA1 channel 5 non-secure interrupt0x0000 007C
1623SettableDMA1_CH6DMA1 channel 6 non-secure interrupt0x0000 0080
1724SettableDMA1_CH7DMA1 channel 7 non-secure interrupt0x0000 0084
1825SettableADCADC global interrupt0x0000 0088
1926SettableDACDAC global interrupt0x0000 008C
2027SettableReservedReserved0x0000 0090
2128SettableCOMPCOMP2 and COMP1 interrupt through EXTI[22:21]0x0000 0094
2229SettableEXTI[9:5]EXTI line [9:5] interrupt through EXTI[9:5]0x0000 0098
2330SettableTIM1_BRKTimer 1 break interrupt0x0000 009C
2431SettableTIM1_UPTimer 1 Update0x0000 00A0
2532SettableTIM1_TRG_COMTimer 1 trigger and communication0x0000 00A4
2633SettableTIM1_CCTimer 1 capture compare interrupt0x0000 00A8
2734SettableTIM2Timer 2 global interrupt0x0000 00AC
2835SettableTIM16Timer 16 global interrupt0x0000 00B0
2936SettableTIM17Timer 17 global interrupt0x0000 00B4
3037SettableI2C1_EVI2C1 event interrupt0x0000 00B8

Table 78. Vector table (continued)

PositionPriorityType of priorityAcronymDescription (1)Address
3138SettableI2C1_ERI2C1 error interrupt0x0000 00BC
3239SettableI2C2_EVI2C2 event interrupt0x0000 00C0
3340SettableI2C2_ERI2C2 error interrupt0x0000 00C4
3441SettableSPI1SPI1 global interrupt0x0000 00C8
3542SettableSPI2S2SPI2S2 global interrupt0x0000 00CC
3643SettableUSART1USART1 global interrupt0x0000 00D0
3744SettableUSART2USART2 global interrupt0x0000 00D4
3845SettableLPUART1LPUART1 global interrupt0x0000 00D8
3946SettableLPTIM1LP timer 1 global interrupt0x0000 00DC
4047SettableLPTIM2LP timer 2 global interrupt0x0000 00E0
4148SettableEXTI[15:10]EXTI line [15:10] interrupt through EXTI[15:10]0x0000 00E4
4249SettableRTC_ALARMRTC alarms A and B interrupt0x0000 00E8
4350SettableLPTIM3LP timer 3 global interrupt0x0000 00EC
4451SettableReservedReserved0x0000 00F0
4552SettableReservedReserved0x0000 00F4
4653SettableReservedReserved0x0000 00F8
4754SettableHSEMSemaphore interrupt 0 to CPU0x0000 00FC
4855SettableI2C3_EVI2C3 event interrupt0x0000 0100
4956SettableI2C3_ERI2C3 error interrupt0x0000 0104
5057SettableRadio IRQ,
Busy
Radio IRQs
RFBUSY interrupt through EXTI[45]
0x0000 0108
5158SettableAESAES global interrupt0x0000 010C
5259SettableTrue RNGTrue random number generator interrupt0x0000 0110
5360SettablePKAPrivate key accelerator interrupt0x0000 0114
5461SettableDMA2_CH1DMA2 channel 1 non-secure interrupt0x0000 0118
5562SettableDMA2_CH2DMA2 channel 2 non-secure interrupt0x0000 011C
5663SettableDMA2_CH3DMA2 channel 3 non-secure interrupt0x0000 0120
5764SettableDMA2_CH4DMA2 channel 4 non-secure interrupt0x0000 0124
5865SettableDMA2_CH5DMA2 channel 5 non-secure interrupt0x0000 0128
5966SettableDMA2_CH6DMA2 channel 6 non-secure interrupt0x0000 012C
6067SettableDMA2_CH7DMA2 channel 7 non-secure interrupt0x0000 0130
6168SettableDMAMUX1_OVRDMAMUX1 overrun interrupt0x0000 0134

1. EXTI[n] refer to the input event number [n] of the EXTI.