WFI32E01 interrupts
The 126 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) | Ext INT 0 |
| 4 | 4 | TIMER_1 | __ISR(_TIMER_1_VECTOR, IPL4AUTO) | Timer1 |
| 5 | 5 | INPUT_CAPTURE_1_ERROR | __ISR(_INPUT_CAPTURE_1_ERROR_VECTOR, IPL4AUTO) | Input Capture 1 Error |
| 6 | 6 | INPUT_CAPTURE_1 | __ISR(_INPUT_CAPTURE_1_VECTOR, IPL4AUTO) | Input Capture 1 |
| 7 | 7 | OUTPUT_COMPARE_1 | __ISR(_OUTPUT_COMPARE_1_VECTOR, IPL4AUTO) | Output Compare 1 |
| 8 | 8 | EXTERNAL_1 | __ISR(_EXTERNAL_1_VECTOR, IPL4AUTO) | Ext INT 1 |
| 9 | 9 | TIMER_2 | __ISR(_TIMER_2_VECTOR, IPL4AUTO) | Timer2 |
| 10 | 10 | INPUT_CAPTURE_2_ERROR | __ISR(_INPUT_CAPTURE_2_ERROR_VECTOR, IPL4AUTO) | Input Capture 2 Error |
| 11 | 11 | INPUT_CAPTURE_2 | __ISR(_INPUT_CAPTURE_2_VECTOR, IPL4AUTO) | Input Capture 2 |
| 12 | 12 | OUTPUT_COMPARE_2 | __ISR(_OUTPUT_COMPARE_2_VECTOR, IPL4AUTO) | Output Compare 2 |
| 13 | 13 | EXTERNAL_2 | __ISR(_EXTERNAL_2_VECTOR, IPL4AUTO) | Ext INT 2 |
| 14 | 14 | TIMER_3 | __ISR(_TIMER_3_VECTOR, IPL4AUTO) | Timer3 |
| 15 | 15 | INPUT_CAPTURE_3_ERROR | __ISR(_INPUT_CAPTURE_3_ERROR_VECTOR, IPL4AUTO) | Input Capture 3 Error |
| 16 | 16 | INPUT_CAPTURE_3 | __ISR(_INPUT_CAPTURE_3_VECTOR, IPL4AUTO) | Input Capture 3 |
| 17 | 17 | OUTPUT_COMPARE_3 | __ISR(_OUTPUT_COMPARE_3_VECTOR, IPL4AUTO) | Output Compare 3 |
| 18 | 18 | EXTERNAL_3 | __ISR(_EXTERNAL_3_VECTOR, IPL4AUTO) | Ext INT 3 |
| 19 | 19 | TIMER_4 | __ISR(_TIMER_4_VECTOR, IPL4AUTO) | Timer4 |
| 20 | 20 | INPUT_CAPTURE_4_ERROR | __ISR(_INPUT_CAPTURE_4_ERROR_VECTOR, IPL4AUTO) | Input Capture 4 Error |
| 21 | 21 | INPUT_CAPTURE_4 | __ISR(_INPUT_CAPTURE_4_VECTOR, IPL4AUTO) | Input Capture 4 |
| 22 | 22 | OUTPUT_COMPARE_4 | __ISR(_OUTPUT_COMPARE_4_VECTOR, IPL4AUTO) | Output Compare 4 |
| 23 | 23 | EXTERNAL_4 | __ISR(_EXTERNAL_4_VECTOR, IPL4AUTO) | Ext INT 4 |
| 24 | 24 | TIMER_5 | __ISR(_TIMER_5_VECTOR, IPL4AUTO) | Timer5 |
| 30 | 30 | FLASH_CONTROL | __ISR(_FLASH_CONTROL_VECTOR, IPL4AUTO) | Flash Control Event |
| 31 | 31 | PREFETCH | __ISR(_PREFETCH_VECTOR, IPL4AUTO) | Prefetch Module SEC Event |
| 32 | 32 | PFW_CRC | __ISR(_PFW_CRC_VECTOR, IPL4AUTO) | PFW CRC event |
| 33 | 33 | RTCC | __ISR(_RTCC_VECTOR, IPL4AUTO) | REAL_TIME_CLOCK |
| 34 | 34 | USB | __ISR(_USB_VECTOR, IPL4AUTO) | USB_1 |
| 35 | 35 | SPI1_FAULT | __ISR(_SPI1_FAULT_VECTOR, IPL4AUTO) | SPI_1_FAULT |
| 36 | 36 | SPI1_RX | __ISR(_SPI1_RX_VECTOR, IPL4AUTO) | SPI_1_RECEIVE |
| 37 | 37 | SPI1_TX | __ISR(_SPI1_TX_VECTOR, IPL4AUTO) | SPI_1_TRANSFER |
| 38 | 38 | UART1_FAULT | __ISR(_UART1_FAULT_VECTOR, IPL4AUTO) | UART_1_FAULT |
| 39 | 39 | UART1_RX | __ISR(_UART1_RX_VECTOR, IPL4AUTO) | UART_1_RECEIVE |
| 40 | 40 | UART1_TX | __ISR(_UART1_TX_VECTOR, IPL4AUTO) | UART_1_TRANSFER |
| 41 | 41 | I2C1_BUS | __ISR(_I2C1_BUS_VECTOR, IPL4AUTO) | I2C_1_BUS_COLLISION_EVENT |
| 42 | 42 | I2C1_SLAVE | __ISR(_I2C1_SLAVE_VECTOR, IPL4AUTO) | I2C_1_SLAVE_EVENT |
| 43 | 43 | I2C1_MASTER | __ISR(_I2C1_MASTER_VECTOR, IPL4AUTO) | I2C_1_MASTER_EVENT |
| 44 | 44 | CHANGE_NOTICE_A | __ISR(_CHANGE_NOTICE_A_VECTOR, IPL4AUTO) | PORT_A_INPUT_CHANGE_INTERRUPT |
| 45 | 45 | CHANGE_NOTICE_B | __ISR(_CHANGE_NOTICE_B_VECTOR, IPL4AUTO) | PORT_B_INPUT_CHANGE_INTERRUPT |
| 46 | 46 | CHANGE_NOTICE_C | __ISR(_CHANGE_NOTICE_C_VECTOR, IPL4AUTO) | PORT_C_INPUT_CHANGE_INTERRUPT |
| 47 | 47 | CHANGE_NOTICE_K | __ISR(_CHANGE_NOTICE_K_VECTOR, IPL4AUTO) | PORT_D_INPUT_CHANGE_INTERRUPT |
| 53 | 53 | SPI2_FAULT | __ISR(_SPI2_FAULT_VECTOR, IPL4AUTO) | SPI 2 Fault |
| 54 | 54 | SPI2_RX | __ISR(_SPI2_RX_VECTOR, IPL4AUTO) | SPI 2 Receive Done |
| 55 | 55 | SPI2_TX | __ISR(_SPI2_TX_VECTOR, IPL4AUTO) | SPI 2 Transfer Done |
| 56 | 56 | UART2_FAULT | __ISR(_UART2_FAULT_VECTOR, IPL4AUTO) | UART 2 Error |
| 57 | 57 | UART2_RX | __ISR(_UART2_RX_VECTOR, IPL4AUTO) | UART 2 Receiver |
| 58 | 58 | UART2_TX | __ISR(_UART2_TX_VECTOR, IPL4AUTO) | UART 2 Transmitter |
| 59 | 59 | I2C2_BUS | __ISR(_I2C2_BUS_VECTOR, IPL4AUTO) | I2C 2 Bus Collision Event |
| 60 | 60 | I2C2_SLAVE | __ISR(_I2C2_SLAVE_VECTOR, IPL4AUTO) | I2C 2 Slave Event |
| 61 | 61 | I2C2_MASTER | __ISR(_I2C2_MASTER_VECTOR, IPL4AUTO) | I2C 2 Master Event |
| 62 | 62 | UART3_FAULT | __ISR(_UART3_FAULT_VECTOR, IPL4AUTO) | UART_3_FAULT |
| 63 | 63 | UART3_RX | __ISR(_UART3_RX_VECTOR, IPL4AUTO) | UART_3_RECEIVE |
| 64 | 64 | UART3_TX | __ISR(_UART3_TX_VECTOR, IPL4AUTO) | UART_3_TRANSFER |
| 68 | 68 | DMA0 | __ISR(_DMA0_VECTOR, IPL4AUTO) | DMA Channel 0 |
| 69 | 69 | DMA1 | __ISR(_DMA1_VECTOR, IPL4AUTO) | DMA Channel 1 |
| 70 | 70 | DMA2 | __ISR(_DMA2_VECTOR, IPL4AUTO) | DMA Channel 2 |
| 71 | 71 | DMA3 | __ISR(_DMA3_VECTOR, IPL4AUTO) | DMA Channel 3 |
| 72 | 72 | DMA4 | __ISR(_DMA4_VECTOR, IPL4AUTO) | DMA Channel 4 |
| 73 | 73 | DMA5 | __ISR(_DMA5_VECTOR, IPL4AUTO) | DMA Channel 5 |
| 74 | 74 | DMA6 | __ISR(_DMA6_VECTOR, IPL4AUTO) | DMA Channel 6 |
| 75 | 75 | DMA7 | __ISR(_DMA7_VECTOR, IPL4AUTO) | DMA Channel 7 |
| 76 | 76 | TIMER_6 | __ISR(_TIMER_6_VECTOR, IPL4AUTO) | Timer 6 |
| 80 | 80 | TIMER_7 | __ISR(_TIMER_7_VECTOR, IPL4AUTO) | Timer 7 |
| 83 | 83 | RFSMC | __ISR(_RFSMC_VECTOR, IPL4AUTO) | WiFi SMC Event |
| 84 | 84 | RFMAC | __ISR(_RFMAC_VECTOR, IPL4AUTO) | WiFi MAC Event |
| 85 | 85 | CTR1_EVENT | __ISR(_CTR1_EVENT_VECTOR, IPL4AUTO) | CTR1 EVENT |
| 86 | 86 | RFTM0 | __ISR(_RFTM0_VECTOR, IPL4AUTO) | WiFi Timer 0 Event |
| 87 | 87 | RFTM1 | __ISR(_RFTM1_VECTOR, IPL4AUTO) | WiFi Timer 1 Event |
| 88 | 88 | RFTM2 | __ISR(_RFTM2_VECTOR, IPL4AUTO) | WiFi Timer 2 Event |
| 89 | 89 | RFTM3 | __ISR(_RFTM3_VECTOR, IPL4AUTO) | WiFi Timer 3 Event |
| 90 | 90 | CTR1_TRG | __ISR(_CTR1_TRG_VECTOR, IPL4AUTO) | CTR1 Trig out event |
| 91 | 91 | RFWCOE | __ISR(_RFWCOE_VECTOR, IPL4AUTO) | WiFi WCOE Event |
| 92 | 92 | ADC | __ISR(_ADC_VECTOR, IPL4AUTO) | ADC global |
| 94 | 94 | ADC_DC1 | __ISR(_ADC_DC1_VECTOR, IPL4AUTO) | ADC Digital Comparator 1 |
| 95 | 95 | ADC_DC2 | __ISR(_ADC_DC2_VECTOR, IPL4AUTO) | ADC Digital Comparator 2 |
| 96 | 96 | ADC_DF1 | __ISR(_ADC_DF1_VECTOR, IPL4AUTO) | ADC Digital Filter 1 |
| 97 | 97 | ADC_DF2 | __ISR(_ADC_DF2_VECTOR, IPL4AUTO) | ADC Digital Filter 2 |
| 100 | 100 | ADC_FAULT | __ISR(_ADC_FAULT_VECTOR, IPL4AUTO) | ADC Fault Interrupt |
| 101 | 101 | ADC_EOS | __ISR(_ADC_EOS_VECTOR, IPL4AUTO) | ADC EO Scan |
| 102 | 102 | ADC_ARDY | __ISR(_ADC_ARDY_VECTOR, IPL4AUTO) | ADC Analog Ready |
| 103 | 103 | ADC_URDY | __ISR(_ADC_URDY_VECTOR, IPL4AUTO) | ADC Update Rdy after Suspend |
| 104 | 104 | ADC_DMA | __ISR(_ADC_DMA_VECTOR, IPL4AUTO) | ADC 1st Class Buffer Transfer |
| 106 | 106 | ADC_DATA0 | __ISR(_ADC_DATA0_VECTOR, IPL4AUTO) | ADC A Data #0 |
| 107 | 107 | ADC_DATA1 | __ISR(_ADC_DATA1_VECTOR, IPL4AUTO) | ADC A Data #1 |
| 108 | 108 | ADC_DATA2 | __ISR(_ADC_DATA2_VECTOR, IPL4AUTO) | ADC A Data #2 |
| 109 | 109 | ADC_DATA3 | __ISR(_ADC_DATA3_VECTOR, IPL4AUTO) | ADC A Data #3 |
| 110 | 110 | ADC_DATA4 | __ISR(_ADC_DATA4_VECTOR, IPL4AUTO) | ADC A Data #4 |
| 111 | 111 | ADC_DATA5 | __ISR(_ADC_DATA5_VECTOR, IPL4AUTO) | ADC A Data #5 |
| 112 | 112 | ADC_DATA6 | __ISR(_ADC_DATA6_VECTOR, IPL4AUTO) | ADC A Data #6 |
| 113 | 113 | ADC_DATA7 | __ISR(_ADC_DATA7_VECTOR, IPL4AUTO) | ADC A Data #7 |
| 114 | 114 | ADC_DATA8 | __ISR(_ADC_DATA8_VECTOR, IPL4AUTO) | ADC A Data #8 |
| 115 | 115 | ADC_DATA9 | __ISR(_ADC_DATA9_VECTOR, IPL4AUTO) | ADC A Data #9 |
| 116 | 116 | ADC_DATA10 | __ISR(_ADC_DATA10_VECTOR, IPL4AUTO) | ADC A Data #10 |
| 117 | 117 | ADC_DATA11 | __ISR(_ADC_DATA11_VECTOR, IPL4AUTO) | ADC A Data #11 |
| 118 | 118 | ADC_DATA12 | __ISR(_ADC_DATA12_VECTOR, IPL4AUTO) | ADC A Data #12 |
| 119 | 119 | ADC_DATA13 | __ISR(_ADC_DATA13_VECTOR, IPL4AUTO) | ADC A Data #13 |
| 120 | 120 | ADC_DATA14 | __ISR(_ADC_DATA14_VECTOR, IPL4AUTO) | ADC A Data #14 |
| 121 | 121 | ADC_DATA15 | __ISR(_ADC_DATA15_VECTOR, IPL4AUTO) | ADC A Data #15 |
| 122 | 122 | ADC_DATA16 | __ISR(_ADC_DATA16_VECTOR, IPL4AUTO) | ADC A Data #16 |
| 123 | 123 | ADC_DATA17 | __ISR(_ADC_DATA17_VECTOR, IPL4AUTO) | ADC A Data #17 |
| 124 | 124 | ADC_DATA18 | __ISR(_ADC_DATA18_VECTOR, IPL4AUTO) | ADC A Data #18 |
| 125 | 125 | ADC_DATA19 | __ISR(_ADC_DATA19_VECTOR, IPL4AUTO) | ADC A Data #19 |
| 126 | 126 | ADC_DATA20 | __ISR(_ADC_DATA20_VECTOR, IPL4AUTO) | ADC A Data #20 |
| 127 | 127 | ADC_DATA21 | __ISR(_ADC_DATA21_VECTOR, IPL4AUTO) | ADC A Data #21 |
| 128 | 128 | ADC_DATA22 | __ISR(_ADC_DATA22_VECTOR, IPL4AUTO) | ADC A Data #22 |
| 129 | 129 | ADC_DATA23 | __ISR(_ADC_DATA23_VECTOR, IPL4AUTO) | ADC A Data #23 |
| 142 | 142 | CAN1 | __ISR(_CAN1_VECTOR, IPL4AUTO) | CAN Combined Interrupt |
| 143 | 143 | CAN2_RX | __ISR(_CAN2_RX_VECTOR, IPL4AUTO) | CAN2 Receive Interrupt |
| 144 | 144 | CAN2_TX | __ISR(_CAN2_TX_VECTOR, IPL4AUTO) | CAN2 Transmit Interrupt |
| 145 | 145 | CAN2_MISC | __ISR(_CAN2_MISC_VECTOR, IPL4AUTO) | CAN2 Misc Interrupt |
| 150 | 150 | SQI1 | __ISR(_SQI1_VECTOR, IPL4AUTO) | SQI Event Completion |
| 152 | 152 | PTG0_STEP | __ISR(_PTG0_STEP_VECTOR, IPL4AUTO) | PTG Step Complete |
| 153 | 153 | PTG0_WDT | __ISR(_PTG0_WDT_VECTOR, IPL4AUTO) | PTG Watchdog Timeout |
| 154 | 154 | PTG0_TRG0 | __ISR(_PTG0_TRG0_VECTOR, IPL4AUTO) | PTG Int. Trigger 0 |
| 155 | 155 | PTG0_TRG1 | __ISR(_PTG0_TRG1_VECTOR, IPL4AUTO) | PTG Int. Trigger 1 |
| 156 | 156 | PTG0_TRG2 | __ISR(_PTG0_TRG2_VECTOR, IPL4AUTO) | PTG Int. Trigger 2 |
| 157 | 157 | PTG0_TRG3 | __ISR(_PTG0_TRG3_VECTOR, IPL4AUTO) | PTG Int. Trigger 3 |
| 162 | 162 | CORE_PERF_COUNT | __ISR(_CORE_PERF_COUNT_VECTOR, IPL4AUTO) | Core perform. counter event |
| 163 | 163 | CORE_FAST_DEBUG_CHAN | __ISR(_CORE_FAST_DEBUG_CHAN_VECTOR, IPL4AUTO) | Fast Debug Channel Event |
| 164 | 164 | CRYPTO | __ISR(_CRYPTO_VECTOR, IPL4AUTO) | Crypto Engine Event |
| 165 | 165 | ETHERNET | __ISR(_ETHERNET_VECTOR, IPL4AUTO) | Ethernet |
| 166 | 166 | CRYPTO1 | __ISR(_CRYPTO1_VECTOR, IPL4AUTO) | Asymmetric Crypto Engine End Event |
| 167 | 167 | CRYPTO1_FAULT | __ISR(_CRYPTO1_FAULT_VECTOR, IPL4AUTO) | Asymmetric Crypto Engine Error Event |
| 168 | 168 | CVD_EVENT | __ISR(_CVD_EVENT_VECTOR, IPL4AUTO) | cvd event |