LIST ;========================================================================== ; MPASM PIC16F1526 processor include ; ; (c) Copyright 1999-2013 Microchip Technology, All rights reserved ;========================================================================== NOLIST ;========================================================================== ; This header file defines configurations, registers, and other useful ; bits of information for the PIC16F1526 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:\MPASM MYFILE.ASM /PIC16F1526 ; 2. LIST directive in the source file ; LIST P=PIC16F1526 ; 3. Processor Type entry in the MPASM full-screen interface ; 4. Setting the processor in the MPLAB Project Dialog ;========================================================================== ;========================================================================== ; ; Verify Processor ; ;========================================================================== IFNDEF __16F1526 MESSG "Processor-header file mismatch. Verify selected processor." ENDIF ;========================================================================== ; ; Register Definitions ; ;========================================================================== W EQU H'0000' F EQU H'0001' ;----- Register Files ----------------------------------------------------- ;-----Bank0------------------ INDF0 EQU H'0000' INDF1 EQU H'0001' PCL EQU H'0002' STATUS EQU H'0003' FSR0 EQU H'0004' FSR0L EQU H'0004' FSR0H EQU H'0005' FSR1 EQU H'0006' FSR1L EQU H'0006' FSR1H EQU H'0007' BSR EQU H'0008' WREG EQU H'0009' PCLATH EQU H'000A' INTCON EQU H'000B' PORTA EQU H'000C' PORTB EQU H'000D' PORTC EQU H'000E' PORTD EQU H'000F' PORTE EQU H'0010' PIR1 EQU H'0011' PIR2 EQU H'0012' PIR3 EQU H'0013' PIR4 EQU H'0014' TMR0 EQU H'0015' TMR1 EQU H'0016' TMR1L EQU H'0016' TMR1H EQU H'0017' T1CON EQU H'0018' T1GCON EQU H'0019' TMR2 EQU H'001A' PR2 EQU H'001B' T2CON EQU H'001C' ;-----Bank1------------------ TRISA EQU H'008C' TRISB EQU H'008D' TRISC EQU H'008E' TRISD EQU H'008F' TRISE EQU H'0090' PIE1 EQU H'0091' PIE2 EQU H'0092' PIE3 EQU H'0093' PIE4 EQU H'0094' OPTION_REG EQU H'0095' PCON EQU H'0096' WDTCON EQU H'0097' OSCCON EQU H'0099' OSCSTAT EQU H'009A' ADRES EQU H'009B' ADRESL EQU H'009B' ADRESH EQU H'009C' ADCON0 EQU H'009D' ADCON1 EQU H'009E' ;-----Bank2------------------ LATA EQU H'010C' LATB EQU H'010D' LATC EQU H'010E' LATD EQU H'010F' LATE EQU H'0110' BORCON EQU H'0116' FVRCON EQU H'0117' APFCON EQU H'011D' ;-----Bank3------------------ ANSELA EQU H'018C' ANSELB EQU H'018D' ANSELD EQU H'018F' ANSELE EQU H'0190' PMADR EQU H'0191' PMADRL EQU H'0191' PMADRH EQU H'0192' PMDAT EQU H'0193' PMDATL EQU H'0193' PMDATH EQU H'0194' PMCON1 EQU H'0195' PMCON2 EQU H'0196' VREGCON EQU H'0197' RC1REG EQU H'0199' RCREG EQU H'0199' RCREG1 EQU H'0199' TX1REG EQU H'019A' TXREG EQU H'019A' TXREG1 EQU H'019A' SP1BRGL EQU H'019B' SPBRG EQU H'019B' SPBRGL EQU H'019B' SPBRGL1 EQU H'019B' SP1BRGH EQU H'019C' SPBRGH EQU H'019C' SPBRGH1 EQU H'019C' RC1STA EQU H'019D' RCSTA EQU H'019D' RCSTA1 EQU H'019D' TX1STA EQU H'019E' TXSTA EQU H'019E' TXSTA1 EQU H'019E' BAUD1CON EQU H'019F' BAUDCON EQU H'019F' BAUDCON1 EQU H'019F' ;-----Bank4------------------ WPUB EQU H'020D' WPUD EQU H'020F' WPUE EQU H'0210' SSP1BUF EQU H'0211' SSPBUF EQU H'0211' SSP1ADD EQU H'0212' SSPADD EQU H'0212' SSP1MSK EQU H'0213' SSPMSK EQU H'0213' SSP1STAT EQU H'0214' SSPSTAT EQU H'0214' SSP1CON1 EQU H'0215' SSPCON EQU H'0215' SSPCON1 EQU H'0215' SSP1CON2 EQU H'0216' SSPCON2 EQU H'0216' SSP1CON3 EQU H'0217' SSPCON3 EQU H'0217' SSP2BUF EQU H'0219' SSP2ADD EQU H'021A' SSP2MSK EQU H'021B' SSP2STAT EQU H'021C' SSP2CON1 EQU H'021D' SSP2CON2 EQU H'021E' SSP2CON3 EQU H'021F' ;-----Bank5------------------ PORTF EQU H'028C' PORTG EQU H'028D' CCPR1 EQU H'0291' CCPR1L EQU H'0291' CCPR1H EQU H'0292' CCP1CON EQU H'0293' CCPR2 EQU H'0298' CCPR2L EQU H'0298' CCPR2H EQU H'0299' CCP2CON EQU H'029A' CCPTMRS0 EQU H'029D' CCPTMRS1 EQU H'029E' CCPTMRS2 EQU H'029F' ;-----Bank6------------------ TRISF EQU H'030C' TRISG EQU H'030D' CCPR3 EQU H'0311' CCPR3L EQU H'0311' CCPR3H EQU H'0312' CCP3CON EQU H'0313' CCPR4 EQU H'0318' CCPR4L EQU H'0318' CCPR4H EQU H'0319' CCP4CON EQU H'031A' CCPR5 EQU H'031C' CCPR5L EQU H'031C' CCPR5H EQU H'031D' CCP5CON EQU H'031E' ;-----Bank7------------------ LATF EQU H'038C' LATG EQU H'038D' IOCBP EQU H'0394' IOCBN EQU H'0395' IOCBF EQU H'0396' ;-----Bank8------------------ ANSELF EQU H'040C' ANSELG EQU H'040D' TMR3 EQU H'0411' TMR3L EQU H'0411' TMR3H EQU H'0412' T3CON EQU H'0413' T3GCON EQU H'0414' TMR4 EQU H'0415' PR4 EQU H'0416' T4CON EQU H'0417' TMR5 EQU H'0418' TMR5L EQU H'0418' TMR5H EQU H'0419' T5CON EQU H'041A' T5GCON EQU H'041B' TMR6 EQU H'041C' PR6 EQU H'041D' T6CON EQU H'041E' ;-----Bank9------------------ WPUG EQU H'048D' RC2REG EQU H'0491' RCREG2 EQU H'0491' TX2REG EQU H'0492' TXREG2 EQU H'0492' SP2BRG EQU H'0493' SP2BRGL EQU H'0493' SPBRGL2 EQU H'0493' SP2BRGH EQU H'0494' SPBRGH2 EQU H'0494' RC2STA EQU H'0495' RCSTA2 EQU H'0495' TX2STA EQU H'0496' TXSTA2 EQU H'0496' BAUD2CON EQU H'0497' BAUDCON2 EQU H'0497' ;-----Bank11------------------ TMR8 EQU H'0595' PR8 EQU H'0596' T8CON EQU H'0597' TMR10 EQU H'059C' PR10 EQU H'059D' T10CON EQU H'059E' ;-----Bank12------------------ CCPR6 EQU H'0611' CCPR6L EQU H'0611' CCPR6H EQU H'0612' CCP6CON EQU H'0613' CCPR7 EQU H'0614' CCPR7L EQU H'0614' CCPR7H EQU H'0615' CCP7CON EQU H'0616' CCPR8 EQU H'0617' CCPR8L EQU H'0617' CCPR8H EQU H'0618' CCP8CON EQU H'0619' CCPR9 EQU H'061A' CCPR9L EQU H'061A' CCPR9H EQU H'061B' CCP9CON EQU H'061C' CCPR10 EQU H'061D' CCPR10L EQU H'061D' CCPR10H EQU H'061E' CCP10CON EQU H'061F' ;-----Bank31------------------ STATUS_SHAD EQU H'0FE4' WREG_SHAD EQU H'0FE5' BSR_SHAD EQU H'0FE6' PCLATH_SHAD EQU H'0FE7' FSR0L_SHAD EQU H'0FE8' FSR0H_SHAD EQU H'0FE9' FSR1L_SHAD EQU H'0FEA' FSR1H_SHAD EQU H'0FEB' STKPTR EQU H'0FED' TOSL EQU H'0FEE' TOSH EQU H'0FEF' ;----- STATUS Bits ----------------------------------------------------- C EQU H'0000' DC EQU H'0001' Z EQU H'0002' NOT_PD EQU H'0003' NOT_TO EQU H'0004' ;----- BSR Bits ----------------------------------------------------- BSR0 EQU H'0000' BSR1 EQU H'0001' BSR2 EQU H'0002' BSR3 EQU H'0003' BSR4 EQU H'0004' ;----- INTCON Bits ----------------------------------------------------- IOCIF EQU H'0000' INTF EQU H'0001' TMR0IF EQU H'0002' IOCIE EQU H'0003' INTE EQU H'0004' TMR0IE EQU H'0005' PEIE EQU H'0006' GIE EQU H'0007' T0IF EQU H'0002' T0IE EQU H'0005' ;----- PORTA Bits ----------------------------------------------------- RA0 EQU H'0000' RA1 EQU H'0001' RA2 EQU H'0002' RA3 EQU H'0003' RA4 EQU H'0004' RA5 EQU H'0005' RA6 EQU H'0006' RA7 EQU H'0007' ;----- PORTB Bits ----------------------------------------------------- RB0 EQU H'0000' RB1 EQU H'0001' RB2 EQU H'0002' RB3 EQU H'0003' RB4 EQU H'0004' RB5 EQU H'0005' RB6 EQU H'0006' RB7 EQU H'0007' ;----- PORTC Bits ----------------------------------------------------- RC0 EQU H'0000' RC1 EQU H'0001' RC2 EQU H'0002' RC3 EQU H'0003' RC4 EQU H'0004' RC5 EQU H'0005' RC6 EQU H'0006' RC7 EQU H'0007' ;----- PORTD Bits ----------------------------------------------------- RD0 EQU H'0000' RD1 EQU H'0001' RD2 EQU H'0002' RD3 EQU H'0003' RD4 EQU H'0004' RD5 EQU H'0005' RD6 EQU H'0006' RD7 EQU H'0007' ;----- PORTE Bits ----------------------------------------------------- RE0 EQU H'0000' RE1 EQU H'0001' RE2 EQU H'0002' RE3 EQU H'0003' RE4 EQU H'0004' RE5 EQU H'0005' RE6 EQU H'0006' RE7 EQU H'0007' ;----- PIR1 Bits ----------------------------------------------------- TMR1IF EQU H'0000' TMR2IF EQU H'0001' CCP1IF EQU H'0002' SSP1IF EQU H'0003' TX1IF EQU H'0004' RC1IF EQU H'0005' ADIF EQU H'0006' TMR1GIF EQU H'0007' SSPIF EQU H'0003' TXIF EQU H'0004' RCIF EQU H'0005' ;----- PIR2 Bits ----------------------------------------------------- CCP2IF EQU H'0000' TMR8IF EQU H'0001' TMR10IF EQU H'0002' BCL1IF EQU H'0003' TMR3GIF EQU H'0005' TMR5GIF EQU H'0006' OSFIF EQU H'0007' BCLIF EQU H'0003' ;----- PIR3 Bits ----------------------------------------------------- TMR3IF EQU H'0000' TMR4IF EQU H'0001' TMR5IF EQU H'0002' TMR6IF EQU H'0003' CCP3IF EQU H'0004' CCP4IF EQU H'0005' CCP5IF EQU H'0006' CCP6IF EQU H'0007' ;----- PIR4 Bits ----------------------------------------------------- SSP2IF EQU H'0000' BCL2IF EQU H'0001' CCP7IF EQU H'0002' CCP8IF EQU H'0003' TX2IF EQU H'0004' RC2IF EQU H'0005' CCP9IF EQU H'0006' CCP10IF EQU H'0007' ;----- T1CON Bits ----------------------------------------------------- TMR1ON EQU H'0000' NOT_T1SYNC EQU H'0002' SOSCEN EQU H'0003' T1OSCEN EQU H'0003' T1CKPS0 EQU H'0004' T1CKPS1 EQU H'0005' TMR1CS0 EQU H'0006' TMR1CS1 EQU H'0007' ;----- T1GCON Bits ----------------------------------------------------- T1GVAL EQU H'0002' T1GGO_NOT_DONE EQU H'0003' T1GSPM EQU H'0004' T1GTM EQU H'0005' T1GPOL EQU H'0006' TMR1GE EQU H'0007' T1GSS0 EQU H'0000' T1GSS1 EQU H'0001' ;----- T2CON Bits ----------------------------------------------------- TMR2ON EQU H'0002' T2CKPS0 EQU H'0000' T2CKPS1 EQU H'0001' T2OUTPS0 EQU H'0003' T2OUTPS1 EQU H'0004' T2OUTPS2 EQU H'0005' T2OUTPS3 EQU H'0006' ;----- TRISA Bits ----------------------------------------------------- TRISA0 EQU H'0000' TRISA1 EQU H'0001' TRISA2 EQU H'0002' TRISA3 EQU H'0003' TRISA4 EQU H'0004' TRISA5 EQU H'0005' TRISA6 EQU H'0006' TRISA7 EQU H'0007' ;----- TRISB Bits ----------------------------------------------------- TRISB0 EQU H'0000' TRISB1 EQU H'0001' TRISB2 EQU H'0002' TRISB3 EQU H'0003' TRISB4 EQU H'0004' TRISB5 EQU H'0005' TRISB6 EQU H'0006' TRISB7 EQU H'0007' ;----- TRISC Bits ----------------------------------------------------- TRISC0 EQU H'0000' TRISC1 EQU H'0001' TRISC2 EQU H'0002' TRISC3 EQU H'0003' TRISC4 EQU H'0004' TRISC5 EQU H'0005' TRISC6 EQU H'0006' TRISC7 EQU H'0007' ;----- TRISD Bits ----------------------------------------------------- TRISD0 EQU H'0000' TRISD1 EQU H'0001' TRISD2 EQU H'0002' TRISD3 EQU H'0003' TRISD4 EQU H'0004' TRISD5 EQU H'0005' TRISD6 EQU H'0006' TRISD7 EQU H'0007' ;----- TRISE Bits ----------------------------------------------------- TRISE0 EQU H'0000' TRISE1 EQU H'0001' TRISE2 EQU H'0002' TRISE3 EQU H'0003' TRISE4 EQU H'0004' TRISE5 EQU H'0005' TRISE6 EQU H'0006' TRISE7 EQU H'0007' ;----- PIE1 Bits ----------------------------------------------------- TMR1IE EQU H'0000' TMR2IE EQU H'0001' CCP1IE EQU H'0002' SSP1IE EQU H'0003' TX1IE EQU H'0004' RC1IE EQU H'0005' ADIE EQU H'0006' TMR1GIE EQU H'0007' SSPIE EQU H'0003' TXIE EQU H'0004' RCIE EQU H'0005' ;----- PIE2 Bits ----------------------------------------------------- CCP2IE EQU H'0000' TMR8IE EQU H'0001' TMR10IE EQU H'0002' BCL1IE EQU H'0003' TMR3GIE EQU H'0005' TMR5GIE EQU H'0006' OSFIE EQU H'0007' BCLIE EQU H'0003' ;----- PIE3 Bits ----------------------------------------------------- TMR3IE EQU H'0000' TMR4IE EQU H'0001' TMR5IE EQU H'0002' TMR6IE EQU H'0003' CCP3IE EQU H'0004' CCP4IE EQU H'0005' CCP5IE EQU H'0006' CCP6IE EQU H'0007' ;----- PIE4 Bits ----------------------------------------------------- SSP2IE EQU H'0000' BCL2IE EQU H'0001' CCP7IE EQU H'0002' CCP8IE EQU H'0003' TX2IE EQU H'0004' RC2IE EQU H'0005' CCP9IE EQU H'0006' CCP10IE EQU H'0007' ;----- OPTION_REG Bits ----------------------------------------------------- PSA EQU H'0003' TMR0SE EQU H'0004' TMR0CS EQU H'0005' INTEDG EQU H'0006' NOT_WPUEN EQU H'0007' PS0 EQU H'0000' PS1 EQU H'0001' PS2 EQU H'0002' T0SE EQU H'0004' T0CS EQU H'0005' ;----- PCON Bits ----------------------------------------------------- NOT_BOR EQU H'0000' NOT_POR EQU H'0001' NOT_RI EQU H'0002' NOT_RMCLR EQU H'0003' NOT_RWDT EQU H'0004' STKUNF EQU H'0006' STKOVF EQU H'0007' ;----- WDTCON Bits ----------------------------------------------------- SWDTEN EQU H'0000' WDTPS0 EQU H'0001' WDTPS1 EQU H'0002' WDTPS2 EQU H'0003' WDTPS3 EQU H'0004' WDTPS4 EQU H'0005' ;----- OSCCON Bits ----------------------------------------------------- SCS0 EQU H'0000' SCS1 EQU H'0001' IRCF0 EQU H'0003' IRCF1 EQU H'0004' IRCF2 EQU H'0005' IRCF3 EQU H'0006' ;----- OSCSTAT Bits ----------------------------------------------------- HFIOFS EQU H'0000' LFIOFR EQU H'0001' HFIOFR EQU H'0004' OSTS EQU H'0005' SOSCR EQU H'0007' T1OSCR EQU H'0007' ;----- ADCON0 Bits ----------------------------------------------------- ADON EQU H'0000' GO_NOT_DONE EQU H'0001' ADGO EQU H'0001' CHS0 EQU H'0002' CHS1 EQU H'0003' CHS2 EQU H'0004' CHS3 EQU H'0005' CHS4 EQU H'0006' GO EQU H'0001' ;----- ADCON1 Bits ----------------------------------------------------- ADFM EQU H'0007' ADPREF0 EQU H'0000' ADPREF1 EQU H'0001' ADCS0 EQU H'0004' ADCS1 EQU H'0005' ADCS2 EQU H'0006' ;----- LATA Bits ----------------------------------------------------- LATA0 EQU H'0000' LATA1 EQU H'0001' LATA2 EQU H'0002' LATA3 EQU H'0003' LATA4 EQU H'0004' LATA5 EQU H'0005' LATA6 EQU H'0006' LATA7 EQU H'0007' ;----- LATB Bits ----------------------------------------------------- LATB0 EQU H'0000' LATB1 EQU H'0001' LATB2 EQU H'0002' LATB3 EQU H'0003' LATB4 EQU H'0004' LATB5 EQU H'0005' LATB6 EQU H'0006' LATB7 EQU H'0007' ;----- LATC Bits ----------------------------------------------------- LATC0 EQU H'0000' LATC1 EQU H'0001' LATC2 EQU H'0002' LATC3 EQU H'0003' LATC4 EQU H'0004' LATC5 EQU H'0005' LATC6 EQU H'0006' LATC7 EQU H'0007' ;----- LATD Bits ----------------------------------------------------- LATD0 EQU H'0000' LATD1 EQU H'0001' LATD2 EQU H'0002' LATD3 EQU H'0003' LATD4 EQU H'0004' LATD5 EQU H'0005' LATD6 EQU H'0006' LATD7 EQU H'0007' ;----- LATE Bits ----------------------------------------------------- LATE0 EQU H'0000' LATE1 EQU H'0001' LATE2 EQU H'0002' LATE3 EQU H'0003' LATE4 EQU H'0004' LATE5 EQU H'0005' LATE6 EQU H'0006' LATE7 EQU H'0007' ;----- BORCON Bits ----------------------------------------------------- BORRDY EQU H'0000' BORFS EQU H'0006' SBOREN EQU H'0007' ;----- FVRCON Bits ----------------------------------------------------- TSRNG EQU H'0004' TSEN EQU H'0005' FVRRDY EQU H'0006' FVREN EQU H'0007' ADFVR0 EQU H'0000' ADFVR1 EQU H'0001' ;----- APFCON Bits ----------------------------------------------------- CCP2SEL EQU H'0000' T3CKISEL EQU H'0001' ;----- ANSELA Bits ----------------------------------------------------- ANSA0 EQU H'0000' ANSA1 EQU H'0001' ANSA2 EQU H'0002' ANSA3 EQU H'0003' ANSA5 EQU H'0005' ;----- ANSELB Bits ----------------------------------------------------- ANSB0 EQU H'0000' ANSB1 EQU H'0001' ANSB2 EQU H'0002' ANSB3 EQU H'0003' ANSB4 EQU H'0004' ANSB5 EQU H'0005' ;----- ANSELD Bits ----------------------------------------------------- ANSD0 EQU H'0000' ANSD1 EQU H'0001' ANSD2 EQU H'0002' ANSD3 EQU H'0003' ;----- ANSELE Bits ----------------------------------------------------- ANSE0 EQU H'0000' ANSE1 EQU H'0001' ANSE2 EQU H'0002' ;----- PMCON1 Bits ----------------------------------------------------- RD EQU H'0000' WR EQU H'0001' WREN EQU H'0002' WRERR EQU H'0003' FREE EQU H'0004' LWLO EQU H'0005' CFGS EQU H'0006' ;----- VREGCON Bits ----------------------------------------------------- VREGPM EQU H'0001' ;----- RC1STA Bits ----------------------------------------------------- RX9D EQU H'0000' OERR EQU H'0001' FERR EQU H'0002' ADDEN EQU H'0003' CREN EQU H'0004' SREN EQU H'0005' RX9 EQU H'0006' SPEN EQU H'0007' ;----- RCSTA Bits ----------------------------------------------------- RX9D EQU H'0000' OERR EQU H'0001' FERR EQU H'0002' ADDEN EQU H'0003' CREN EQU H'0004' SREN EQU H'0005' RX9 EQU H'0006' SPEN EQU H'0007' ;----- RCSTA1 Bits ----------------------------------------------------- RX9D EQU H'0000' OERR EQU H'0001' FERR EQU H'0002' ADDEN EQU H'0003' CREN EQU H'0004' SREN EQU H'0005' RX9 EQU H'0006' SPEN EQU H'0007' ;----- TX1STA Bits ----------------------------------------------------- TX9D EQU H'0000' TRMT EQU H'0001' BRGH EQU H'0002' SENDB EQU H'0003' SYNC EQU H'0004' TXEN EQU H'0005' TX9 EQU H'0006' CSRC EQU H'0007' ;----- TXSTA Bits ----------------------------------------------------- TX9D EQU H'0000' TRMT EQU H'0001' BRGH EQU H'0002' SENDB EQU H'0003' SYNC EQU H'0004' TXEN EQU H'0005' TX9 EQU H'0006' CSRC EQU H'0007' ;----- TXSTA1 Bits ----------------------------------------------------- TX9D EQU H'0000' TRMT EQU H'0001' BRGH EQU H'0002' SENDB EQU H'0003' SYNC EQU H'0004' TXEN EQU H'0005' TX9 EQU H'0006' CSRC EQU H'0007' ;----- BAUD1CON Bits ----------------------------------------------------- ABDEN EQU H'0000' WUE EQU H'0001' BRG16 EQU H'0003' SCKP EQU H'0004' RCIDL EQU H'0006' ABDOVF EQU H'0007' ;----- BAUDCON Bits ----------------------------------------------------- ABDEN EQU H'0000' WUE EQU H'0001' BRG16 EQU H'0003' SCKP EQU H'0004' RCIDL EQU H'0006' ABDOVF EQU H'0007' ;----- BAUDCON1 Bits ----------------------------------------------------- ABDEN EQU H'0000' WUE EQU H'0001' BRG16 EQU H'0003' SCKP EQU H'0004' RCIDL EQU H'0006' ABDOVF EQU H'0007' ;----- WPUB Bits ----------------------------------------------------- WPUB0 EQU H'0000' WPUB1 EQU H'0001' WPUB2 EQU H'0002' WPUB3 EQU H'0003' WPUB4 EQU H'0004' WPUB5 EQU H'0005' WPUB6 EQU H'0006' WPUB7 EQU H'0007' ;----- WPUD Bits ----------------------------------------------------- WPUD0 EQU H'0000' WPUD1 EQU H'0001' WPUD2 EQU H'0002' WPUD3 EQU H'0003' WPUD4 EQU H'0004' WPUD5 EQU H'0005' WPUD6 EQU H'0006' WPUD7 EQU H'0007' ;----- WPUE Bits ----------------------------------------------------- WPUE0 EQU H'0000' WPUE1 EQU H'0001' WPUE2 EQU H'0002' WPUE3 EQU H'0003' WPUE4 EQU H'0004' WPUE5 EQU H'0005' WPUE6 EQU H'0006' WPUE7 EQU H'0007' ;----- SSP1STAT Bits ----------------------------------------------------- BF EQU H'0000' UA EQU H'0001' R_NOT_W EQU H'0002' S EQU H'0003' P EQU H'0004' D_NOT_A EQU H'0005' CKE EQU H'0006' SMP EQU H'0007' ;----- SSPSTAT Bits ----------------------------------------------------- BF EQU H'0000' UA EQU H'0001' R_NOT_W EQU H'0002' S EQU H'0003' P EQU H'0004' D_NOT_A EQU H'0005' CKE EQU H'0006' SMP EQU H'0007' ;----- SSP1CON1 Bits ----------------------------------------------------- CKP EQU H'0004' SSPEN EQU H'0005' SSPOV EQU H'0006' WCOL EQU H'0007' SSPM0 EQU H'0000' SSPM1 EQU H'0001' SSPM2 EQU H'0002' SSPM3 EQU H'0003' ;----- SSPCON Bits ----------------------------------------------------- CKP EQU H'0004' SSPEN EQU H'0005' SSPOV EQU H'0006' WCOL EQU H'0007' SSPM0 EQU H'0000' SSPM1 EQU H'0001' SSPM2 EQU H'0002' SSPM3 EQU H'0003' ;----- SSPCON1 Bits ----------------------------------------------------- CKP EQU H'0004' SSPEN EQU H'0005' SSPOV EQU H'0006' WCOL EQU H'0007' SSPM0 EQU H'0000' SSPM1 EQU H'0001' SSPM2 EQU H'0002' SSPM3 EQU H'0003' ;----- SSP1CON2 Bits ----------------------------------------------------- SEN EQU H'0000' RSEN EQU H'0001' PEN EQU H'0002' RCEN EQU H'0003' ACKEN EQU H'0004' ACKDT EQU H'0005' ACKSTAT EQU H'0006' GCEN EQU H'0007' ;----- SSPCON2 Bits ----------------------------------------------------- SEN EQU H'0000' RSEN EQU H'0001' PEN EQU H'0002' RCEN EQU H'0003' ACKEN EQU H'0004' ACKDT EQU H'0005' ACKSTAT EQU H'0006' GCEN EQU H'0007' ;----- SSP1CON3 Bits ----------------------------------------------------- DHEN EQU H'0000' AHEN EQU H'0001' SBCDE EQU H'0002' SDAHT EQU H'0003' BOEN EQU H'0004' SCIE EQU H'0005' PCIE EQU H'0006' ACKTIM EQU H'0007' ;----- SSPCON3 Bits ----------------------------------------------------- DHEN EQU H'0000' AHEN EQU H'0001' SBCDE EQU H'0002' SDAHT EQU H'0003' BOEN EQU H'0004' SCIE EQU H'0005' PCIE EQU H'0006' ACKTIM EQU H'0007' ;----- SSP2STAT Bits ----------------------------------------------------- BF EQU H'0000' UA EQU H'0001' R_NOT_W EQU H'0002' S EQU H'0003' P EQU H'0004' D_NOT_A EQU H'0005' CKE EQU H'0006' SMP EQU H'0007' ;----- SSP2CON1 Bits ----------------------------------------------------- CKP EQU H'0004' SSPEN EQU H'0005' SSPOV EQU H'0006' WCOL EQU H'0007' SSPM0 EQU H'0000' SSPM1 EQU H'0001' SSPM2 EQU H'0002' SSPM3 EQU H'0003' ;----- SSP2CON2 Bits ----------------------------------------------------- SEN EQU H'0000' RSEN EQU H'0001' PEN EQU H'0002' RCEN EQU H'0003' ACKEN EQU H'0004' ACKDT EQU H'0005' ACKSTAT EQU H'0006' GCEN EQU H'0007' ;----- SSP2CON3 Bits ----------------------------------------------------- DHEN EQU H'0000' AHEN EQU H'0001' SBCDE EQU H'0002' SDAHT EQU H'0003' BOEN EQU H'0004' SCIE EQU H'0005' PCIE EQU H'0006' ACKTIM EQU H'0007' ;----- PORTF Bits ----------------------------------------------------- RF0 EQU H'0000' RF1 EQU H'0001' RF2 EQU H'0002' RF3 EQU H'0003' RF4 EQU H'0004' RF5 EQU H'0005' RF6 EQU H'0006' RF7 EQU H'0007' ;----- PORTG Bits ----------------------------------------------------- RG0 EQU H'0000' RG1 EQU H'0001' RG2 EQU H'0002' RG3 EQU H'0003' RG4 EQU H'0004' RG5 EQU H'0005' ;----- CCP1CON Bits ----------------------------------------------------- CCP1M0 EQU H'0000' CCP1M1 EQU H'0001' CCP1M2 EQU H'0002' CCP1M3 EQU H'0003' DC1B0 EQU H'0004' DC1B1 EQU H'0005' ;----- CCP2CON Bits ----------------------------------------------------- CCP2M0 EQU H'0000' CCP2M1 EQU H'0001' CCP2M2 EQU H'0002' CCP2M3 EQU H'0003' DC2B0 EQU H'0004' DC2B1 EQU H'0005' ;----- CCPTMRS0 Bits ----------------------------------------------------- C1TSEL0 EQU H'0000' C1TSEL1 EQU H'0001' C2TSEL0 EQU H'0002' C2TSEL1 EQU H'0003' C3TSEL0 EQU H'0004' C3TSEL1 EQU H'0005' C4TSEL0 EQU H'0006' C4TSEL1 EQU H'0007' ;----- CCPTMRS1 Bits ----------------------------------------------------- C5TSEL0 EQU H'0000' C5TSEL1 EQU H'0001' C6TSEL0 EQU H'0002' C6TSEL1 EQU H'0003' C7TSEL0 EQU H'0004' C7TSEL1 EQU H'0005' C8TSEL0 EQU H'0006' C8TSEL1 EQU H'0007' ;----- CCPTMRS2 Bits ----------------------------------------------------- C9TSEL0 EQU H'0000' C9TSEL1 EQU H'0001' C10TSEL0 EQU H'0002' C10TSEL1 EQU H'0003' ;----- TRISF Bits ----------------------------------------------------- TRISF0 EQU H'0000' TRISF1 EQU H'0001' TRISF2 EQU H'0002' TRISF3 EQU H'0003' TRISF4 EQU H'0004' TRISF5 EQU H'0005' TRISF6 EQU H'0006' TRISF7 EQU H'0007' ;----- TRISG Bits ----------------------------------------------------- TRISG0 EQU H'0000' TRISG1 EQU H'0001' TRISG2 EQU H'0002' TRISG3 EQU H'0003' TRISG4 EQU H'0004' ;----- CCP3CON Bits ----------------------------------------------------- CCP3M0 EQU H'0000' CCP3M1 EQU H'0001' CCP3M2 EQU H'0002' CCP3M3 EQU H'0003' DC3B0 EQU H'0004' DC3B1 EQU H'0005' ;----- CCP4CON Bits ----------------------------------------------------- CCP4M0 EQU H'0000' CCP4M1 EQU H'0001' CCP4M2 EQU H'0002' CCP4M3 EQU H'0003' DC4B0 EQU H'0004' DC4B1 EQU H'0005' ;----- CCP5CON Bits ----------------------------------------------------- CCP5M0 EQU H'0000' CCP5M1 EQU H'0001' CCP5M2 EQU H'0002' CCP5M3 EQU H'0003' DC5B0 EQU H'0004' DC5B1 EQU H'0005' ;----- LATF Bits ----------------------------------------------------- LATF0 EQU H'0000' LATF1 EQU H'0001' LATF2 EQU H'0002' LATF3 EQU H'0003' LATF4 EQU H'0004' LATF5 EQU H'0005' LATF6 EQU H'0006' LATF7 EQU H'0007' ;----- LATG Bits ----------------------------------------------------- LATG0 EQU H'0000' LATG1 EQU H'0001' LATG2 EQU H'0002' LATG3 EQU H'0003' LATG4 EQU H'0004' ;----- IOCBP Bits ----------------------------------------------------- IOCBP0 EQU H'0000' IOCBP1 EQU H'0001' IOCBP2 EQU H'0002' IOCBP3 EQU H'0003' IOCBP4 EQU H'0004' IOCBP5 EQU H'0005' IOCBP6 EQU H'0006' IOCBP7 EQU H'0007' ;----- IOCBN Bits ----------------------------------------------------- IOCBN0 EQU H'0000' IOCBN1 EQU H'0001' IOCBN2 EQU H'0002' IOCBN3 EQU H'0003' IOCBN4 EQU H'0004' IOCBN5 EQU H'0005' IOCBN6 EQU H'0006' IOCBN7 EQU H'0007' ;----- IOCBF Bits ----------------------------------------------------- IOCBF0 EQU H'0000' IOCBF1 EQU H'0001' IOCBF2 EQU H'0002' IOCBF3 EQU H'0003' IOCBF4 EQU H'0004' IOCBF5 EQU H'0005' IOCBF6 EQU H'0006' IOCBF7 EQU H'0007' ;----- ANSELF Bits ----------------------------------------------------- ANSF0 EQU H'0000' ANSF1 EQU H'0001' ANSF2 EQU H'0002' ANSF3 EQU H'0003' ANSF4 EQU H'0004' ANSF5 EQU H'0005' ANSF6 EQU H'0006' ANSF7 EQU H'0007' ;----- ANSELG Bits ----------------------------------------------------- ANSG1 EQU H'0001' ANSG2 EQU H'0002' ANSG3 EQU H'0003' ANSG4 EQU H'0004' ;----- T3CON Bits ----------------------------------------------------- TMR3ON EQU H'0000' NOT_T3SYNC EQU H'0002' SOSCEN EQU H'0003' T3OSCEN EQU H'0003' T3CKPS0 EQU H'0004' T3CKPS1 EQU H'0005' TMR3CS0 EQU H'0006' TMR3CS1 EQU H'0007' ;----- T3GCON Bits ----------------------------------------------------- T3GVAL EQU H'0002' T3GGO_NOT_DONE EQU H'0003' T3GSPM EQU H'0004' T3GTM EQU H'0005' T3GPOL EQU H'0006' TMR3GE EQU H'0007' T3GSS0 EQU H'0000' T3GSS1 EQU H'0001' ;----- T4CON Bits ----------------------------------------------------- TMR4ON EQU H'0002' T4CKPS0 EQU H'0000' T4CKPS1 EQU H'0001' T4OUTPS0 EQU H'0003' T4OUTPS1 EQU H'0004' T4OUTPS2 EQU H'0005' T4OUTPS3 EQU H'0006' ;----- T5CON Bits ----------------------------------------------------- TMR5ON EQU H'0000' NOT_T5SYNC EQU H'0002' SOSCEN EQU H'0003' T5OSCEN EQU H'0003' T5CKPS0 EQU H'0004' T5CKPS1 EQU H'0005' TMR5CS0 EQU H'0006' TMR5CS1 EQU H'0007' ;----- T5GCON Bits ----------------------------------------------------- T5GVAL EQU H'0002' T5GGO_NOT_DONE EQU H'0003' T5GSPM EQU H'0004' T5GTM EQU H'0005' T5GPOL EQU H'0006' TMR5GE EQU H'0007' T5GSS0 EQU H'0000' T5GSS1 EQU H'0001' ;----- T6CON Bits ----------------------------------------------------- TMR6ON EQU H'0002' T6CKPS0 EQU H'0000' T6CKPS1 EQU H'0001' T6OUTPS0 EQU H'0003' T6OUTPS1 EQU H'0004' T6OUTPS2 EQU H'0005' T6OUTPS3 EQU H'0006' ;----- WPUG Bits ----------------------------------------------------- WPUG5 EQU H'0005' ;----- RC2STA Bits ----------------------------------------------------- RX9D EQU H'0000' OERR EQU H'0001' FERR EQU H'0002' ADDEN EQU H'0003' CREN EQU H'0004' SREN EQU H'0005' RX9 EQU H'0006' SPEN EQU H'0007' ;----- RCSTA2 Bits ----------------------------------------------------- RX9D EQU H'0000' OERR EQU H'0001' FERR EQU H'0002' ADDEN EQU H'0003' CREN EQU H'0004' SREN EQU H'0005' RX9 EQU H'0006' SPEN EQU H'0007' ;----- TX2STA Bits ----------------------------------------------------- TX9D EQU H'0000' TRMT EQU H'0001' BRGH EQU H'0002' SENDB EQU H'0003' SYNC EQU H'0004' TXEN EQU H'0005' TX9 EQU H'0006' CSRC EQU H'0007' ;----- TXSTA2 Bits ----------------------------------------------------- TX9D EQU H'0000' TRMT EQU H'0001' BRGH EQU H'0002' SENDB EQU H'0003' SYNC EQU H'0004' TXEN EQU H'0005' TX9 EQU H'0006' CSRC EQU H'0007' ;----- BAUD2CON Bits ----------------------------------------------------- ABDEN EQU H'0000' WUE EQU H'0001' BRG16 EQU H'0003' SCKP EQU H'0004' RCIDL EQU H'0006' ABDOVF EQU H'0007' ;----- BAUDCON2 Bits ----------------------------------------------------- ABDEN EQU H'0000' WUE EQU H'0001' BRG16 EQU H'0003' SCKP EQU H'0004' RCIDL EQU H'0006' ABDOVF EQU H'0007' ;----- T8CON Bits ----------------------------------------------------- TMR8ON EQU H'0002' T8CKPS0 EQU H'0000' T8CKPS1 EQU H'0001' T8OUTPS0 EQU H'0003' T8OUTPS1 EQU H'0004' T8OUTPS2 EQU H'0005' T8OUTPS3 EQU H'0006' ;----- T10CON Bits ----------------------------------------------------- TMR10ON EQU H'0002' T10CKPS0 EQU H'0000' T10CKPS1 EQU H'0001' T10OUTPS0 EQU H'0003' T10OUTPS1 EQU H'0004' T10OUTPS2 EQU H'0005' T10OUTPS3 EQU H'0006' ;----- CCP6CON Bits ----------------------------------------------------- CCP6M0 EQU H'0000' CCP6M1 EQU H'0001' CCP6M2 EQU H'0002' CCP6M3 EQU H'0003' DC6B0 EQU H'0004' DC6B1 EQU H'0005' ;----- CCP7CON Bits ----------------------------------------------------- CCP7M0 EQU H'0000' CCP7M1 EQU H'0001' CCP7M2 EQU H'0002' CCP7M3 EQU H'0003' DC7B0 EQU H'0004' DC7B1 EQU H'0005' ;----- CCP8CON Bits ----------------------------------------------------- CCP8M0 EQU H'0000' CCP8M1 EQU H'0001' CCP8M2 EQU H'0002' CCP8M3 EQU H'0003' DC8B0 EQU H'0004' DC8B1 EQU H'0005' ;----- CCP9CON Bits ----------------------------------------------------- CCP9M0 EQU H'0000' CCP9M1 EQU H'0001' CCP9M2 EQU H'0002' CCP9M3 EQU H'0003' DC9B0 EQU H'0004' DC9B1 EQU H'0005' ;----- CCP10CON Bits ----------------------------------------------------- CCP10M0 EQU H'0000' CCP10M1 EQU H'0001' CCP10M2 EQU H'0002' CCP10M3 EQU H'0003' DC10B0 EQU H'0004' DC10B1 EQU H'0005' ;----- STATUS_SHAD Bits ----------------------------------------------------- C_SHAD EQU H'0000' DC_SHAD EQU H'0001' Z_SHAD EQU H'0002' ;========================================================================== ; ; RAM Definitions ; ;========================================================================== __MAXRAM H'0FFF' __BADRAM H'001D'-H'001F' __BADRAM H'0098' __BADRAM H'009F' __BADRAM H'0111'-H'0115' __BADRAM H'0118'-H'011C' __BADRAM H'011E'-H'011F' __BADRAM H'018E' __BADRAM H'0198' __BADRAM H'020C' __BADRAM H'020E' __BADRAM H'0218' __BADRAM H'028E'-H'0290' __BADRAM H'0294'-H'0297' __BADRAM H'029B'-H'029C' __BADRAM H'030E'-H'0310' __BADRAM H'0314'-H'0317' __BADRAM H'031B' __BADRAM H'031F' __BADRAM H'038E'-H'0393' __BADRAM H'0397'-H'039F' __BADRAM H'040E'-H'0410' __BADRAM H'041F' __BADRAM H'048C' __BADRAM H'048E'-H'0490' __BADRAM H'0498'-H'049F' __BADRAM H'04C0'-H'04EF' __BADRAM H'050C'-H'051F' __BADRAM H'0520'-H'056F' __BADRAM H'058C'-H'0594' __BADRAM H'0598'-H'059B' __BADRAM H'059F' __BADRAM H'05A0'-H'05EF' __BADRAM H'060C'-H'0610' __BADRAM H'0620'-H'066F' __BADRAM H'068C'-H'069F' __BADRAM H'06A0'-H'06EF' __BADRAM H'070C'-H'071F' __BADRAM H'0720'-H'076F' __BADRAM H'078C'-H'079F' __BADRAM H'07A0'-H'07EF' __BADRAM H'080C'-H'081F' __BADRAM H'0820'-H'086F' __BADRAM H'088C'-H'089F' __BADRAM H'08A0'-H'08EF' __BADRAM H'090C'-H'091F' __BADRAM H'0920'-H'096F' __BADRAM H'098C'-H'099F' __BADRAM H'09A0'-H'09EF' __BADRAM H'0A0C'-H'0A1F' __BADRAM H'0A20'-H'0A6F' __BADRAM H'0A8C'-H'0A9F' __BADRAM H'0AA0'-H'0AEF' __BADRAM H'0B0C'-H'0B1F' __BADRAM H'0B20'-H'0B6F' __BADRAM H'0B8C'-H'0B9F' __BADRAM H'0BA0'-H'0BEF' __BADRAM H'0C0C'-H'0C1F' __BADRAM H'0C20'-H'0C6F' __BADRAM H'0C8C'-H'0C9F' __BADRAM H'0CA0'-H'0CEF' __BADRAM H'0D0C'-H'0D1F' __BADRAM H'0D20'-H'0D6F' __BADRAM H'0D8C'-H'0D9F' __BADRAM H'0DA0'-H'0DEF' __BADRAM H'0E0C'-H'0E1F' __BADRAM H'0E20'-H'0E6F' __BADRAM H'0E8C'-H'0E9F' __BADRAM H'0EA0'-H'0EEF' __BADRAM H'0F0C'-H'0F1F' __BADRAM H'0F20'-H'0F6F' __BADRAM H'0F8C'-H'0FE3' __BADRAM H'0FEC' ;========================================================================== ; ; Configuration Bits ; ; NAME Address ; CONFIG1 8007h ; CONFIG2 8008h ; ;========================================================================== ; The following is an assignment of address values for all of the ; configuration registers for the purpose of table reads _CONFIG1 EQU H'8007' _CONFIG2 EQU H'8008' ;----- CONFIG1 Options -------------------------------------------------- _FOSC_LP EQU H'FFF8' ; LP Oscillator, Low-power crystal connected between OSC1 and OSC2 pins _FOSC_XT EQU H'FFF9' ; XT Oscillator, Crystal/resonator connected between OSC1 and OSC2 pins _FOSC_HS EQU H'FFFA' ; HS Oscillator, High-speed crystal/resonator connected between OSC1 and OSC2 pins _FOSC_EXTRC EQU H'FFFB' ; EXTRC oscillator: External RC circuit connected to CLKIN pin _FOSC_INTOSC EQU H'FFFC' ; INTOSC oscillator: I/O function on CLKIN pin _FOSC_ECL EQU H'FFFD' ; ECL, External Clock, Low Power Mode (0-0.5 MHz): device clock supplied to CLKIN pin _FOSC_ECM EQU H'FFFE' ; ECM, External Clock, Medium Power Mode (0.5-4 MHz): device clock supplied to CLKIN pin _FOSC_ECH EQU H'FFFF' ; ECH, External Clock, High Power Mode (4-20 MHz): device clock supplied to CLKIN pin _WDTE_OFF EQU H'FFE7' ; WDT disabled _WDTE_SWDTEN EQU H'FFEF' ; WDT controlled by the SWDTEN bit in the WDTCON register _WDTE_NSLEEP EQU H'FFF7' ; WDT enabled while running and disabled in Sleep _WDTE_ON EQU H'FFFF' ; WDT enabled _PWRTE_ON EQU H'FFDF' ; PWRT enabled _PWRTE_OFF EQU H'FFFF' ; PWRT disabled _MCLRE_OFF EQU H'FFBF' ; MCLR/VPP pin function is digital input _MCLRE_ON EQU H'FFFF' ; MCLR/VPP pin function is MCLR _CP_ON EQU H'FF7F' ; Program memory code protection is enabled _CP_OFF EQU H'FFFF' ; Program memory code protection is disabled _BOREN_OFF EQU H'F9FF' ; Brown-out Reset disabled _BOREN_SBODEN EQU H'FBFF' ; Brown-out Reset controlled by the SBOREN bit in the BORCON register _BOREN_NSLEEP EQU H'FDFF' ; Brown-out Reset enabled while running and disabled in Sleep _BOREN_ON EQU H'FFFF' ; Brown-out Reset enabled _CLKOUTEN_ON EQU H'F7FF' ; CLKOUT function is enabled on the CLKOUT pin _CLKOUTEN_OFF EQU H'FFFF' ; CLKOUT function is disabled. I/O or oscillator function on the CLKOUT pin _IESO_OFF EQU H'EFFF' ; Internal/External Switchover mode is disabled _IESO_ON EQU H'FFFF' ; Internal/External Switchover mode is enabled _FCMEN_OFF EQU H'DFFF' ; Fail-Safe Clock Monitor is disabled _FCMEN_ON EQU H'FFFF' ; Fail-Safe Clock Monitor is enabled ;----- CONFIG2 Options -------------------------------------------------- _WRT_ALL EQU H'FFFC' ; 000h to 3FFFh write protected, no addresses may be modified by PMCON control _WRT_HALF EQU H'FFFD' ; 000h to FFFh write protected, 2000h to 3FFFh may be modified by PMCON control _WRT_BOOT EQU H'FFFE' ; 000h to 1FFh write protected, 200h to 3FFFh may be modified by PMCON control _WRT_OFF EQU H'FFFF' ; Write protection off _VCAPEN_ON EQU H'FFEF' ; VCAP pin function enabled _VCAPEN_OFF EQU H'FFFF' ; VCAP pin function disabled _STVREN_OFF EQU H'FDFF' ; Stack Overflow or Underflow will not cause a Reset _STVREN_ON EQU H'FFFF' ; Stack Overflow or Underflow will cause a Reset _BORV_HI EQU H'FBFF' ; Brown-out Reset Voltage (Vbor), high trip point selected. _BORV_270 EQU H'FBFF' ; Brown-out Reset Voltage (Vbor), high trip point selected. _BORV_LO EQU H'FFFF' ; Brown-out Reset Voltage (Vbor), low trip point selected. _BORV_245 EQU H'FFFF' ; Brown-out Reset Voltage (Vbor), low trip point selected. _LPBOR_ON EQU H'F7FF' ; Low-Power BOR is enabled _LPBOR_OFF EQU H'FFFF' ; Low-Power BOR is disabled _LVP_OFF EQU H'DFFF' ; High-voltage on MCLR/VPP must be used for programming _LVP_ON EQU H'FFFF' ; Low-voltage programming enabled ;----- DEVID Equates -------------------------------------------------- _DEVID1 EQU H'8006' ;----- IDLOC Equates -------------------------------------------------- _IDLOC0 EQU H'8000' _IDLOC1 EQU H'8001' _IDLOC2 EQU H'8002' _IDLOC3 EQU H'8003' LIST