7.7 Status/Control Registers
Although these registers are not specifically part of the interrupt control hardware, two of the CPU Control registers contain bits that control interrupt functionality. For more information on these registers, refer to “Enhanced CPU” (www.microchip.com/DS70005158) in the “dsPIC33/PIC24 Family Reference Manual”.
- The CPU STATUS Register, SR, contains the IPL[2:0] bits (SR[7:5]). These bits indicate the current CPU Interrupt Priority Level. The user software can change the current CPU Interrupt Priority Level by writing to the IPLx bits.
- The CORCON register contains the IPL3 bit, which together with IPL[2:0], also indicates the current CPU priority level. IPL3 is a read-only bit so that trap events cannot be masked by the user software.
| Offset | Name | Bit Pos. | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|
| 0x0800 | IFS0 | 15:8 | INT1IF | NVMIF | ECCSBEIF | U1TXIF | U1RXIF | SPI1TXIF | SPI1RXIF | DMA1IF |
| 7:0 | CCT1IF | CCP1IF | DMA0IF | CNBIF | CNAIF | T1IF | INT0IF | |||
| 0x0802 | IFS1 | 15:8 | C1RXIF | SPI2TXIF | SPI2RXIF | U2TXIF | U2RXIF | INT3IF | C1IF | CCT2IF |
| 7:0 | CCP2IF | DMA3IF | INT2IF | CNCIF | DMAIF | MI2C1IF | SI2C1IF | |||
| 0x0804 | IFS2 | 15:8 | DMTIF | CCT4IF | CCP4IF | |||||
| 7:0 | CCT3IF | CCP3IF | ||||||||
| 0x0806 | IFS3 | 15:8 | PTGSTEPIF | ICDIF | U3TXIF | U3RXIF | U3EIF | |||
| 7:0 | C1TXIF | CRCIF | U2EIF | U1EIF | ||||||
| 0x0808 | IFS4 | 15:8 | CMP1IF | CNDIF | ||||||
| 7:0 | PWM4IF | PWM3IF | PWM2IF | PWM1IF | I2C1BCIF | |||||
| 0x080A | IFS5 | 15:8 | AD1AN4IF | AD1AN3IF | AD1AN2IF | AD1AN1IF | AD1AN0IF | ADCIF | ||
| 7:0 | SENT1EIF | SENT1IF | PTG3IF | PTG2IF | PTG1IF | PTG0IF | PTGWDTIF | |||
| 0x080C | IFS6 | 15:8 | AD1AN20IF | AD1AN19IF | AD1AN18IF | AD1AN17IF | AD1AN16IF | AD1AN15IF | AD1AN14IF | AD1AN13IF |
| 7:0 | AD1AN12IF | AD1AN11IF | AD1AN10IF | AD1AN9IF | AD1AN8IF | AD1AN7IF | AD1AN6IF | AD1AN5IF | ||
| 0x080E | IFS7 | 15:8 | SPI2IF | SPI1IF | CLC2PIF | CLC1PIF | ADFLTR3IF | ADFLTR2IF | ADFLTR1IF | ADFLTR0F |
| 7:0 | ADCMP3IF | ADCMP2IF | ADCMP1IF | ADCMP0IF | AD1AN21IF | |||||
0x0810 ... 0x0813 | Reserved | |||||||||
| 0x0814 | IFS10 | 15:8 | CLC3PIF | PEVTFIF | PEVTEIF | PEVTDIF | PEVTCIF | PEVTBIF | PEVTAIF | |
| 7:0 | ADCC1EIF | ADCC0EIF | ||||||||
| 0x0816 | IFS11 | 15:8 | U3ENTIF | U2ENTIF | U1ENTIF | |||||
| 7:0 | CLC4NIF | CLC3NIF | CLC2NIF | CLC1NIF | CLC4PIF | |||||
0x0818 ... 0x081F | Reserved | |||||||||
| 0x0820 | IEC0 | 15:8 | INT1IE | NVMIE | ECCSBEIE | U1TXIE | U1RXIE | SPI1TXIE | SPI1RXIE | DMA1IE |
| 7:0 | CCT1IE | CCP1IE | DMA0IE | CNBIE | CNAIE | T1IE | INT0IE | |||
| 0x0822 | IEC1 | 15:8 | C1RXIE | SPI2TXIE | SPI2RXIE | U2TXIE | U2RXIE | INT3IE | C1IE | CCT2IE |
| 7:0 | CCP2IE | DMA3IE | INT2IE | CNCIE | DMA2IE | MI2C1IE | SI2C1IE | |||
| 0x0824 | IEC2 | 15:8 | DMTIE | CCT4IE | CCP4IE | |||||
| 7:0 | CCT3IE | CCP3IE | ||||||||
| 0x0826 | IEC3 | 15:8 | PTGSTEPIE | ICDIE | U3TXIE | U3RXIE | U3EIE | |||
| 7:0 | C1TXIE | CRCIE | U2EIE | U1EIE | ||||||
| 0x0828 | IEC4 | 15:8 | CMP1IE | CNDIE | ||||||
| 7:0 | PWM4IE | PWM3IE | PWM2IE | PWM1IE | I2C1BCIE | |||||
| 0x082A | IEC5 | 15:8 | AD1AN4IE | AD1AN3IE | AD1AN2IE | AD1AN1IE | AD1AN0IE | ADCIE | ||
| 7:0 | SENT1EIE | SENT1IE | PTG3IE | PTG2IE | PTG1IE | PTG0IE | PTGWDTIE | |||
| 0x082C | IEC6 | 15:8 | AD1AN20IE | AD1AN19IE | AD1AN18IE | AD1AN17IE | AD1AN16IE | AD1AN15IE | AD1AN14IE | AD1AN13IE |
| 7:0 | AD1AN12IE | AD1AN11IE | AD1AN10IE | AD1AN9IE | AD1AN8IE | AD1AN7IE | AD1AN6IE | AD1AN5IE | ||
| 0x082E | IEC7 | 15:8 | SPI2GIE | SPI1GIE | CLC2PIE | CLC1PIE | ADFLTR3IE | ADFLTR2IE | ADFLTR1IE | ADFLTR0IE |
| 7:0 | ADCMP3IE | ADCMP2IE | ADCMP1IE | ADCMP0IE | AD1AN21IE | |||||
0x0830 ... 0x0833 | Reserved | |||||||||
| 0x0834 | IEC10 | 15:8 | CLC3PIE | PEVTFIE | PEVTEIE | PEVTDIE | PEVTCIE | PEVTBIE | PEVTAIE | |
| 7:0 | ||||||||||
| 0x0836 | IEC11 | 15:8 | U3ENTIE | U2ENTIE | U1ENTIE | |||||
| 7:0 | CLC4NIE | CLC3NIE | CLC2NIE | CLC1NIE | CLC4PIE | |||||
0x0838 ... 0x083F | Reserved | |||||||||
| 0x0840 | IPC0 | 15:8 | CNBIP[2:0] | CNAIP[2:0] | ||||||
| 7:0 | T1IP[2:0] | INT0IP[2:0] | ||||||||
| 0x0842 | IPC1 | 15:8 | CCT1IP[2:0] | CCP1IP[2:0] | ||||||
| 7:0 | DMA0IP[2:0] | |||||||||
| 0x0844 | IPC2 | 15:8 | U1RXIP[2:0] | SPI1TXIP[2:0] | ||||||
| 7:0 | SPI1RXIP[2:0] | DMA1IP[2:0] | ||||||||
| 0x0846 | IPC3 | 15:8 | INT1IP[2:0] | NVMIP[2:0] | ||||||
| 7:0 | ECCSBIP[2:0] | U1TXIP[2:0] | ||||||||
| 0x0848 | IPC4 | 15:8 | CNCIP[2:0] | DMA2IP[2:0] | ||||||
| 7:0 | MI2C1IP[2:0] | SI2C1IP[2:0] | ||||||||
| 0x084A | IPC5 | 15:8 | CCP2IP[2:0] | |||||||
| 7:0 | DMA3IP[6:4] | INT2IP[2:0] | ||||||||
| 0x084C | IPC6 | 15:8 | U2RXIP[2:0] | INT3IP[2:0] | ||||||
| 7:0 | C1IP[2:0] | CCT2IP[2:0] | ||||||||
| 0x084E | IPC7 | 15:8 | C1RXIP[2:0] | SPI2TXIP[2:0] | ||||||
| 7:0 | SPI2RXIP[2:0] | U2TXIP[2:0] | ||||||||
| 0x0850 | IPC8 | 15:8 | CCP3IP[2:0] | |||||||
| 7:0 | ||||||||||
| 0x0852 | IPC9 | 15:8 | ||||||||
| 7:0 | CCT3IP[2:0] | |||||||||
| 0x0854 | IPC10 | 15:8 | ||||||||
| 7:0 | CCT4IP[2:0] | CCP4IP[2:0] | ||||||||
| 0x0856 | IPC11 | 15:8 | ||||||||
| 7:0 | DMTIP[2:0] | |||||||||
| 0x0858 | IPC12 | 15:8 | CRCIP[2:0] | U2EIP[2:0] | ||||||
| 7:0 | U1EIP[2:0] | |||||||||
| 0x085A | IPC13 | 15:8 | ||||||||
| 7:0 | C1TXIP[2:0] | |||||||||
| 0x085C | IPC14 | 15:8 | U3TXIP[2:0] | |||||||
| 7:0 | U3RXIP[2:0] | U3EIP[2:0] | ||||||||
| 0x085E | IPC15 | 15:8 | PTGSTEPIP[2:0] | |||||||
| 7:0 | ICDIP[2:0] | |||||||||
| 0x0860 | IPC16 | 15:8 | PWM1IP[2:0] | |||||||
| 7:0 | I2C1BCIP[2:0] | |||||||||
| 0x0862 | IPC17 | 15:8 | PWM4IP[2:0] | |||||||
| 7:0 | PWM3IP[2:0] | PWM2IP[2:0] | ||||||||
| 0x0864 | IPC18 | 15:8 | CNDIP[2:0] | |||||||
| 7:0 | ||||||||||
| 0x0866 | IPC19 | 15:8 | ||||||||
| 7:0 | CMP1IP[2:0] | |||||||||
| 0x0868 | IPC20 | 15:8 | PTG1IP[2:0] | PTG0IP[2:0] | ||||||
| 7:0 | PTGWDTIP[2:0] | |||||||||
| 0x086A | IPC21 | 15:8 | SENT1EIP[2:0] | SENT1IP[2:0] | ||||||
| 7:0 | PTG3IP[2:0] | PTG2IP[2:0] | ||||||||
| 0x086C | IPC22 | 15:8 | AD1AN0IP[2:0] | ADCIP[2:0] | ||||||
| 7:0 | ||||||||||
| 0x086E | IPC23 | 15:8 | AD1AN4IP[2:0] | AD1AN3IP[2:0] | ||||||
| 7:0 | AD1AN2IP[2:0] | ADCAN1IP[2:0] | ||||||||
| 0x0870 | IPC24 | 15:8 | AD1AN8IP[2:0] | AD1AN7IP[2:0] | ||||||
| 7:0 | AD1AN6IP[2:0] | AD1AN5IP[2:0] | ||||||||
| 0x0872 | IPC25 | 15:8 | AD1AN12IP[2:0] | AD1AN11IP[2:0] | ||||||
| 7:0 | AD1AN10IP[2:0] | AD1AN9IP[2:0] | ||||||||
| 0x0874 | IPC26 | 15:8 | AD1AN16IP[2:0] | AD1AN15IP[2:0] | ||||||
| 7:0 | AD1AN14IP[2:0] | AD1AN13IP[2:0] | ||||||||
| 0x0876 | IPC27 | 15:8 | AD1AN20IP[2:0] | AD1AN19IP[2:0] | ||||||
| 7:0 | AD1AN18IP[2:0] | AD1AN17IP[2:0] | ||||||||
| 0x0878 | IPC28 | 15:8 | ||||||||
| 7:0 | AD1AN21IP[2:0] | |||||||||
| 0x087A | IPC29 | 15:8 | ADCMP3IP[2:0] | ADCMP2IP[2:0] | ||||||
| 7:0 | ADCMP1IP[2:0] | ADCMP0IP[2:0] | ||||||||
| 0x087C | IPC30 | 15:8 | ADFLTR3IP[2:0] | ADFLTR2IP[2:0] | ||||||
| 7:0 | ADFLTR1IP[2:0] | ADFLTR0IP[2:0] | ||||||||
| 0x087E | IPC31 | 15:8 | SPI2IP[2:0] | SPI1IP[2:0] | ||||||
| 7:0 | CLC2PIP[2:0] | CLC1PIP[2:0] | ||||||||
0x0880 ... 0x0893 | Reserved | |||||||||
| 0x0894 | IPC42 | 15:8 | PEVTCIP[2:0] | PEVTBIP[2:0] | ||||||
| 7:0 | PEVTAIP[2:0] | |||||||||
| 0x0896 | IPC43 | 15:8 | CLC3PEIP[2:0] | PEVTFIP[2:0] | ||||||
| 7:0 | PEVTEIP[2:0] | PEVTDIP[2:0] | ||||||||
| 0x0898 | IPC44 | 15:8 | CLC3NEIP[2:0] | CLC2NEIP[2:0] | ||||||
| 7:0 | CLC1NEIP[2:0] | CLC4PEIP[2:0] | ||||||||
| 0x089A | IPC45 | 15:8 | ||||||||
| 7:0 | CLC4NEIP[2:0] | |||||||||
0x089C ... 0x089D | Reserved | |||||||||
| 0x089E | IPC47 | 15:8 | U3EVTIP[2:0] | U2EVTIP[2:0] | ||||||
| 7:0 | U1EVTIP[2:0] | |||||||||
0x08A0 ... 0x08BF | Reserved | |||||||||
| 0x08C0 | INTCON1 | 15:8 | NSTDIS | OVAERR | OVBERR | COVAERR | COVBERR | OVATE | OVBTE | COVTE |
| 7:0 | SFTACERR | DIV0ERR | MATHERR | ADDRERR | STKERR | OSCFAIL | ||||
| 0x08C2 | INTCON2 | 15:8 | GIE | DISI | SWTRAP | AIVTEN | ||||
| 7:0 | INT3EP | INT2EP | INT1EP | INT0EP | ||||||
| 0x08C4 | INTCON3 | 15:8 | CAN | NAE | ||||||
| 7:0 | DAE | DOOVR | ||||||||
| 0x08C6 | INTCON4 | 15:8 | ||||||||
| 7:0 | ECCDBE | SGHT | ||||||||
| 0x08C8 | INTTREG | 15:8 | VHOLD | ILR[3:0] | ||||||
| 7:0 | VECNUM[7:0] | |||||||||
