;========================================================================== ; PIC33FJ16GP101 Standard Assembly Include File ; ; (c) Copyright 2011 Microchip Technology, All rights reserved ;========================================================================== .NOLIST ;========================================================================== ; This header file defines configurations, registers, and other useful ; bits of information for the PIC33FJ16GP101 microcontroller. These names ; are taken to match the data sheets as closely as possible. ; ; Note that the processor must be selected before this file is included. ; The processor may be selected the following ways: ; ; 1. Command line switch: ; C:\> pic30-as file.s -p33FJ16GP101 ; 2. Placing a ".equ" directive before the ".include": ; .equ __33FJ16GP101, 1 ; .include "p33FJ16GP101.inc" ; 3. Setting the processor in the MPLAB IDE Project Dialog ;========================================================================== ;========================================================================== ; ; Verify Processor ; ;========================================================================== .IFNDEF __33FJ16GP101 .ERROR "Include file does not match processor setting." .ENDIF ;========================================================================== ; ; Register Definitions ; ;========================================================================== ;----- Register Equates (Low Byte, High Byte) ----------------------------- .extern WREG0 .equiv WREG0L, _WREG0 .equiv WREG0H, _WREG0+1 .extern WREG1 .equiv WREG1L, _WREG1 .equiv WREG1H, _WREG1+1 .extern WREG2 .equiv WREG2L, _WREG2 .equiv WREG2H, _WREG2+1 .extern WREG3 .equiv WREG3L, _WREG3 .equiv WREG3H, _WREG3+1 .extern WREG4 .equiv WREG4L, _WREG4 .equiv WREG4H, _WREG4+1 .extern WREG5 .equiv WREG5L, _WREG5 .equiv WREG5H, _WREG5+1 .extern WREG6 .equiv WREG6L, _WREG6 .equiv WREG6H, _WREG6+1 .extern WREG7 .equiv WREG7L, _WREG7 .equiv WREG7H, _WREG7+1 .extern WREG8 .equiv WREG8L, _WREG8 .equiv WREG8H, _WREG8+1 .extern WREG9 .equiv WREG9L, _WREG9 .equiv WREG9H, _WREG9+1 .extern WREG10 .equiv WREG10L, _WREG10 .equiv WREG10H, _WREG10+1 .extern WREG11 .equiv WREG11L, _WREG11 .equiv WREG11H, _WREG11+1 .extern WREG12 .equiv WREG12L, _WREG12 .equiv WREG12H, _WREG12+1 .extern WREG13 .equiv WREG13L, _WREG13 .equiv WREG13H, _WREG13+1 .extern WREG14 .equiv WREG14L, _WREG14 .equiv WREG14H, _WREG14+1 .extern WREG15 .equiv WREG15L, _WREG15 .equiv WREG15H, _WREG15+1 .extern SPLIM .equiv SPLIML, _SPLIM .equiv SPLIMH, _SPLIM+1 .extern ACCAL .equiv ACCALL, _ACCAL .equiv ACCALH, _ACCAL+1 .extern ACCAH .equiv ACCAHL, _ACCAH .equiv ACCAHH, _ACCAH+1 .extern ACCAU .equiv ACCAUL, _ACCAU .equiv ACCAUH, _ACCAU+1 .extern ACCBL .equiv ACCBLL, _ACCBL .equiv ACCBLH, _ACCBL+1 .extern ACCBH .equiv ACCBHL, _ACCBH .equiv ACCBHH, _ACCBH+1 .extern ACCBU .equiv ACCBUL, _ACCBU .equiv ACCBUH, _ACCBU+1 .extern PCL .equiv PCLL, _PCL .equiv PCLH, _PCL+1 .extern PCH .equiv PCHL, _PCH .equiv PCHH, _PCH+1 .extern TBLPAG .equiv TBLPAGL, _TBLPAG .equiv TBLPAGH, _TBLPAG+1 .extern PSVPAG .equiv PSVPAGL, _PSVPAG .equiv PSVPAGH, _PSVPAG+1 .extern RCOUNT .equiv RCOUNTL, _RCOUNT .equiv RCOUNTH, _RCOUNT+1 .extern DCOUNT .equiv DCOUNTL, _DCOUNT .equiv DCOUNTH, _DCOUNT+1 .extern DOSTARTL .equiv DOSTARTLL, _DOSTARTL .equiv DOSTARTLH, _DOSTARTL+1 .extern DOSTARTH .equiv DOSTARTHL, _DOSTARTH .equiv DOSTARTHH, _DOSTARTH+1 .extern DOENDL .equiv DOENDLL, _DOENDL .equiv DOENDLH, _DOENDL+1 .extern DOENDH .equiv DOENDHL, _DOENDH .equiv DOENDHH, _DOENDH+1 .extern SR .equiv SRL, _SR .equiv SRH, _SR+1 .extern CORCON .equiv CORCONL, _CORCON .equiv CORCONH, _CORCON+1 .extern MODCON .equiv MODCONL, _MODCON .equiv MODCONH, _MODCON+1 .extern XMODSRT .equiv XMODSRTL, _XMODSRT .equiv XMODSRTH, _XMODSRT+1 .extern XMODEND .equiv XMODENDL, _XMODEND .equiv XMODENDH, _XMODEND+1 .extern YMODSRT .equiv YMODSRTL, _YMODSRT .equiv YMODSRTH, _YMODSRT+1 .extern YMODEND .equiv YMODENDL, _YMODEND .equiv YMODENDH, _YMODEND+1 .extern XBREV .equiv XBREVL, _XBREV .equiv XBREVH, _XBREV+1 .extern DISICNT .equiv DISICNTL, _DISICNT .equiv DISICNTH, _DISICNT+1 .extern CNEN1 .equiv CNEN1L, _CNEN1 .equiv CNEN1H, _CNEN1+1 .extern CNEN2 .equiv CNEN2L, _CNEN2 .equiv CNEN2H, _CNEN2+1 .extern CNPU1 .equiv CNPU1L, _CNPU1 .equiv CNPU1H, _CNPU1+1 .extern CNPU2 .equiv CNPU2L, _CNPU2 .equiv CNPU2H, _CNPU2+1 .extern INTCON1 .equiv INTCON1L, _INTCON1 .equiv INTCON1H, _INTCON1+1 .extern INTCON2 .equiv INTCON2L, _INTCON2 .equiv INTCON2H, _INTCON2+1 .extern IFS0 .equiv IFS0L, _IFS0 .equiv IFS0H, _IFS0+1 .extern IFS1 .equiv IFS1L, _IFS1 .equiv IFS1H, _IFS1+1 .extern IFS2 .equiv IFS2L, _IFS2 .equiv IFS2H, _IFS2+1 .extern IFS3 .equiv IFS3L, _IFS3 .equiv IFS3H, _IFS3+1 .extern IFS4 .equiv IFS4L, _IFS4 .equiv IFS4H, _IFS4+1 .extern IEC0 .equiv IEC0L, _IEC0 .equiv IEC0H, _IEC0+1 .extern IEC1 .equiv IEC1L, _IEC1 .equiv IEC1H, _IEC1+1 .extern IEC2 .equiv IEC2L, _IEC2 .equiv IEC2H, _IEC2+1 .extern IEC3 .equiv IEC3L, _IEC3 .equiv IEC3H, _IEC3+1 .extern IEC4 .equiv IEC4L, _IEC4 .equiv IEC4H, _IEC4+1 .extern IPC0 .equiv IPC0L, _IPC0 .equiv IPC0H, _IPC0+1 .extern IPC1 .equiv IPC1L, _IPC1 .equiv IPC1H, _IPC1+1 .extern IPC2 .equiv IPC2L, _IPC2 .equiv IPC2H, _IPC2+1 .extern IPC3 .equiv IPC3L, _IPC3 .equiv IPC3H, _IPC3+1 .extern IPC4 .equiv IPC4L, _IPC4 .equiv IPC4H, _IPC4+1 .extern IPC5 .equiv IPC5L, _IPC5 .equiv IPC5H, _IPC5+1 .extern IPC7 .equiv IPC7L, _IPC7 .equiv IPC7H, _IPC7+1 .extern IPC9 .equiv IPC9L, _IPC9 .equiv IPC9H, _IPC9+1 .extern IPC15 .equiv IPC15L, _IPC15 .equiv IPC15H, _IPC15+1 .extern IPC16 .equiv IPC16L, _IPC16 .equiv IPC16H, _IPC16+1 .extern IPC19 .equiv IPC19L, _IPC19 .equiv IPC19H, _IPC19+1 .extern INTTREG .equiv INTTREGL, _INTTREG .equiv INTTREGH, _INTTREG+1 .extern TMR1 .equiv TMR1L, _TMR1 .equiv TMR1H, _TMR1+1 .extern PR1 .equiv PR1L, _PR1 .equiv PR1H, _PR1+1 .extern T1CON .equiv T1CONL, _T1CON .equiv T1CONH, _T1CON+1 .extern TMR2 .equiv TMR2L, _TMR2 .equiv TMR2H, _TMR2+1 .extern TMR3HLD .equiv TMR3HLDL, _TMR3HLD .equiv TMR3HLDH, _TMR3HLD+1 .extern TMR3 .equiv TMR3L, _TMR3 .equiv TMR3H, _TMR3+1 .extern PR2 .equiv PR2L, _PR2 .equiv PR2H, _PR2+1 .extern PR3 .equiv PR3L, _PR3 .equiv PR3H, _PR3+1 .extern T2CON .equiv T2CONL, _T2CON .equiv T2CONH, _T2CON+1 .extern T3CON .equiv T3CONL, _T3CON .equiv T3CONH, _T3CON+1 .extern IC1BUF .equiv IC1BUFL, _IC1BUF .equiv IC1BUFH, _IC1BUF+1 .extern IC1CON .equiv IC1CONL, _IC1CON .equiv IC1CONH, _IC1CON+1 .extern IC2BUF .equiv IC2BUFL, _IC2BUF .equiv IC2BUFH, _IC2BUF+1 .extern IC2CON .equiv IC2CONL, _IC2CON .equiv IC2CONH, _IC2CON+1 .extern IC3BUF .equiv IC3BUFL, _IC3BUF .equiv IC3BUFH, _IC3BUF+1 .extern IC3CON .equiv IC3CONL, _IC3CON .equiv IC3CONH, _IC3CON+1 .extern OC1RS .equiv OC1RSL, _OC1RS .equiv OC1RSH, _OC1RS+1 .extern OC1R .equiv OC1RL, _OC1R .equiv OC1RH, _OC1R+1 .extern OC1CON .equiv OC1CONL, _OC1CON .equiv OC1CONH, _OC1CON+1 .extern OC2RS .equiv OC2RSL, _OC2RS .equiv OC2RSH, _OC2RS+1 .extern OC2R .equiv OC2RL, _OC2R .equiv OC2RH, _OC2R+1 .extern OC2CON .equiv OC2CONL, _OC2CON .equiv OC2CONH, _OC2CON+1 .extern I2C1RCV .equiv I2C1RCVL, _I2C1RCV .equiv I2C1RCVH, _I2C1RCV+1 .extern I2C1TRN .equiv I2C1TRNL, _I2C1TRN .equiv I2C1TRNH, _I2C1TRN+1 .extern I2C1BRG .equiv I2C1BRGL, _I2C1BRG .equiv I2C1BRGH, _I2C1BRG+1 .extern I2C1CON .equiv I2C1CONL, _I2C1CON .equiv I2C1CONH, _I2C1CON+1 .extern I2C1STAT .equiv I2C1STATL, _I2C1STAT .equiv I2C1STATH, _I2C1STAT+1 .extern I2C1ADD .equiv I2C1ADDL, _I2C1ADD .equiv I2C1ADDH, _I2C1ADD+1 .extern I2C1MSK .equiv I2C1MSKL, _I2C1MSK .equiv I2C1MSKH, _I2C1MSK+1 .extern U1MODE .equiv U1MODEL, _U1MODE .equiv U1MODEH, _U1MODE+1 .extern U1STA .equiv U1STAL, _U1STA .equiv U1STAH, _U1STA+1 .extern U1TXREG .equiv U1TXREGL, _U1TXREG .equiv U1TXREGH, _U1TXREG+1 .extern U1RXREG .equiv U1RXREGL, _U1RXREG .equiv U1RXREGH, _U1RXREG+1 .extern U1BRG .equiv U1BRGL, _U1BRG .equiv U1BRGH, _U1BRG+1 .extern SPI1STAT .equiv SPI1STATL, _SPI1STAT .equiv SPI1STATH, _SPI1STAT+1 .extern SPI1CON1 .equiv SPI1CON1L, _SPI1CON1 .equiv SPI1CON1H, _SPI1CON1+1 .extern SPI1CON2 .equiv SPI1CON2L, _SPI1CON2 .equiv SPI1CON2H, _SPI1CON2+1 .extern SPI1BUF .equiv SPI1BUFL, _SPI1BUF .equiv SPI1BUFH, _SPI1BUF+1 .extern TRISA .equiv TRISAL, _TRISA .equiv TRISAH, _TRISA+1 .extern PORTA .equiv PORTAL, _PORTA .equiv PORTAH, _PORTA+1 .extern LATA .equiv LATAL, _LATA .equiv LATAH, _LATA+1 .extern ODCA .equiv ODCAL, _ODCA .equiv ODCAH, _ODCA+1 .extern TRISB .equiv TRISBL, _TRISB .equiv TRISBH, _TRISB+1 .extern PORTB .equiv PORTBL, _PORTB .equiv PORTBH, _PORTB+1 .extern LATB .equiv LATBL, _LATB .equiv LATBH, _LATB+1 .extern ODCB .equiv ODCBL, _ODCB .equiv ODCBH, _ODCB+1 .extern PADCFG1 .equiv PADCFG1L, _PADCFG1 .equiv PADCFG1H, _PADCFG1+1 .extern ADC1BUF0 .equiv ADC1BUF0L, _ADC1BUF0 .equiv ADC1BUF0H, _ADC1BUF0+1 .extern ADC1BUF1 .equiv ADC1BUF1L, _ADC1BUF1 .equiv ADC1BUF1H, _ADC1BUF1+1 .extern ADC1BUF2 .equiv ADC1BUF2L, _ADC1BUF2 .equiv ADC1BUF2H, _ADC1BUF2+1 .extern ADC1BUF3 .equiv ADC1BUF3L, _ADC1BUF3 .equiv ADC1BUF3H, _ADC1BUF3+1 .extern ADC1BUF4 .equiv ADC1BUF4L, _ADC1BUF4 .equiv ADC1BUF4H, _ADC1BUF4+1 .extern ADC1BUF5 .equiv ADC1BUF5L, _ADC1BUF5 .equiv ADC1BUF5H, _ADC1BUF5+1 .extern ADC1BUF6 .equiv ADC1BUF6L, _ADC1BUF6 .equiv ADC1BUF6H, _ADC1BUF6+1 .extern ADC1BUF7 .equiv ADC1BUF7L, _ADC1BUF7 .equiv ADC1BUF7H, _ADC1BUF7+1 .extern ADC1BUF8 .equiv ADC1BUF8L, _ADC1BUF8 .equiv ADC1BUF8H, _ADC1BUF8+1 .extern ADC1BUF9 .equiv ADC1BUF9L, _ADC1BUF9 .equiv ADC1BUF9H, _ADC1BUF9+1 .extern ADC1BUFA .equiv ADC1BUFAL, _ADC1BUFA .equiv ADC1BUFAH, _ADC1BUFA+1 .extern ADC1BUFB .equiv ADC1BUFBL, _ADC1BUFB .equiv ADC1BUFBH, _ADC1BUFB+1 .extern ADC1BUFC .equiv ADC1BUFCL, _ADC1BUFC .equiv ADC1BUFCH, _ADC1BUFC+1 .extern ADC1BUFD .equiv ADC1BUFDL, _ADC1BUFD .equiv ADC1BUFDH, _ADC1BUFD+1 .extern ADC1BUFE .equiv ADC1BUFEL, _ADC1BUFE .equiv ADC1BUFEH, _ADC1BUFE+1 .extern ADC1BUFF .equiv ADC1BUFFL, _ADC1BUFF .equiv ADC1BUFFH, _ADC1BUFF+1 .extern AD1CON1 .equiv AD1CON1L, _AD1CON1 .equiv AD1CON1H, _AD1CON1+1 .extern AD1CON2 .equiv AD1CON2L, _AD1CON2 .equiv AD1CON2H, _AD1CON2+1 .extern AD1CON3 .equiv AD1CON3L, _AD1CON3 .equiv AD1CON3H, _AD1CON3+1 .extern AD1CHS123 .equiv AD1CHS123L, _AD1CHS123 .equiv AD1CHS123H, _AD1CHS123+1 .extern AD1CHS0 .equiv AD1CHS0L, _AD1CHS0 .equiv AD1CHS0H, _AD1CHS0+1 .extern AD1PCFGL .equiv AD1PCFGLL, _AD1PCFGL .equiv AD1PCFGLH, _AD1PCFGL+1 .extern AD1CSSL .equiv AD1CSSLL, _AD1CSSL .equiv AD1CSSLH, _AD1CSSL+1 .extern CTMUCON1 .equiv CTMUCON1L, _CTMUCON1 .equiv CTMUCON1H, _CTMUCON1+1 .extern CTMUCON2 .equiv CTMUCON2L, _CTMUCON2 .equiv CTMUCON2H, _CTMUCON2+1 .extern CTMUICON .equiv CTMUICONL, _CTMUICON .equiv CTMUICONH, _CTMUICON+1 .extern ALRMVAL .equiv ALRMVALL, _ALRMVAL .equiv ALRMVALH, _ALRMVAL+1 .extern ALCFGRPT .equiv ALCFGRPTL, _ALCFGRPT .equiv ALCFGRPTH, _ALCFGRPT+1 .extern RTCVAL .equiv RTCVALL, _RTCVAL .equiv RTCVALH, _RTCVAL+1 .extern RCFGCAL .equiv RCFGCALL, _RCFGCAL .equiv RCFGCALH, _RCFGCAL+1 .extern CMSTAT .equiv CMSTATL, _CMSTAT .equiv CMSTATH, _CMSTAT+1 .extern CVRCON .equiv CVRCONL, _CVRCON .equiv CVRCONH, _CVRCON+1 .extern CM1CON .equiv CM1CONL, _CM1CON .equiv CM1CONH, _CM1CON+1 .extern CM1MSKSRC .equiv CM1MSKSRCL, _CM1MSKSRC .equiv CM1MSKSRCH, _CM1MSKSRC+1 .extern CM1MSKCON .equiv CM1MSKCONL, _CM1MSKCON .equiv CM1MSKCONH, _CM1MSKCON+1 .extern CM1FLTR .equiv CM1FLTRL, _CM1FLTR .equiv CM1FLTRH, _CM1FLTR+1 .extern CM2CON .equiv CM2CONL, _CM2CON .equiv CM2CONH, _CM2CON+1 .extern CM2MSKSRC .equiv CM2MSKSRCL, _CM2MSKSRC .equiv CM2MSKSRCH, _CM2MSKSRC+1 .extern CM2MSKCON .equiv CM2MSKCONL, _CM2MSKCON .equiv CM2MSKCONH, _CM2MSKCON+1 .extern CM2FLTR .equiv CM2FLTRL, _CM2FLTR .equiv CM2FLTRH, _CM2FLTR+1 .extern CM3CON .equiv CM3CONL, _CM3CON .equiv CM3CONH, _CM3CON+1 .extern CM3MSKSRC .equiv CM3MSKSRCL, _CM3MSKSRC .equiv CM3MSKSRCH, _CM3MSKSRC+1 .extern CM3MSKCON .equiv CM3MSKCONL, _CM3MSKCON .equiv CM3MSKCONH, _CM3MSKCON+1 .extern CM3FLTR .equiv CM3FLTRL, _CM3FLTR .equiv CM3FLTRH, _CM3FLTR+1 .extern RPINR0 .equiv RPINR0L, _RPINR0 .equiv RPINR0H, _RPINR0+1 .extern RPINR1 .equiv RPINR1L, _RPINR1 .equiv RPINR1H, _RPINR1+1 .extern RPINR3 .equiv RPINR3L, _RPINR3 .equiv RPINR3H, _RPINR3+1 .extern RPINR7 .equiv RPINR7L, _RPINR7 .equiv RPINR7H, _RPINR7+1 .extern RPINR8 .equiv RPINR8L, _RPINR8 .equiv RPINR8H, _RPINR8+1 .extern RPINR11 .equiv RPINR11L, _RPINR11 .equiv RPINR11H, _RPINR11+1 .extern RPINR18 .equiv RPINR18L, _RPINR18 .equiv RPINR18H, _RPINR18+1 .extern RPINR21 .equiv RPINR21L, _RPINR21 .equiv RPINR21H, _RPINR21+1 .extern RPOR0 .equiv RPOR0L, _RPOR0 .equiv RPOR0H, _RPOR0+1 .extern RPOR2 .equiv RPOR2L, _RPOR2 .equiv RPOR2H, _RPOR2+1 .extern RPOR3 .equiv RPOR3L, _RPOR3 .equiv RPOR3H, _RPOR3+1 .extern RPOR4 .equiv RPOR4L, _RPOR4 .equiv RPOR4H, _RPOR4+1 .extern RPOR7 .equiv RPOR7L, _RPOR7 .equiv RPOR7H, _RPOR7+1 .extern RCON .equiv RCONL, _RCON .equiv RCONH, _RCON+1 .extern OSCCON .extern OSCCONL .equiv OSCCONLL, _OSCCONL .equiv OSCCONLH, _OSCCONL+1 .extern OSCCONH .equiv OSCCONHL, _OSCCONH .equiv OSCCONHH, _OSCCONH+1 .extern CLKDIV .equiv CLKDIVL, _CLKDIV .equiv CLKDIVH, _CLKDIV+1 .extern OSCTUN .equiv OSCTUNL, _OSCTUN .equiv OSCTUNH, _OSCTUN+1 .extern NVMCON .equiv NVMCONL, _NVMCON .equiv NVMCONH, _NVMCON+1 .extern NVMKEY .equiv NVMKEYL, _NVMKEY .equiv NVMKEYH, _NVMKEY+1 .extern PMD1 .equiv PMD1L, _PMD1 .equiv PMD1H, _PMD1+1 .extern PMD2 .equiv PMD2L, _PMD2 .equiv PMD2H, _PMD2+1 .extern PMD3 .equiv PMD3L, _PMD3 .equiv PMD3H, _PMD3+1 .extern PMD4 .equiv PMD4L, _PMD4 .equiv PMD4H, _PMD4+1 ;----- SR Bits ----------------------------------------------------- .equiv C, 0x0000 .equiv Z, 0x0001 .equiv OV, 0x0002 .equiv N, 0x0003 .equiv RA, 0x0004 .equiv DC, 0x0008 .equiv DA, 0x0009 .equiv SAB, 0x000A .equiv OAB, 0x000B .equiv SB, 0x000C .equiv SA, 0x000D .equiv OB, 0x000E .equiv OA, 0x000F .equiv IPL0, 0x0005 .equiv IPL1, 0x0006 .equiv IPL2, 0x0007 ;----- CORCON Bits ----------------------------------------------------- .equiv IF, 0x0000 .equiv RND, 0x0001 .equiv PSV, 0x0002 .equiv IPL3, 0x0003 .equiv ACCSAT, 0x0004 .equiv SATDW, 0x0005 .equiv SATB, 0x0006 .equiv SATA, 0x0007 .equiv EDT, 0x000B .equiv US, 0x000C .equiv DL0, 0x0008 .equiv DL1, 0x0009 .equiv DL2, 0x000A ;----- MODCON Bits ----------------------------------------------------- .equiv YMODEN, 0x000E .equiv XMODEN, 0x000F .equiv XWM0, 0x0000 .equiv XWM1, 0x0001 .equiv XWM2, 0x0002 .equiv XWM3, 0x0003 .equiv YWM0, 0x0004 .equiv YWM1, 0x0005 .equiv YWM2, 0x0006 .equiv YWM3, 0x0007 .equiv BWM0, 0x0008 .equiv BWM1, 0x0009 .equiv BWM2, 0x000A .equiv BWM3, 0x000B ;----- XBREV Bits ----------------------------------------------------- .equiv BREN, 0x000F .equiv XB0, 0x0000 .equiv XB1, 0x0001 .equiv XB2, 0x0002 .equiv XB3, 0x0003 .equiv XB4, 0x0004 .equiv XB5, 0x0005 .equiv XB6, 0x0006 .equiv XB7, 0x0007 .equiv XB8, 0x0008 .equiv XB9, 0x0009 .equiv XB10, 0x000A .equiv XB11, 0x000B .equiv XB12, 0x000C .equiv XB13, 0x000D .equiv XB14, 0x000E ;----- CNEN1 Bits ----------------------------------------------------- .equiv CN0IE, 0x0000 .equiv CN1IE, 0x0001 .equiv CN2IE, 0x0002 .equiv CN3IE, 0x0003 .equiv CN4IE, 0x0004 .equiv CN5IE, 0x0005 .equiv CN11IE, 0x000B .equiv CN12IE, 0x000C ;----- CNEN2 Bits ----------------------------------------------------- .equiv CN21IE, 0x0005 .equiv CN22IE, 0x0006 .equiv CN23IE, 0x0007 .equiv CN29IE, 0x000D .equiv CN30IE, 0x000E ;----- CNPU1 Bits ----------------------------------------------------- .equiv CN0PUE, 0x0000 .equiv CN1PUE, 0x0001 .equiv CN2PUE, 0x0002 .equiv CN3PUE, 0x0003 .equiv CN4PUE, 0x0004 .equiv CN5PUE, 0x0005 .equiv CN11PUE, 0x000B .equiv CN12PUE, 0x000C ;----- CNPU2 Bits ----------------------------------------------------- .equiv CN21PUE, 0x0005 .equiv CN22PUE, 0x0006 .equiv CN23PUE, 0x0007 .equiv CN29PUE, 0x000D .equiv CN30PUE, 0x000E ;----- INTCON1 Bits ----------------------------------------------------- .equiv OSCFAIL, 0x0001 .equiv STKERR, 0x0002 .equiv ADDRERR, 0x0003 .equiv MATHERR, 0x0004 .equiv DIV0ERR, 0x0006 .equiv SFTACERR, 0x0007 .equiv COVTE, 0x0008 .equiv OVBTE, 0x0009 .equiv OVATE, 0x000A .equiv COVBERR, 0x000B .equiv COVAERR, 0x000C .equiv OVBERR, 0x000D .equiv OVAERR, 0x000E .equiv NSTDIS, 0x000F ;----- INTCON2 Bits ----------------------------------------------------- .equiv INT0EP, 0x0000 .equiv INT1EP, 0x0001 .equiv INT2EP, 0x0002 .equiv DISI, 0x000E .equiv ALTIVT, 0x000F ;----- IFS0 Bits ----------------------------------------------------- .equiv INT0IF, 0x0000 .equiv IC1IF, 0x0001 .equiv OC1IF, 0x0002 .equiv T1IF, 0x0003 .equiv IC2IF, 0x0005 .equiv OC2IF, 0x0006 .equiv T2IF, 0x0007 .equiv T3IF, 0x0008 .equiv SPI1EIF, 0x0009 .equiv SPI1IF, 0x000A .equiv U1RXIF, 0x000B .equiv U1TXIF, 0x000C .equiv AD1IF, 0x000D ;----- IFS1 Bits ----------------------------------------------------- .equiv SI2C1IF, 0x0000 .equiv MI2C1IF, 0x0001 .equiv CMIF, 0x0002 .equiv CNIF, 0x0003 .equiv INT1IF, 0x0004 .equiv INT2IF, 0x000D ;----- IFS2 Bits ----------------------------------------------------- .equiv IC3IF, 0x0005 ;----- IFS3 Bits ----------------------------------------------------- .equiv RTCIF, 0x000E ;----- IFS4 Bits ----------------------------------------------------- .equiv U1EIF, 0x0001 .equiv CTMUIF, 0x000D ;----- IEC0 Bits ----------------------------------------------------- .equiv INT0IE, 0x0000 .equiv IC1IE, 0x0001 .equiv OC1IE, 0x0002 .equiv T1IE, 0x0003 .equiv IC2IE, 0x0005 .equiv OC2IE, 0x0006 .equiv T2IE, 0x0007 .equiv T3IE, 0x0008 .equiv SPI1EIE, 0x0009 .equiv SPI1IE, 0x000A .equiv U1RXIE, 0x000B .equiv U1TXIE, 0x000C .equiv AD1IE, 0x000D ;----- IEC1 Bits ----------------------------------------------------- .equiv SI2C1IE, 0x0000 .equiv MI2C1IE, 0x0001 .equiv CMIE, 0x0002 .equiv CNIE, 0x0003 .equiv INT1IE, 0x0004 .equiv INT2IE, 0x000D .equiv SI2CIE, 0x0000 ;----- IEC2 Bits ----------------------------------------------------- .equiv IC3IE, 0x0005 ;----- IEC3 Bits ----------------------------------------------------- .equiv RTCIE, 0x000E ;----- IEC4 Bits ----------------------------------------------------- .equiv U1EIE, 0x0001 .equiv CTMUIE, 0x000D ;----- IPC0 Bits ----------------------------------------------------- .equiv INT0IP0, 0x0000 .equiv INT0IP1, 0x0001 .equiv INT0IP2, 0x0002 .equiv IC1IP0, 0x0004 .equiv IC1IP1, 0x0005 .equiv IC1IP2, 0x0006 .equiv OC1IP0, 0x0008 .equiv OC1IP1, 0x0009 .equiv OC1IP2, 0x000A .equiv T1IP0, 0x000C .equiv T1IP1, 0x000D .equiv T1IP2, 0x000E ;----- IPC1 Bits ----------------------------------------------------- .equiv IC2IP0, 0x0004 .equiv IC2IP1, 0x0005 .equiv IC2IP2, 0x0006 .equiv OC2IP0, 0x0008 .equiv OC2IP1, 0x0009 .equiv OC2IP2, 0x000A .equiv T2IP0, 0x000C .equiv T2IP1, 0x000D .equiv T2IP2, 0x000E ;----- IPC2 Bits ----------------------------------------------------- .equiv T3IP0, 0x0000 .equiv T3IP1, 0x0001 .equiv T3IP2, 0x0002 .equiv SPI1EIP0, 0x0004 .equiv SPI1EIP1, 0x0005 .equiv SPI1EIP2, 0x0006 .equiv SPI1IP0, 0x0008 .equiv SPI1IP1, 0x0009 .equiv SPI1IP2, 0x000A .equiv U1RXIP0, 0x000C .equiv U1RXIP1, 0x000D .equiv U1RXIP2, 0x000E ;----- IPC3 Bits ----------------------------------------------------- .equiv U1TXIP0, 0x0000 .equiv U1TXIP1, 0x0001 .equiv U1TXIP2, 0x0002 .equiv AD1IP0, 0x0004 .equiv AD1IP1, 0x0005 .equiv AD1IP2, 0x0006 ;----- IPC4 Bits ----------------------------------------------------- .equiv SI2C1IP0, 0x0000 .equiv SI2C1IP1, 0x0001 .equiv SI2C1IP2, 0x0002 .equiv MI2C1IP0, 0x0004 .equiv MI2C1IP1, 0x0005 .equiv MI2C1IP2, 0x0006 .equiv CMIP0, 0x0008 .equiv CMIP1, 0x0009 .equiv CMIP2, 0x000A .equiv CNIP0, 0x000C .equiv CNIP1, 0x000D .equiv CNIP2, 0x000E ;----- IPC5 Bits ----------------------------------------------------- .equiv INT1IP0, 0x0000 .equiv INT1IP1, 0x0001 .equiv INT1IP2, 0x0002 ;----- IPC7 Bits ----------------------------------------------------- .equiv INT2IP0, 0x0004 .equiv INT2IP1, 0x0005 .equiv INT2IP2, 0x0006 ;----- IPC9 Bits ----------------------------------------------------- .equiv IC3IP0, 0x0004 .equiv IC3IP1, 0x0005 .equiv IC3IP2, 0x0006 ;----- IPC15 Bits ----------------------------------------------------- .equiv RTCIP0, 0x0008 .equiv RTCIP1, 0x0009 .equiv RTCIP2, 0x000A ;----- IPC16 Bits ----------------------------------------------------- .equiv U1EIP0, 0x0004 .equiv U1EIP1, 0x0005 .equiv U1EIP2, 0x0006 ;----- IPC19 Bits ----------------------------------------------------- .equiv CTMUIP0, 0x0004 .equiv CTMUIP1, 0x0005 .equiv CTMUIP2, 0x0006 ;----- INTTREG Bits ----------------------------------------------------- .equiv VECNUM0, 0x0000 .equiv VECNUM1, 0x0001 .equiv VECNUM2, 0x0002 .equiv VECNUM3, 0x0003 .equiv VECNUM4, 0x0004 .equiv VECNUM5, 0x0005 .equiv VECNUM6, 0x0006 .equiv ILR0, 0x0008 .equiv ILR1, 0x0009 .equiv ILR2, 0x000A .equiv ILR3, 0x000B ;----- T1CON Bits ----------------------------------------------------- .equiv TCS, 0x0001 .equiv TSYNC, 0x0002 .equiv TGATE, 0x0006 .equiv TSIDL, 0x000D .equiv TON, 0x000F .equiv TCKPS0, 0x0004 .equiv TCKPS1, 0x0005 ;----- T2CON Bits ----------------------------------------------------- ;.equiv TCS, 0x0001 .equiv T32, 0x0003 ;.equiv TGATE, 0x0006 ;.equiv TSIDL, 0x000D ;.equiv TON, 0x000F ;.equiv TCKPS0, 0x0004 ;.equiv TCKPS1, 0x0005 ;----- T3CON Bits ----------------------------------------------------- ;.equiv TCS, 0x0001 ;.equiv TGATE, 0x0006 ;.equiv TSIDL, 0x000D ;.equiv TON, 0x000F ;.equiv TCKPS0, 0x0004 ;.equiv TCKPS1, 0x0005 ;----- IC1CON Bits ----------------------------------------------------- .equiv ICBNE, 0x0003 .equiv ICOV, 0x0004 .equiv ICTMR, 0x0007 .equiv ICSIDL, 0x000D .equiv ICM0, 0x0000 .equiv ICM1, 0x0001 .equiv ICM2, 0x0002 .equiv ICI0, 0x0005 .equiv ICI1, 0x0006 ;----- IC2CON Bits ----------------------------------------------------- ;.equiv ICBNE, 0x0003 ;.equiv ICOV, 0x0004 ;.equiv ICTMR, 0x0007 ;.equiv ICSIDL, 0x000D ;.equiv ICM0, 0x0000 ;.equiv ICM1, 0x0001 ;.equiv ICM2, 0x0002 ;.equiv ICI0, 0x0005 ;.equiv ICI1, 0x0006 ;----- IC3CON Bits ----------------------------------------------------- ;.equiv ICBNE, 0x0003 ;.equiv ICOV, 0x0004 ;.equiv ICTMR, 0x0007 ;.equiv ICSIDL, 0x000D ;.equiv ICM0, 0x0000 ;.equiv ICM1, 0x0001 ;.equiv ICM2, 0x0002 ;.equiv ICI0, 0x0005 ;.equiv ICI1, 0x0006 ;----- OC1CON Bits ----------------------------------------------------- .equiv OCTSEL, 0x0003 .equiv OCFLT, 0x0004 .equiv OCSIDL, 0x000D .equiv OCM0, 0x0000 .equiv OCM1, 0x0001 .equiv OCM2, 0x0002 ;----- OC2CON Bits ----------------------------------------------------- ;.equiv OCTSEL, 0x0003 ;.equiv OCFLT, 0x0004 ;.equiv OCSIDL, 0x000D ;.equiv OCM0, 0x0000 ;.equiv OCM1, 0x0001 ;.equiv OCM2, 0x0002 ;----- I2C1CON Bits ----------------------------------------------------- .equiv SEN, 0x0000 .equiv RSEN, 0x0001 .equiv PEN, 0x0002 .equiv RCEN, 0x0003 .equiv ACKEN, 0x0004 .equiv ACKDT, 0x0005 .equiv STREN, 0x0006 .equiv GCEN, 0x0007 .equiv SMEN, 0x0008 .equiv DISSLW, 0x0009 .equiv A10M, 0x000A .equiv IPMIEN, 0x000B .equiv SCLREL, 0x000C .equiv I2CSIDL, 0x000D .equiv I2CEN, 0x000F ;----- I2C1STAT Bits ----------------------------------------------------- .equiv TBF, 0x0000 .equiv RBF, 0x0001 .equiv R_W, 0x0002 .equiv S, 0x0003 .equiv P, 0x0004 .equiv D_A, 0x0005 .equiv I2COV, 0x0006 .equiv IWCOL, 0x0007 .equiv ADD10, 0x0008 .equiv GCSTAT, 0x0009 .equiv BCL, 0x000A .equiv TRSTAT, 0x000E .equiv ACKSTAT, 0x000F ;----- U1MODE Bits ----------------------------------------------------- .equiv STSEL, 0x0000 .equiv BRGH, 0x0003 .equiv URXINV, 0x0004 .equiv ABAUD, 0x0005 .equiv LPBACK, 0x0006 .equiv WAKE, 0x0007 .equiv RTSMD, 0x000B .equiv IREN, 0x000C .equiv USIDL, 0x000D .equiv UARTEN, 0x000F .equiv PDSEL0, 0x0001 .equiv PDSEL1, 0x0002 .equiv RXINV, 0x0004 .equiv UEN0, 0x0008 .equiv UEN1, 0x0009 ;----- U1STA Bits ----------------------------------------------------- .equiv URXDA, 0x0000 .equiv OERR, 0x0001 .equiv FERR, 0x0002 .equiv PERR, 0x0003 .equiv RIDLE, 0x0004 .equiv ADDEN, 0x0005 .equiv TRMT, 0x0008 .equiv UTXBF, 0x0009 .equiv UTXEN, 0x000A .equiv UTXBRK, 0x000B .equiv UTXISEL0, 0x000D .equiv UTXINV, 0x000E .equiv UTXISEL1, 0x000F .equiv URXISEL0, 0x0006 .equiv URXISEL1, 0x0007 ;----- SPI1STAT Bits ----------------------------------------------------- .equiv SPIRBF, 0x0000 .equiv SPITBF, 0x0001 .equiv SPIROV, 0x0006 .equiv SPISIDL, 0x000D .equiv SPIEN, 0x000F ;----- SPI1CON1 Bits ----------------------------------------------------- .equiv MSTEN, 0x0005 .equiv CKP, 0x0006 .equiv SSEN, 0x0007 .equiv CKE, 0x0008 .equiv SMP, 0x0009 .equiv MODE16, 0x000A .equiv DISSDO, 0x000B .equiv DISSCK, 0x000C .equiv PPRE0, 0x0000 .equiv PPRE1, 0x0001 .equiv SPRE0, 0x0002 .equiv SPRE1, 0x0003 .equiv SPRE2, 0x0004 ;----- SPI1CON2 Bits ----------------------------------------------------- .equiv FRMDLY, 0x0001 .equiv FRMPOL, 0x000D .equiv SPIFSD, 0x000E .equiv FRMEN, 0x000F ;----- TRISA Bits ----------------------------------------------------- .equiv TRISA0, 0x0000 .equiv TRISA1, 0x0001 .equiv TRISA2, 0x0002 .equiv TRISA3, 0x0003 .equiv TRISA4, 0x0004 ;----- PORTA Bits ----------------------------------------------------- .equiv RA0, 0x0000 .equiv RA1, 0x0001 .equiv RA2, 0x0002 .equiv RA3, 0x0003 .equiv RA4, 0x0004 ;----- LATA Bits ----------------------------------------------------- .equiv LATA0, 0x0000 .equiv LATA1, 0x0001 .equiv LATA2, 0x0002 .equiv LATA3, 0x0003 .equiv LATA4, 0x0004 ;----- ODCA Bits ----------------------------------------------------- .equiv ODCA0, 0x0000 .equiv ODCA1, 0x0001 .equiv ODCA2, 0x0002 .equiv ODCA3, 0x0003 .equiv ODCA4, 0x0004 ;----- TRISB Bits ----------------------------------------------------- .equiv TRISB0, 0x0000 .equiv TRISB1, 0x0001 .equiv TRISB4, 0x0004 .equiv TRISB7, 0x0007 .equiv TRISB8, 0x0008 .equiv TRISB9, 0x0009 .equiv TRISB14, 0x000E .equiv TRISB15, 0x000F ;----- PORTB Bits ----------------------------------------------------- .equiv RB0, 0x0000 .equiv RB1, 0x0001 .equiv RB4, 0x0004 .equiv RB7, 0x0007 .equiv RB8, 0x0008 .equiv RB9, 0x0009 .equiv RB14, 0x000E .equiv RB15, 0x000F ;----- LATB Bits ----------------------------------------------------- .equiv LATB0, 0x0000 .equiv LATB1, 0x0001 .equiv LATB4, 0x0004 .equiv LATB7, 0x0007 .equiv LATB8, 0x0008 .equiv LATB9, 0x0009 .equiv LATB14, 0x000E .equiv LATB15, 0x000F ;----- ODCB Bits ----------------------------------------------------- .equiv ODCB0, 0x0000 .equiv ODCB1, 0x0001 .equiv ODCB4, 0x0004 .equiv ODCB7, 0x0007 .equiv ODCB8, 0x0008 .equiv ODCB9, 0x0009 .equiv ODCB14, 0x000E .equiv ODCB15, 0x000F ;----- PADCFG1 Bits ----------------------------------------------------- .equiv RTSECSEL, 0x0001 ;----- AD1CON1 Bits ----------------------------------------------------- .equiv DONE, 0x0000 .equiv SAMP, 0x0001 .equiv ASAM, 0x0002 .equiv SIMSAM, 0x0003 .equiv ADSIDL, 0x000D .equiv ADON, 0x000F .equiv SSRC0, 0x0005 .equiv SSRC1, 0x0006 .equiv SSRC2, 0x0007 .equiv FORM0, 0x0008 .equiv FORM1, 0x0009 ;----- AD1CON2 Bits ----------------------------------------------------- .equiv ALTS, 0x0000 .equiv BUFM, 0x0001 .equiv BUFS, 0x0007 .equiv CSCNA, 0x000A .equiv SMPI0, 0x0002 .equiv SMPI1, 0x0003 .equiv SMPI2, 0x0004 .equiv SMPI3, 0x0005 .equiv SMPI4, 0x0006 .equiv CHPS0, 0x0008 .equiv CHPS1, 0x0009 .equiv VCFG0, 0x000D .equiv VCFG1, 0x000E .equiv VCFG2, 0x000F ;----- AD1CON3 Bits ----------------------------------------------------- .equiv ADRC, 0x000F .equiv ADCS0, 0x0000 .equiv ADCS1, 0x0001 .equiv ADCS2, 0x0002 .equiv ADCS3, 0x0003 .equiv ADCS4, 0x0004 .equiv ADCS5, 0x0005 .equiv ADCS6, 0x0006 .equiv ADCS7, 0x0007 .equiv SAMC0, 0x0008 .equiv SAMC1, 0x0009 .equiv SAMC2, 0x000A .equiv SAMC3, 0x000B .equiv SAMC4, 0x000C ;----- AD1CHS123 Bits ----------------------------------------------------- .equiv CH123SA, 0x0000 .equiv CH123SB, 0x0008 .equiv CH123NA0, 0x0001 .equiv CH123NA1, 0x0002 .equiv CH123NB0, 0x0009 .equiv CH123NB1, 0x000A ;----- AD1CHS0 Bits ----------------------------------------------------- .equiv CH0NA, 0x0007 .equiv CH0NB, 0x000F .equiv CH0SA0, 0x0000 .equiv CH0SA1, 0x0001 .equiv CH0SA2, 0x0002 .equiv CH0SA3, 0x0003 .equiv CH0SA4, 0x0004 .equiv CH0SB0, 0x0008 .equiv CH0SB1, 0x0009 .equiv CH0SB2, 0x000A .equiv CH0SB3, 0x000B .equiv CH0SB4, 0x000C ;----- AD1PCFGL Bits ----------------------------------------------------- .equiv PCFG0, 0x0000 .equiv PCFG1, 0x0001 .equiv PCFG2, 0x0002 .equiv PCFG3, 0x0003 ;----- AD1CSSL Bits ----------------------------------------------------- .equiv CSS0, 0x0000 .equiv CSS1, 0x0001 .equiv CSS2, 0x0002 .equiv CSS3, 0x0003 ;----- CTMUCON1 Bits ----------------------------------------------------- .equiv CTTRIG, 0x0008 .equiv IDISSEN, 0x0009 .equiv EDGSEQEN, 0x000A .equiv EDGEN, 0x000B .equiv TGEN, 0x000C .equiv CTMUSIDL, 0x000D .equiv CTMUEN, 0x000F ;----- CTMUCON2 Bits ----------------------------------------------------- .equiv EDG2POL, 0x0006 .equiv EDG2MOD, 0x0007 .equiv EDG1STAT, 0x0008 .equiv EDG2STAT, 0x0009 .equiv EDG1POL, 0x000E .equiv EDG1MOD, 0x000F .equiv EDG2SEL0, 0x0002 .equiv EDG2SEL1, 0x0003 .equiv EDG2SEL2, 0x0004 .equiv EDG2SEL3, 0x0005 .equiv EDG1SEL0, 0x000A .equiv EDG1SEL1, 0x000B .equiv EDG1SEL2, 0x000C .equiv EDG1SEL3, 0x000D ;----- CTMUICON Bits ----------------------------------------------------- .equiv IRNG0, 0x0008 .equiv IRNG1, 0x0009 .equiv ITRIM0, 0x000A .equiv ITRIM1, 0x000B .equiv ITRIM2, 0x000C .equiv ITRIM3, 0x000D .equiv ITRIM4, 0x000E .equiv ITRIM5, 0x000F ;----- ALCFGRPT Bits ----------------------------------------------------- .equiv CHIME, 0x000E .equiv ALRMEN, 0x000F .equiv ARPT0, 0x0000 .equiv ARPT1, 0x0001 .equiv ARPT2, 0x0002 .equiv ARPT3, 0x0003 .equiv ARPT4, 0x0004 .equiv ARPT5, 0x0005 .equiv ARPT6, 0x0006 .equiv ARPT7, 0x0007 .equiv ALRMPTR0, 0x0008 .equiv ALRMPTR1, 0x0009 .equiv AMASK0, 0x000A .equiv AMASK1, 0x000B .equiv AMASK2, 0x000C .equiv AMASK3, 0x000D ;----- RCFGCAL Bits ----------------------------------------------------- .equiv RTCOE, 0x000A .equiv HALFSEC, 0x000B .equiv RTCSYNC, 0x000C .equiv RTCWREN, 0x000D .equiv RTCEN, 0x000F .equiv CAL0, 0x0000 .equiv CAL1, 0x0001 .equiv CAL2, 0x0002 .equiv CAL3, 0x0003 .equiv CAL4, 0x0004 .equiv CAL5, 0x0005 .equiv CAL6, 0x0006 .equiv CAL7, 0x0007 .equiv RTCPTR0, 0x0008 .equiv RTCPTR1, 0x0009 ;----- CMSTAT Bits ----------------------------------------------------- .equiv C1OUT, 0x0000 .equiv C2OUT, 0x0001 .equiv C3OUT, 0x0002 .equiv C1EVT, 0x0008 .equiv C2EVT, 0x0009 .equiv C3EVT, 0x000A .equiv CMSIDL, 0x000F ;----- CVRCON Bits ----------------------------------------------------- .equiv CVRR, 0x0005 .equiv CVROE, 0x0006 .equiv CVREN, 0x0007 .equiv VREFSEL, 0x000A .equiv CVR0, 0x0000 .equiv CVR1, 0x0001 .equiv CVR2, 0x0002 .equiv CVR3, 0x0003 .equiv BGSEL0, 0x0008 .equiv BGSEL1, 0x0009 ;----- CM1CON Bits ----------------------------------------------------- .equiv CREF, 0x0004 .equiv COUT, 0x0008 .equiv CEVT, 0x0009 .equiv CPOL, 0x000D .equiv COE, 0x000E .equiv CON, 0x000F .equiv CCH0, 0x0000 .equiv CCH1, 0x0001 .equiv EVPOL0, 0x0006 .equiv EVPOL1, 0x0007 .equiv CEN, 0x000F ;----- CM1MSKSRC Bits ----------------------------------------------------- .equiv SELSRCA0, 0x0000 .equiv SELSRCA1, 0x0001 .equiv SELSRCA2, 0x0002 .equiv SELSRCA3, 0x0003 .equiv SELSRCB0, 0x0004 .equiv SELSRCB1, 0x0005 .equiv SELSRCB2, 0x0006 .equiv SELSRCB3, 0x0007 .equiv SELSRCC0, 0x0008 .equiv SELSRCC1, 0x0009 .equiv SELSRCC2, 0x000A .equiv SELSRCC3, 0x000B ;----- CM1MSKCON Bits ----------------------------------------------------- .equiv AANEN, 0x0000 .equiv AAEN, 0x0001 .equiv ABNEN, 0x0002 .equiv ABEN, 0x0003 .equiv ACNEN, 0x0004 .equiv ACEN, 0x0005 .equiv PAGS, 0x0006 .equiv NAGS, 0x0007 .equiv OANEN, 0x0008 .equiv OAEN, 0x0009 .equiv OBNEN, 0x000A .equiv OBEN, 0x000B .equiv OCNEN, 0x000C .equiv OCEN, 0x000D .equiv HLMS, 0x000F ;----- CM1FLTR Bits ----------------------------------------------------- .equiv CFLTREN, 0x0003 .equiv CFDIV0, 0x0000 .equiv CFDIV1, 0x0001 .equiv CFDIV2, 0x0002 .equiv CFSEL0, 0x0004 .equiv CFSEL1, 0x0005 .equiv CFSEL2, 0x0006 ;----- CM2CON Bits ----------------------------------------------------- ;.equiv CREF, 0x0004 ;.equiv COUT, 0x0008 ;.equiv CEVT, 0x0009 ;.equiv CPOL, 0x000D ;.equiv COE, 0x000E ;.equiv CON, 0x000F ;.equiv CCH0, 0x0000 ;.equiv CCH1, 0x0001 ;.equiv EVPOL0, 0x0006 ;.equiv EVPOL1, 0x0007 ;.equiv CEN, 0x000F ;----- CM2MSKSRC Bits ----------------------------------------------------- ;.equiv SELSRCA0, 0x0000 ;.equiv SELSRCA1, 0x0001 ;.equiv SELSRCA2, 0x0002 ;.equiv SELSRCA3, 0x0003 ;.equiv SELSRCB0, 0x0004 ;.equiv SELSRCB1, 0x0005 ;.equiv SELSRCB2, 0x0006 ;.equiv SELSRCB3, 0x0007 ;.equiv SELSRCC0, 0x0008 ;.equiv SELSRCC1, 0x0009 ;.equiv SELSRCC2, 0x000A ;.equiv SELSRCC3, 0x000B ;----- CM2MSKCON Bits ----------------------------------------------------- ;.equiv AANEN, 0x0000 ;.equiv AAEN, 0x0001 ;.equiv ABNEN, 0x0002 ;.equiv ABEN, 0x0003 ;.equiv ACNEN, 0x0004 ;.equiv ACEN, 0x0005 ;.equiv PAGS, 0x0006 ;.equiv NAGS, 0x0007 ;.equiv OANEN, 0x0008 ;.equiv OAEN, 0x0009 ;.equiv OBNEN, 0x000A ;.equiv OBEN, 0x000B ;.equiv OCNEN, 0x000C ;.equiv OCEN, 0x000D ;.equiv HLMS, 0x000F ;----- CM2FLTR Bits ----------------------------------------------------- ;.equiv CFLTREN, 0x0003 ;.equiv CFDIV0, 0x0000 ;.equiv CFDIV1, 0x0001 ;.equiv CFDIV2, 0x0002 ;.equiv CFSEL0, 0x0004 ;.equiv CFSEL1, 0x0005 ;.equiv CFSEL2, 0x0006 ;----- CM3CON Bits ----------------------------------------------------- ;.equiv CREF, 0x0004 ;.equiv COUT, 0x0008 ;.equiv CEVT, 0x0009 ;.equiv CPOL, 0x000D ;.equiv COE, 0x000E ;.equiv CON, 0x000F ;.equiv CCH0, 0x0000 ;.equiv CCH1, 0x0001 ;.equiv EVPOL0, 0x0006 ;.equiv EVPOL1, 0x0007 ;.equiv CEN, 0x000F ;----- CM3MSKSRC Bits ----------------------------------------------------- ;.equiv SELSRCA0, 0x0000 ;.equiv SELSRCA1, 0x0001 ;.equiv SELSRCA2, 0x0002 ;.equiv SELSRCA3, 0x0003 ;.equiv SELSRCB0, 0x0004 ;.equiv SELSRCB1, 0x0005 ;.equiv SELSRCB2, 0x0006 ;.equiv SELSRCB3, 0x0007 ;.equiv SELSRCC0, 0x0008 ;.equiv SELSRCC1, 0x0009 ;.equiv SELSRCC2, 0x000A ;.equiv SELSRCC3, 0x000B ;----- CM3MSKCON Bits ----------------------------------------------------- ;.equiv AANEN, 0x0000 ;.equiv AAEN, 0x0001 ;.equiv ABNEN, 0x0002 ;.equiv ABEN, 0x0003 ;.equiv ACNEN, 0x0004 ;.equiv ACEN, 0x0005 ;.equiv PAGS, 0x0006 ;.equiv NAGS, 0x0007 ;.equiv OANEN, 0x0008 ;.equiv OAEN, 0x0009 ;.equiv OBNEN, 0x000A ;.equiv OBEN, 0x000B ;.equiv OCNEN, 0x000C ;.equiv OCEN, 0x000D ;.equiv HLMS, 0x000F ;----- CM3FLTR Bits ----------------------------------------------------- ;.equiv CFLTREN, 0x0003 ;.equiv CFDIV0, 0x0000 ;.equiv CFDIV1, 0x0001 ;.equiv CFDIV2, 0x0002 ;.equiv CFSEL0, 0x0004 ;.equiv CFSEL1, 0x0005 ;.equiv CFSEL2, 0x0006 ;----- RPINR0 Bits ----------------------------------------------------- .equiv INT1R0, 0x0008 .equiv INT1R1, 0x0009 .equiv INT1R2, 0x000A .equiv INT1R3, 0x000B .equiv INT1R4, 0x000C ;----- RPINR1 Bits ----------------------------------------------------- .equiv INT2R0, 0x0000 .equiv INT2R1, 0x0001 .equiv INT2R2, 0x0002 .equiv INT2R3, 0x0003 .equiv INT2R4, 0x0004 ;----- RPINR3 Bits ----------------------------------------------------- .equiv T2CKR0, 0x0000 .equiv T2CKR1, 0x0001 .equiv T2CKR2, 0x0002 .equiv T2CKR3, 0x0003 .equiv T2CKR4, 0x0004 .equiv T3CKR0, 0x0008 .equiv T3CKR1, 0x0009 .equiv T3CKR2, 0x000A .equiv T3CKR3, 0x000B .equiv T3CKR4, 0x000C ;----- RPINR7 Bits ----------------------------------------------------- .equiv IC1R0, 0x0000 .equiv IC1R1, 0x0001 .equiv IC1R2, 0x0002 .equiv IC1R3, 0x0003 .equiv IC1R4, 0x0004 .equiv IC2R0, 0x0008 .equiv IC2R1, 0x0009 .equiv IC2R2, 0x000A .equiv IC2R3, 0x000B .equiv IC2R4, 0x000C ;----- RPINR8 Bits ----------------------------------------------------- .equiv IC3R0, 0x0000 .equiv IC3R1, 0x0001 .equiv IC3R2, 0x0002 .equiv IC3R3, 0x0003 .equiv IC3R4, 0x0004 ;----- RPINR11 Bits ----------------------------------------------------- .equiv OCFAR0, 0x0000 .equiv OCFAR1, 0x0001 .equiv OCFAR2, 0x0002 .equiv OCFAR3, 0x0003 .equiv OCFAR4, 0x0004 ;----- RPINR18 Bits ----------------------------------------------------- .equiv U1RXR0, 0x0000 .equiv U1RXR1, 0x0001 .equiv U1RXR2, 0x0002 .equiv U1RXR3, 0x0003 .equiv U1RXR4, 0x0004 .equiv U1CTSR0, 0x0008 .equiv U1CTSR1, 0x0009 .equiv U1CTSR2, 0x000A .equiv U1CTSR3, 0x000B .equiv U1CTSR4, 0x000C ;----- RPINR21 Bits ----------------------------------------------------- .equiv SS1R0, 0x0000 .equiv SS1R1, 0x0001 .equiv SS1R2, 0x0002 .equiv SS1R3, 0x0003 .equiv SS1R4, 0x0004 ;----- RPOR0 Bits ----------------------------------------------------- .equiv RP0R0, 0x0000 .equiv RP0R1, 0x0001 .equiv RP0R2, 0x0002 .equiv RP0R3, 0x0003 .equiv RP0R4, 0x0004 .equiv RP1R0, 0x0008 .equiv RP1R1, 0x0009 .equiv RP1R2, 0x000A .equiv RP1R3, 0x000B .equiv RP1R4, 0x000C ;----- RPOR2 Bits ----------------------------------------------------- .equiv RP4R0, 0x0000 .equiv RP4R1, 0x0001 .equiv RP4R2, 0x0002 .equiv RP4R3, 0x0003 .equiv RP4R4, 0x0004 ;----- RPOR3 Bits ----------------------------------------------------- .equiv RP7R0, 0x0008 .equiv RP7R1, 0x0009 .equiv RP7R2, 0x000A .equiv RP7R3, 0x000B .equiv RP7R4, 0x000C ;----- RPOR4 Bits ----------------------------------------------------- .equiv RP8R0, 0x0000 .equiv RP8R1, 0x0001 .equiv RP8R2, 0x0002 .equiv RP8R3, 0x0003 .equiv RP8R4, 0x0004 .equiv RP9R0, 0x0008 .equiv RP9R1, 0x0009 .equiv RP9R2, 0x000A .equiv RP9R3, 0x000B .equiv RP9R4, 0x000C ;----- RPOR7 Bits ----------------------------------------------------- .equiv RP14R0, 0x0000 .equiv RP14R1, 0x0001 .equiv RP14R2, 0x0002 .equiv RP14R3, 0x0003 .equiv RP14R4, 0x0004 .equiv RP15R0, 0x0008 .equiv RP15R1, 0x0009 .equiv RP15R2, 0x000A .equiv RP15R3, 0x000B .equiv RP15R4, 0x000C ;----- RCON Bits ----------------------------------------------------- .equiv POR, 0x0000 .equiv BOR, 0x0001 .equiv IDLE, 0x0002 .equiv SLEEP, 0x0003 .equiv WDTO, 0x0004 .equiv SWDTEN, 0x0005 .equiv SWR, 0x0006 .equiv EXTR, 0x0007 .equiv VREGS, 0x0008 .equiv CM, 0x0009 .equiv IOPUWR, 0x000E .equiv TRAPR, 0x000F ;----- OSCCON Bits ----------------------------------------------------- .equiv OSWEN, 0x0000 .equiv LPOSCEN, 0x0001 .equiv CF, 0x0003 .equiv LOCK, 0x0005 .equiv IOLOCK, 0x0006 .equiv CLKLOCK, 0x0007 .equiv NOSC0, 0x0008 .equiv NOSC1, 0x0009 .equiv NOSC2, 0x000A .equiv COSC0, 0x000C .equiv COSC1, 0x000D .equiv COSC2, 0x000E ;----- CLKDIV Bits ----------------------------------------------------- .equiv DOZEN, 0x000B .equiv ROI, 0x000F .equiv FRCDIV0, 0x0008 .equiv FRCDIV1, 0x0009 .equiv FRCDIV2, 0x000A .equiv DOZE0, 0x000C .equiv DOZE1, 0x000D .equiv DOZE2, 0x000E ;----- OSCTUN Bits ----------------------------------------------------- .equiv TUN0, 0x0000 .equiv TUN1, 0x0001 .equiv TUN2, 0x0002 .equiv TUN3, 0x0003 .equiv TUN4, 0x0004 .equiv TUN5, 0x0005 ;----- NVMCON Bits ----------------------------------------------------- .equiv ERASE, 0x0006 .equiv WRERR, 0x000D .equiv WREN, 0x000E .equiv WR, 0x000F .equiv NVMOP0, 0x0000 .equiv NVMOP1, 0x0001 .equiv NVMOP2, 0x0002 .equiv NVMOP3, 0x0003 ;----- PMD1 Bits ----------------------------------------------------- .equiv AD1MD, 0x0000 .equiv SPI1MD, 0x0003 .equiv U1MD, 0x0005 .equiv I2C1MD, 0x0007 .equiv T1MD, 0x000B .equiv T2MD, 0x000C .equiv T3MD, 0x000D ;----- PMD2 Bits ----------------------------------------------------- .equiv OC1MD, 0x0000 .equiv OC2MD, 0x0001 .equiv IC1MD, 0x0008 .equiv IC2MD, 0x0009 .equiv IC3MD, 0x000A ;----- PMD3 Bits ----------------------------------------------------- .equiv RTCCMD, 0x0009 .equiv CMPMD, 0x000A ;----- PMD4 Bits ----------------------------------------------------- .equiv CTMUMD, 0x0002 ; Some useful macros for PWRSAV instructions .equiv SLEEP_MODE, 0x0 .equiv IDLE_MODE, 0x1 ;========================================================================== ; ; Configuration Words ; ; Configuration words exist in Program Space and their locations are ; defined in the device linker script. They can be set in source code ; or in the MPLAB IDE. Each configuration word should be specified ; only once (multiple settings may be combined.) ; ;========================================================================== ; ; Setting configuration words using macros: ; ; The following macro named 'config' can be used to set configuration words: ; .macro config REG, VALUE .pushsection \REG.sec, code .global \REG \REG: .pword \VALUE .popsection .endm ; ; For example, to set CONFIG_REG using the macro above, the following line ; can be pasted only at the beginning of the assembly source code, ; immediately below the '.include' directive. ; ; config __CONFIG_REG, SETTING_A & SETTING_B ; ; Note that the 'config' macro takes two arguments: the first is the name ; of a configuration word (in this case, __CONFIG_REG), the second argument ; is a boolean expression that may include multiple settings. ; The example above would enable SETTING_A and also SETTING_B. ; ; A description of all possible settings for each configuration word ; appears below. ; ;========================================================================== ; ; Setting configuration words without using macros: ; ; To set configuration words without using the 'config' macro, ; use the following format: ; ; .section __CONFIG_REG.sec, code ; .global __CONFIG_REG ;__CONFIG_REG: .pword SETTING_A & SETTING_B ; ; This source code is equivalent to the expanded macro from the previous ; example. ; ;========================================================================== ;----- CONFIG2 (0x2bfc) -------------------------------------------------- ; ; The following settings are available for CONFIG2: ; ; Primary Oscillator Select: ; POSCMOD_EC EC Oscillator mode selected ; POSCMOD_MS MS Oscillator mode selected ; POSCMOD_HS HS Oscillator mode selected ; POSCMOD_NONE Primary oscillator disabled ; ; Alternate I2C pins: ; ALTI2C_ON I2C mapped to ASDA1/ASCL1 ; ALTI2C_OFF I2C mapped to SDA1/SCL1 ; ; IOLOCK Protection: ; IOL1WAY_OFF Allow Multiple Re-configurations ; IOL1WAY_ON Allow Only One Re-configuration ; ; Primary Oscillator Output Function: ; OSCIOFNC_ON OSC2 pin has digital I/O function ; OSCIOFNC_OFF OSC2 pin has clock out function ; ; Clock Switching and Monitor: ; FCKSM_CSECME Clock switching is enabled, Fail-Safe Clock Monitor is enabled ; FCKSM_CSECMD Clock switching is enabled, Fail-Safe Clock Monitor is disabled ; FCKSM_CSDCMD Clock switching and Fail-Safe Clock Monitor are disabled ; ; Oscillator Mode: ; FNOSC_FRC Internal Fast RC (FRC) ; FNOSC_FRCPLL Internal Fast RC (FRC) w/ PLL ; FNOSC_PRI Primary Oscillator (MS, HS, EC) ; FNOSC_PRIPLL Primary Oscillator (MS, HS, EC) w/ PLL ; FNOSC_SOSC Secondary Oscillator (SOSC) ; FNOSC_LPRC Low Power RC Oscillator (LPRC) ; FNOSC_FRCDIVN Internal Fast RC (FRC) with divide by N ; ; Watchdog Window Select: ; WDTWIN_WDTWIN75 Watchdog Window is 75% of WDT period ; WDTWIN_WDTWIN50 Watchdog Window is 50% of WDT period ; WDTWIN_WDTWIN37 Watchdog Window is 37.5% of WDT period ; WDTWIN_WDTWIN25 Watchdog Window is 25% of WDT period ; ; Internal External Switch Over Mode: ; IESO_OFF Start-up device with user-selected oscillator source ; IESO_ON Start-up device with FRC, then automatically switch to user-selected oscillator source when ready ; .equiv POSCMOD_EC, 0xFFFC ; EC Oscillator mode selected .equiv POSCMOD_MS, 0xFFFD ; MS Oscillator mode selected .equiv POSCMOD_HS, 0xFFFE ; HS Oscillator mode selected .equiv POSCMOD_NONE, 0xFFFF ; Primary oscillator disabled .equiv ALTI2C_ON, 0xFFFB ; I2C mapped to ASDA1/ASCL1 .equiv ALTI2C_OFF, 0xFFFF ; I2C mapped to SDA1/SCL1 .equiv IOL1WAY_OFF, 0xFFEF ; Allow Multiple Re-configurations .equiv IOL1WAY_ON, 0xFFFF ; Allow Only One Re-configuration .equiv OSCIOFNC_ON, 0xFFDF ; OSC2 pin has digital I/O function .equiv OSCIOFNC_OFF, 0xFFFF ; OSC2 pin has clock out function .equiv FCKSM_CSECME, 0xFF3F ; Clock switching is enabled, Fail-Safe Clock Monitor is enabled .equiv FCKSM_CSECMD, 0xFF7F ; Clock switching is enabled, Fail-Safe Clock Monitor is disabled .equiv FCKSM_CSDCMD, 0xFFBF ; Clock switching and Fail-Safe Clock Monitor are disabled .equiv FNOSC_FRC, 0xF8FF ; Internal Fast RC (FRC) .equiv FNOSC_FRCPLL, 0xF9FF ; Internal Fast RC (FRC) w/ PLL .equiv FNOSC_PRI, 0xFAFF ; Primary Oscillator (MS, HS, EC) .equiv FNOSC_PRIPLL, 0xFBFF ; Primary Oscillator (MS, HS, EC) w/ PLL .equiv FNOSC_SOSC, 0xFCFF ; Secondary Oscillator (SOSC) .equiv FNOSC_LPRC, 0xFDFF ; Low Power RC Oscillator (LPRC) .equiv FNOSC_FRCDIVN, 0xFFFF ; Internal Fast RC (FRC) with divide by N .equiv WDTWIN_WDTWIN75, 0xE7FF ; Watchdog Window is 75% of WDT period .equiv WDTWIN_WDTWIN50, 0xEFFF ; Watchdog Window is 50% of WDT period .equiv WDTWIN_WDTWIN37, 0xF7FF ; Watchdog Window is 37.5% of WDT period .equiv WDTWIN_WDTWIN25, 0xFFFF ; Watchdog Window is 25% of WDT period .equiv IESO_OFF, 0x7FFF ; Start-up device with user-selected oscillator source .equiv IESO_ON, 0xFFFF ; Start-up device with FRC, then automatically switch to user-selected oscillator source when ready ;----- CONFIG1 (0x2bfe) -------------------------------------------------- ; ; The following settings are available for CONFIG1: ; ; Watchdog Timer Postscaler: ; WDTPOST_PS1 1:1 ; WDTPOST_PS2 1:2 ; WDTPOST_PS4 1:4 ; WDTPOST_PS8 1:8 ; WDTPOST_PS16 1:16 ; WDTPOST_PS32 1:32 ; WDTPOST_PS64 1:64 ; WDTPOST_PS128 1:128 ; WDTPOST_PS256 1:256 ; WDTPOST_PS512 1:512 ; WDTPOST_PS1024 1:1,024 ; WDTPOST_PS2048 1:2,048 ; WDTPOST_PS4096 1:4,096 ; WDTPOST_PS8192 1:8,192 ; WDTPOST_PS16384 1:16,384 ; WDTPOST_PS32768 1:32,768 ; ; WDT Prescaler: ; WDTPRE_PR32 Prescaler ratio of 1:32 ; WDTPRE_PR128 Prescaler ratio of 1:128 ; ; PLL Lock Enable: ; PLLKEN_OFF Clock switch will not wait for the PLL lock signal. ; PLLKEN_ON Clock switch to PLL source will wait until the PLL lock signal is valid. ; ; Watchdog Timer Window: ; WINDIS_ON Watchdog Timer in Window mode ; WINDIS_OFF Watchdog Timer in Non-Window mode ; ; Watchdog Timer Enable: ; FWDTEN_OFF Watchdog timer enabled/disabled by user software ; FWDTEN_ON Watchdog timer always enabled ; ; Comm Channel Select: ; ICS_PGD3 Communicate on PGEC3/PGED3 ; ICS_PGD2 Communicate on PGEC2/PGED2 ; ICS_PGD1 Communicate on PGEC1/PGED1 ; ; General Code Segment Write Protect: ; GWRP_ON Writes to program memory are disabled ; GWRP_OFF Writes to program memory are allowed ; ; General Segment Code Protection: ; GCP_ON Standard Security Code protection Enabled ; GCP_OFF General Segment Code protect is disabled ; .equiv WDTPOST_PS1, 0x3FF0 ; 1:1 .equiv WDTPOST_PS2, 0x3FF1 ; 1:2 .equiv WDTPOST_PS4, 0x3FF2 ; 1:4 .equiv WDTPOST_PS8, 0x3FF3 ; 1:8 .equiv WDTPOST_PS16, 0x3FF4 ; 1:16 .equiv WDTPOST_PS32, 0x3FF5 ; 1:32 .equiv WDTPOST_PS64, 0x3FF6 ; 1:64 .equiv WDTPOST_PS128, 0x3FF7 ; 1:128 .equiv WDTPOST_PS256, 0x3FF8 ; 1:256 .equiv WDTPOST_PS512, 0x3FF9 ; 1:512 .equiv WDTPOST_PS1024, 0x3FFA ; 1:1,024 .equiv WDTPOST_PS2048, 0x3FFB ; 1:2,048 .equiv WDTPOST_PS4096, 0x3FFC ; 1:4,096 .equiv WDTPOST_PS8192, 0x3FFD ; 1:8,192 .equiv WDTPOST_PS16384, 0x3FFE ; 1:16,384 .equiv WDTPOST_PS32768, 0x3FFF ; 1:32,768 .equiv WDTPRE_PR32, 0x3FEF ; Prescaler ratio of 1:32 .equiv WDTPRE_PR128, 0x3FFF ; Prescaler ratio of 1:128 .equiv PLLKEN_OFF, 0x3FDF ; Clock switch will not wait for the PLL lock signal. .equiv PLLKEN_ON, 0x3FFF ; Clock switch to PLL source will wait until the PLL lock signal is valid. .equiv WINDIS_ON, 0x3FBF ; Watchdog Timer in Window mode .equiv WINDIS_OFF, 0x3FFF ; Watchdog Timer in Non-Window mode .equiv FWDTEN_OFF, 0x3F7F ; Watchdog timer enabled/disabled by user software .equiv FWDTEN_ON, 0x3FFF ; Watchdog timer always enabled .equiv ICS_PGD3, 0x3DFF ; Communicate on PGEC3/PGED3 .equiv ICS_PGD2, 0x3EFF ; Communicate on PGEC2/PGED2 .equiv ICS_PGD1, 0x3FFF ; Communicate on PGEC1/PGED1 .equiv GWRP_ON, 0x2FFF ; Writes to program memory are disabled .equiv GWRP_OFF, 0x3FFF ; Writes to program memory are allowed .equiv GCP_ON, 0x1FFF ; Standard Security Code protection Enabled .equiv GCP_OFF, 0x3FFF ; General Segment Code protect is disabled .LIST