PIC32MM0128GPM028 interrupts
The 79 interrupt sources (IRQs) of the interrupt controller (EVIC). IRQ n has its flag in IFSx and its enable bit in IECx, bit n mod 32 of register n ÷ 32; each source jumps to its vector, one per IRQ. With multi-vector mode on (INTCONbits.MVEC = 1) each vector has its own handler; in XC32 it is void __ISR(_TIMER_1_VECTOR, IPL4AUTO) Timer1Handler(void), its IPL matching the priority set in IPCx.
| IRQ | Vector | Name | Handler | Source |
|---|---|---|---|---|
| 0 | 0 | CORE_TIMER | __ISR(_CORE_TIMER_VECTOR, IPL4AUTO) | Core Timer |
| 1 | 1 | CORE_SOFTWARE_0 | __ISR(_CORE_SOFTWARE_0_VECTOR, IPL4AUTO) | Core Software 0 |
| 2 | 2 | CORE_SOFTWARE_1 | __ISR(_CORE_SOFTWARE_1_VECTOR, IPL4AUTO) | Core Software 1 |
| 3 | 3 | EXTERNAL_0 | __ISR(_EXTERNAL_0_VECTOR, IPL4AUTO) | External 0 |
| 4 | 4 | EXTERNAL_1 | __ISR(_EXTERNAL_1_VECTOR, IPL4AUTO) | External 1 |
| 5 | 5 | EXTERNAL_2 | __ISR(_EXTERNAL_2_VECTOR, IPL4AUTO) | External 2 |
| 6 | 6 | EXTERNAL_3 | __ISR(_EXTERNAL_3_VECTOR, IPL4AUTO) | External 3 |
| 7 | 7 | EXTERNAL_4 | __ISR(_EXTERNAL_4_VECTOR, IPL4AUTO) | External 4 |
| 8 | 8 | CHANGE_NOTICE_A | __ISR(_CHANGE_NOTICE_A_VECTOR, IPL4AUTO) | PORT A Change Notification |
| 9 | 9 | CHANGE_NOTICE_B | __ISR(_CHANGE_NOTICE_B_VECTOR, IPL4AUTO) | PORT B Change Notification |
| 10 | 10 | CHANGE_NOTICE_C | __ISR(_CHANGE_NOTICE_C_VECTOR, IPL4AUTO) | PORT C Change Notification |
| 11 | 11 | CHANGE_NOTICE_D | __ISR(_CHANGE_NOTICE_D_VECTOR, IPL4AUTO) | PORT D Change Notification |
| 17 | 17 | TIMER_1 | __ISR(_TIMER_1_VECTOR, IPL4AUTO) | Timer 1 |
| 18 | 18 | TIMER_2 | __ISR(_TIMER_2_VECTOR, IPL4AUTO) | Timer 2 |
| 19 | 19 | TIMER_3 | __ISR(_TIMER_3_VECTOR, IPL4AUTO) | Timer 3 |
| 23 | 23 | COMPARATOR_1 | __ISR(_COMPARATOR_1_VECTOR, IPL4AUTO) | Comparator 1 |
| 24 | 24 | COMPARATOR_2 | __ISR(_COMPARATOR_2_VECTOR, IPL4AUTO) | Comparator 2 |
| 25 | 25 | COMPARATOR_3 | __ISR(_COMPARATOR_3_VECTOR, IPL4AUTO) | Comparator 3 |
| 29 | 29 | USB | __ISR(_USB_VECTOR, IPL4AUTO) | USB |
| 32 | 32 | RTCC | __ISR(_RTCC_VECTOR, IPL4AUTO) | Real Time Clock Alarm |
| 33 | 33 | ADC | __ISR(_ADC_VECTOR, IPL4AUTO) | ADC Conversion Done |
| 36 | 36 | HLVD | __ISR(_HLVD_VECTOR, IPL4AUTO) | HLVD |
| 37 | 37 | CLC1 | __ISR(_CLC1_VECTOR, IPL4AUTO) | Logic Cell 1 |
| 38 | 38 | CLC2 | __ISR(_CLC2_VECTOR, IPL4AUTO) | Logic Cell 2 |
| 39 | 39 | CLC3 | __ISR(_CLC3_VECTOR, IPL4AUTO) | Logic Cell 3 |
| 40 | 40 | CLC4 | __ISR(_CLC4_VECTOR, IPL4AUTO) | Logic Cell 4 |
| 41 | 41 | SPI1_ERR | __ISR(_SPI1_ERR_VECTOR, IPL4AUTO) | SPI 1 Error |
| 42 | 42 | SPI1_TX | __ISR(_SPI1_TX_VECTOR, IPL4AUTO) | SPI 1 Transmission |
| 43 | 43 | SPI1_RX | __ISR(_SPI1_RX_VECTOR, IPL4AUTO) | SPI 1 Reception |
| 44 | 44 | SPI2_ERR | __ISR(_SPI2_ERR_VECTOR, IPL4AUTO) | SPI 2 Error |
| 45 | 45 | SPI2_TX | __ISR(_SPI2_TX_VECTOR, IPL4AUTO) | SPI 2 Transmission |
| 46 | 46 | SPI2_RX | __ISR(_SPI2_RX_VECTOR, IPL4AUTO) | SPI 2 Reception |
| 47 | 47 | SPI3_ERR | __ISR(_SPI3_ERR_VECTOR, IPL4AUTO) | SPI 3 Error |
| 48 | 48 | SPI3_TX | __ISR(_SPI3_TX_VECTOR, IPL4AUTO) | SPI 3 Transmission |
| 49 | 49 | SPI3_RX | __ISR(_SPI3_RX_VECTOR, IPL4AUTO) | SPI 3 Reception |
| 53 | 53 | UART1_RX | __ISR(_UART1_RX_VECTOR, IPL4AUTO) | UART 1 Reception |
| 54 | 54 | UART1_TX | __ISR(_UART1_TX_VECTOR, IPL4AUTO) | UART 1 Transmission |
| 55 | 55 | UART1_ERR | __ISR(_UART1_ERR_VECTOR, IPL4AUTO) | UART 1 Error |
| 56 | 56 | UART2_RX | __ISR(_UART2_RX_VECTOR, IPL4AUTO) | UART 2 Reception |
| 57 | 57 | UART2_TX | __ISR(_UART2_TX_VECTOR, IPL4AUTO) | UART 2 Transmission |
| 58 | 58 | UART2_ERR | __ISR(_UART2_ERR_VECTOR, IPL4AUTO) | UART 2 Error |
| 59 | 59 | UART3_RX | __ISR(_UART3_RX_VECTOR, IPL4AUTO) | UART 3 Reception |
| 60 | 60 | UART3_TX | __ISR(_UART3_TX_VECTOR, IPL4AUTO) | UART 3 Transmission |
| 61 | 61 | UART3_ERR | __ISR(_UART3_ERR_VECTOR, IPL4AUTO) | UART 3 Error |
| 65 | 65 | I2C1_SLAVE | __ISR(_I2C1_SLAVE_VECTOR, IPL4AUTO) | I2C 1 Slave |
| 66 | 66 | I2C1_MASTER | __ISR(_I2C1_MASTER_VECTOR, IPL4AUTO) | I2C 1 Master |
| 67 | 67 | I2C1_BUS | __ISR(_I2C1_BUS_VECTOR, IPL4AUTO) | I2C 1 Bus Collision |
| 68 | 68 | I2C2_SLAVE | __ISR(_I2C2_SLAVE_VECTOR, IPL4AUTO) | I2C 2 Slave |
| 69 | 69 | I2C2_MASTER | __ISR(_I2C2_MASTER_VECTOR, IPL4AUTO) | I2C 2 Master |
| 70 | 70 | I2C2_BUS | __ISR(_I2C2_BUS_VECTOR, IPL4AUTO) | I2C 2 Bus Collision |
| 71 | 71 | I2C3_SLAVE | __ISR(_I2C3_SLAVE_VECTOR, IPL4AUTO) | I2C 3 Slave |
| 72 | 72 | I2C3_MASTER | __ISR(_I2C3_MASTER_VECTOR, IPL4AUTO) | I2C 3 Master |
| 73 | 73 | I2C3_BUS | __ISR(_I2C3_BUS_VECTOR, IPL4AUTO) | I2C 3 Bus Collision |
| 74 | 74 | CCP1 | __ISR(_CCP1_VECTOR, IPL4AUTO) | CCP 1 Input Capture or Output Compare |
| 75 | 75 | CCT1 | __ISR(_CCT1_VECTOR, IPL4AUTO) | CCP 1 Timer |
| 76 | 76 | CCP2 | __ISR(_CCP2_VECTOR, IPL4AUTO) | CCP 2 Input Capture or Output Compare |
| 77 | 77 | CCT2 | __ISR(_CCT2_VECTOR, IPL4AUTO) | CCP 2 Timer |
| 78 | 78 | CCP3 | __ISR(_CCP3_VECTOR, IPL4AUTO) | CCP 3 Input Capture or Output Compare |
| 79 | 79 | CCT3 | __ISR(_CCT3_VECTOR, IPL4AUTO) | CCP 3 Timer |
| 80 | 80 | CCP4 | __ISR(_CCP4_VECTOR, IPL4AUTO) | CCP 4 Input Capture or Output Compare |
| 81 | 81 | CCT4 | __ISR(_CCT4_VECTOR, IPL4AUTO) | CCP 4 Timer |
| 82 | 82 | CCP5 | __ISR(_CCP5_VECTOR, IPL4AUTO) | CCP 5 Input Capture or Output Compare |
| 83 | 83 | CCT5 | __ISR(_CCT5_VECTOR, IPL4AUTO) | CCP 5 Timer |
| 84 | 84 | CCP6 | __ISR(_CCP6_VECTOR, IPL4AUTO) | CCP 6 Input Capture or Output Compare |
| 85 | 85 | CCT6 | __ISR(_CCT6_VECTOR, IPL4AUTO) | CCP 6 Timer |
| 86 | 86 | CCP7 | __ISR(_CCP7_VECTOR, IPL4AUTO) | CCP 7 Input Capture or Output Compare |
| 87 | 87 | CCT7 | __ISR(_CCT7_VECTOR, IPL4AUTO) | CCP 7 Timer |
| 88 | 88 | CCP8 | __ISR(_CCP8_VECTOR, IPL4AUTO) | CCP 8 Input Capture or Output Compare |
| 89 | 89 | CCT8 | __ISR(_CCT8_VECTOR, IPL4AUTO) | CCP 8 Timer |
| 90 | 90 | CCP9 | __ISR(_CCP9_VECTOR, IPL4AUTO) | CCP 9 Input Capture or Output Compare |
| 91 | 91 | CCT9 | __ISR(_CCT9_VECTOR, IPL4AUTO) | CCP 9 Timer |
| 92 | 92 | FRC_TUNE | __ISR(_FRC_TUNE_VECTOR, IPL4AUTO) | FRC Tune |
| 94 | 94 | NVM | __ISR(_NVM_VECTOR, IPL4AUTO) | NVM Program or Erase Complete |
| 95 | 95 | PERFORMANCE_COUNTER | __ISR(_PERFORMANCE_COUNTER_VECTOR, IPL4AUTO) | Core Performance Counter |
| 97 | 97 | ECCSB_ERR | __ISR(_ECCSB_ERR_VECTOR, IPL4AUTO) | ECC Single Bit error |
| 98 | 98 | DMA0 | __ISR(_DMA0_VECTOR, IPL4AUTO) | DMA channel 0 |
| 99 | 99 | DMA1 | __ISR(_DMA1_VECTOR, IPL4AUTO) | DMA channel 1 |
| 100 | 100 | DMA2 | __ISR(_DMA2_VECTOR, IPL4AUTO) | DMA channel 2 |
| 101 | 101 | DMA3 | __ISR(_DMA3_VECTOR, IPL4AUTO) | DMA channel 3 |