SLAU847D October 2022 – May 2024 MSPM0L1105 , MSPM0L1106 , MSPM0L1227 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2228 , MSPM0L2228-Q1
MSPM0 devices share a common interrupt and exception mapping across devices. Specific devices do not implement all interrupt sources, but if a peripheral is common to two devices, that peripheral has the same mapping to the NVIC on both devices.
See the device-specific data sheet for a complete list of which interrupts a particular device supports.
The Arm Cortex-M0+ interrupt vector table is 48 words long (192 bytes). The complete platform interrupt and exception table with vector table addresses is given in Table 3-3.
Exception Number | NVIC Number(1) | Priority Group | Exception or Interrupt | Vector Table Address | Vector Description |
---|---|---|---|---|---|
- | - | - | - | 0x0000.0000 | Stack pointer |
1 | - | -3 | Reset | 0x0000.0004 | Reset vector |
2 | - | -2 | NMI | 0x0000.0008 | NMI handler |
3 | - | -1 | Hard fault | 0x0000.000C | Hard fault handler |
4 | - | - | Reserved | 0x0000.0010 | - |
5 | - | - | Reserved | 0x0000.0014 | - |
6 | - | - | Reserved | 0x0000.0018 | - |
7 | - | - | Reserved | 0x0000.001C | - |
8 | - | - | Reserved | 0x0000.0020 | - |
9 | - | - | Reserved | 0x0000.0024 | - |
10 | - | - | Reserved | 0x0000.0028 | - |
11 | - | Selectable | SVCall | 0x0000.002C | Supervisor call handler |
12 | - | - | Reserved | 0x0000.0030 | - |
13 | - | - | Reserved | 0x0000.0034 | - |
14 | - | Selectable | PendSV | 0x0000.0038 | Pended supervisor handler |
15 | - | Selectable | SysTick | 0x0000.003C | SysTick handler |
16 | 0 | Selectable | INT_GROUP0 | 0x0000.0040 | Combined peripheral group 0 handler (see INT_GROUP0 below) |
17 | 1 | Selectable | INT_GROUP1 | 0x0000.0044 | Combined peripheral group 1 handler (see INT_GROUP1 below) |
18 | 2 | Selectable | TIMG1 | 0x0000.0048 | Timer TIMG1 interrupt handler |
19 | 3 | Selectable | Reserved | 0x0000.004C | - |
20 | 4 | Selectable | ADC0 | 0x0000.0050 | ADC0 interrupt handler |
21 | 5 | Selectable | Reserved | 0x0000.0054 | - |
22 | 6 | Selectable | Reserved | 0x0000.0058 | - |
23 | 7 | Selectable | Reserved | 0x0000.005C | - |
24 | 8 | Selectable | Reserved | 0x0000.0060 | |
25 | 9 | Selectable | SPI0 | 0x0000.0064 | SPI0 interrupt handler |
26 | 10 | Selectable | Reserved | 0x0000.0068 | - |
27 | 11 | Selectable | Reserved | 0x0000.006C | - |
28 | 12 | Selectable | Reserved | 0x0000.0070 | - |
29 | 13 | Selectable | UART1 | 0x0000.0074 | UART1 interrupt handler |
30 | 14 | Selectable | Reserved | 0x0000.0078 | - |
31 | 15 | Selectable | UART0 | 0x0000.007C | UART0 interrupt handler |
32 | 16 | Selectable | TIMG0 | 0x0000.0080 | Timer TIMG0 interrupt handler |
33 | 17 | Selectable | Reserved | 0x0000.0084 | - |
34 | 18 | Selectable | TIMG2 | 0x0000.0088 | Timer TIMG2 interrupt handler |
35 | 19 | Selectable | Reserved | 0x0000.008C | - |
36 | 20 | Selectable | TIMG4 | 0x0000.0090 | Timer TIMG4 interrupt handler |
37 | 21 | Selectable | Reserved | 0x0000.0094 | - |
38 | 22 | Selectable | Reserved | 0x0000.0098 | - |
39 | 23 | Selectable | Reserved | 0x0000.009C | - |
40 | 24 | Selectable | I2C0 | 0x0000.00A0 | I2C0 interrupt handler |
41 | 25 | Selectable | I2C1 | 0x0000.00A4 | I2C1 interrupt handler |
42 | 26 | Selectable | Reserved | 0x0000.00A8 | - |
43 | 27 | Selectable | Reserved | 0x0000.00AC | - |
44 | 28 | Selectable | Reserved | 0x0000.00B0 | - |
45 | 29 | Selectable | Reserved | 0x0000.00B4 | - |
46 | 30 | Selectable | Reserved | 0x0000.00B8 | - |
47 | 31 | Selectable | DMA | 0x0000.00BC | DMA interrupt handler |
The CPU implements a nonmaskable interrupt, which handles critical interrupts which must be serviced immediately by the processor. The NMI interrupt sources are managed by SYSCTL. See the corresponding NMI information in the SYSCTL section of the PMCU chapter.
The INT_GROUP0 peripheral interrupt group sources an interrupt to NVIC0 (exception 16) if any peripheral in the group has a pending interrupt. The peripheral interrupts mapped to INT_GROUP0 are given in Table 3-4.
Priority | IIDX Index | Interrupt | Description |
---|---|---|---|
0 | 1 | WWDT0 | WWDT0 interrupt handler |
1 | 2 | Reserved | - |
2 | 3 | DEBUGSS | Debug subsystem interrupt handler |
3 | 4 | FLASHCTL | Flash controller interrupt handler |
4 | 5 | WUC FSUB0 | Generic event subscriber 0 interrupt handler |
5 | 6 | WUC FSUB1 | Generic event subscriber 1 interrupt handler |
6 | 7 | PMCU (SYSCTL) | PMCU (system controller) interrupt handler |
7 | 8 | Reserved | - |
The INT_GROUP1 peripheral interrupt group sources an interrupt to NVIC1 (exception 17) if any peripheral in the group has a pending interrupt. The peripheral interrupts mapped to INT_GROUP1 are given in Table 3-5.
Priority | IIDX Index | Interrupt | Description |
---|---|---|---|
0 | 1 | GPIO0 | GPIO0 interrupt handler |
1 | 2 | Reserved | - |
2 | 3 | COMP0 | COMP0 interrupt handler |
3 | 4 | Reserved | - |
4 | 5 | Reserved | - |
5 | 6 | Reserved | - |
6 | 7 | Reserved | - |
7 | 8 | Reserved | - |