//
// This header file was automatically generated by:
//
-// inc2h.pl V1.6
+// inc2h.pl V4514
//
// Copyright (c) 2002, Kevin L. Pauba, All Rights Reserved
//
// Memory organization.
//
-#pragma memmap INDF_ADDR INDF_ADDR SFR 0x000 // INDF
-#pragma memmap TMR0_ADDR TMR0_ADDR SFR 0x000 // TMR0
-#pragma memmap PCL_ADDR PCL_ADDR SFR 0x000 // PCL
-#pragma memmap STATUS_ADDR STATUS_ADDR SFR 0x000 // STATUS
-#pragma memmap FSR_ADDR FSR_ADDR SFR 0x000 // FSR
-#pragma memmap PORTA_ADDR PORTA_ADDR SFR 0x000 // PORTA
-#pragma memmap PORTB_ADDR PORTB_ADDR SFR 0x000 // PORTB
-#pragma memmap PORTC_ADDR PORTC_ADDR SFR 0x000 // PORTC
-#pragma memmap PCLATH_ADDR PCLATH_ADDR SFR 0x000 // PCLATH
-#pragma memmap INTCON_ADDR INTCON_ADDR SFR 0x000 // INTCON
-#pragma memmap PIR1_ADDR PIR1_ADDR SFR 0x000 // PIR1
-#pragma memmap PIR2_ADDR PIR2_ADDR SFR 0x000 // PIR2
-#pragma memmap TMR1L_ADDR TMR1L_ADDR SFR 0x000 // TMR1L
-#pragma memmap TMR1H_ADDR TMR1H_ADDR SFR 0x000 // TMR1H
-#pragma memmap T1CON_ADDR T1CON_ADDR SFR 0x000 // T1CON
-#pragma memmap SSPBUF_ADDR SSPBUF_ADDR SFR 0x000 // SSPBUF
-#pragma memmap SSPCON_ADDR SSPCON_ADDR SFR 0x000 // SSPCON
-#pragma memmap RCSTA_ADDR RCSTA_ADDR SFR 0x000 // RCSTA
-#pragma memmap TXREG_ADDR TXREG_ADDR SFR 0x000 // TXREG
-#pragma memmap RCREG_ADDR RCREG_ADDR SFR 0x000 // RCREG
-#pragma memmap ADRESH_ADDR ADRESH_ADDR SFR 0x000 // ADRESH
-#pragma memmap ADCON0_ADDR ADCON0_ADDR SFR 0x000 // ADCON0
-#pragma memmap OPTION_REG_ADDR OPTION_REG_ADDR SFR 0x000 // OPTION_REG
-#pragma memmap TRISA_ADDR TRISA_ADDR SFR 0x000 // TRISA
-#pragma memmap TRISB_ADDR TRISB_ADDR SFR 0x000 // TRISB
-#pragma memmap TRISC_ADDR TRISC_ADDR SFR 0x000 // TRISC
-#pragma memmap PIE1_ADDR PIE1_ADDR SFR 0x000 // PIE1
-#pragma memmap PIE2_ADDR PIE2_ADDR SFR 0x000 // PIE2
-#pragma memmap PCON_ADDR PCON_ADDR SFR 0x000 // PCON
-#pragma memmap OSCCON_ADDR OSCCON_ADDR SFR 0x000 // OSCCON
-#pragma memmap OSCTUNE_ADDR OSCTUNE_ADDR SFR 0x000 // OSCTUNE
-#pragma memmap SSPADD_ADDR SSPADD_ADDR SFR 0x000 // SSPADD
-#pragma memmap MSK_ADDR MSK_ADDR SFR 0x000 // MSK
-#pragma memmap SSPMSK_ADDR SSPMSK_ADDR SFR 0x000 // SSPMSK
-#pragma memmap SSPSTAT_ADDR SSPSTAT_ADDR SFR 0x000 // SSPSTAT
-#pragma memmap WPU_ADDR WPU_ADDR SFR 0x000 // WPU
-#pragma memmap WPUA_ADDR WPUA_ADDR SFR 0x000 // WPUA
-#pragma memmap IOC_ADDR IOC_ADDR SFR 0x000 // IOC
-#pragma memmap IOCA_ADDR IOCA_ADDR SFR 0x000 // IOCA
-#pragma memmap WDTCON_ADDR WDTCON_ADDR SFR 0x000 // WDTCON
-#pragma memmap TXSTA_ADDR TXSTA_ADDR SFR 0x000 // TXSTA
-#pragma memmap SPBRG_ADDR SPBRG_ADDR SFR 0x000 // SPBRG
-#pragma memmap SPBRGH_ADDR SPBRGH_ADDR SFR 0x000 // SPBRGH
-#pragma memmap BAUDCTL_ADDR BAUDCTL_ADDR SFR 0x000 // BAUDCTL
-#pragma memmap ADRESL_ADDR ADRESL_ADDR SFR 0x000 // ADRESL
-#pragma memmap ADCON1_ADDR ADCON1_ADDR SFR 0x000 // ADCON1
-#pragma memmap EEDATA_ADDR EEDATA_ADDR SFR 0x000 // EEDATA
-#pragma memmap EEADR_ADDR EEADR_ADDR SFR 0x000 // EEADR
-#pragma memmap EEDATH_ADDR EEDATH_ADDR SFR 0x000 // EEDATH
-#pragma memmap EEADRH_ADDR EEADRH_ADDR SFR 0x000 // EEADRH
-#pragma memmap WPUB_ADDR WPUB_ADDR SFR 0x000 // WPUB
-#pragma memmap IOCB_ADDR IOCB_ADDR SFR 0x000 // IOCB
-#pragma memmap VRCON_ADDR VRCON_ADDR SFR 0x000 // VRCON
-#pragma memmap CM1CON0_ADDR CM1CON0_ADDR SFR 0x000 // CM1CON0
-#pragma memmap CM2CON0_ADDR CM2CON0_ADDR SFR 0x000 // CM2CON0
-#pragma memmap CM2CON1_ADDR CM2CON1_ADDR SFR 0x000 // CM2CON1
-#pragma memmap ANSEL_ADDR ANSEL_ADDR SFR 0x000 // ANSEL
-#pragma memmap ANSELH_ADDR ANSELH_ADDR SFR 0x000 // ANSELH
-#pragma memmap EECON1_ADDR EECON1_ADDR SFR 0x000 // EECON1
-#pragma memmap EECON2_ADDR EECON2_ADDR SFR 0x000 // EECON2
-#pragma memmap SRCON_ADDR SRCON_ADDR SFR 0x000 // SRCON
// LIST
//----- Register Files------------------------------------------------------
-extern data __at (INDF_ADDR) volatile char INDF;
-extern sfr __at (TMR0_ADDR) TMR0;
-extern data __at (PCL_ADDR) volatile char PCL;
-extern sfr __at (STATUS_ADDR) STATUS;
-extern sfr __at (FSR_ADDR) FSR;
-extern sfr __at (PORTA_ADDR) PORTA;
-extern sfr __at (PORTB_ADDR) PORTB;
-extern sfr __at (PORTC_ADDR) PORTC;
+extern __data __at (INDF_ADDR) volatile char INDF;
+extern __sfr __at (TMR0_ADDR) TMR0;
+extern __data __at (PCL_ADDR) volatile char PCL;
+extern __sfr __at (STATUS_ADDR) STATUS;
+extern __sfr __at (FSR_ADDR) FSR;
+extern __sfr __at (PORTA_ADDR) PORTA;
+extern __sfr __at (PORTB_ADDR) PORTB;
+extern __sfr __at (PORTC_ADDR) PORTC;
-extern sfr __at (PCLATH_ADDR) PCLATH;
-extern sfr __at (INTCON_ADDR) INTCON;
-extern sfr __at (PIR1_ADDR) PIR1;
-extern sfr __at (PIR2_ADDR) PIR2;
-extern sfr __at (TMR1L_ADDR) TMR1L;
-extern sfr __at (TMR1H_ADDR) TMR1H;
-extern sfr __at (T1CON_ADDR) T1CON;
+extern __sfr __at (PCLATH_ADDR) PCLATH;
+extern __sfr __at (INTCON_ADDR) INTCON;
+extern __sfr __at (PIR1_ADDR) PIR1;
+extern __sfr __at (PIR2_ADDR) PIR2;
+extern __sfr __at (TMR1L_ADDR) TMR1L;
+extern __sfr __at (TMR1H_ADDR) TMR1H;
+extern __sfr __at (T1CON_ADDR) T1CON;
-extern sfr __at (SSPBUF_ADDR) SSPBUF;
-extern sfr __at (SSPCON_ADDR) SSPCON;
+extern __sfr __at (SSPBUF_ADDR) SSPBUF;
+extern __sfr __at (SSPCON_ADDR) SSPCON;
-extern sfr __at (RCSTA_ADDR) RCSTA;
-extern sfr __at (TXREG_ADDR) TXREG;
-extern sfr __at (RCREG_ADDR) RCREG;
+extern __sfr __at (RCSTA_ADDR) RCSTA;
+extern __sfr __at (TXREG_ADDR) TXREG;
+extern __sfr __at (RCREG_ADDR) RCREG;
-extern sfr __at (ADRESH_ADDR) ADRESH;
-extern sfr __at (ADCON0_ADDR) ADCON0;
+extern __sfr __at (ADRESH_ADDR) ADRESH;
+extern __sfr __at (ADCON0_ADDR) ADCON0;
-extern sfr __at (OPTION_REG_ADDR) OPTION_REG;
+extern __sfr __at (OPTION_REG_ADDR) OPTION_REG;
-extern sfr __at (TRISA_ADDR) TRISA;
-extern sfr __at (TRISB_ADDR) TRISB;
-extern sfr __at (TRISC_ADDR) TRISC;
+extern __sfr __at (TRISA_ADDR) TRISA;
+extern __sfr __at (TRISB_ADDR) TRISB;
+extern __sfr __at (TRISC_ADDR) TRISC;
-extern sfr __at (PIE1_ADDR) PIE1;
-extern sfr __at (PIE2_ADDR) PIE2;
-extern sfr __at (PCON_ADDR) PCON;
-extern sfr __at (OSCCON_ADDR) OSCCON;
-extern sfr __at (OSCTUNE_ADDR) OSCTUNE;
+extern __sfr __at (PIE1_ADDR) PIE1;
+extern __sfr __at (PIE2_ADDR) PIE2;
+extern __sfr __at (PCON_ADDR) PCON;
+extern __sfr __at (OSCCON_ADDR) OSCCON;
+extern __sfr __at (OSCTUNE_ADDR) OSCTUNE;
-extern sfr __at (SSPADD_ADDR) SSPADD;
-extern sfr __at (MSK_ADDR) MSK;
-extern sfr __at (SSPMSK_ADDR) SSPMSK;
-extern sfr __at (SSPSTAT_ADDR) SSPSTAT;
-extern sfr __at (WPU_ADDR) WPU;
-extern sfr __at (WPUA_ADDR) WPUA;
-extern sfr __at (IOC_ADDR) IOC;
-extern sfr __at (IOCA_ADDR) IOCA;
-extern sfr __at (WDTCON_ADDR) WDTCON;
-extern sfr __at (TXSTA_ADDR) TXSTA;
-extern sfr __at (SPBRG_ADDR) SPBRG;
-extern sfr __at (SPBRGH_ADDR) SPBRGH;
-extern sfr __at (BAUDCTL_ADDR) BAUDCTL;
+extern __sfr __at (SSPADD_ADDR) SSPADD;
+extern __sfr __at (MSK_ADDR) MSK;
+extern __sfr __at (SSPMSK_ADDR) SSPMSK;
+extern __sfr __at (SSPSTAT_ADDR) SSPSTAT;
+extern __sfr __at (WPU_ADDR) WPU;
+extern __sfr __at (WPUA_ADDR) WPUA;
+extern __sfr __at (IOC_ADDR) IOC;
+extern __sfr __at (IOCA_ADDR) IOCA;
+extern __sfr __at (WDTCON_ADDR) WDTCON;
+extern __sfr __at (TXSTA_ADDR) TXSTA;
+extern __sfr __at (SPBRG_ADDR) SPBRG;
+extern __sfr __at (SPBRGH_ADDR) SPBRGH;
+extern __sfr __at (BAUDCTL_ADDR) BAUDCTL;
-extern sfr __at (ADRESL_ADDR) ADRESL;
-extern sfr __at (ADCON1_ADDR) ADCON1;
+extern __sfr __at (ADRESL_ADDR) ADRESL;
+extern __sfr __at (ADCON1_ADDR) ADCON1;
-extern sfr __at (EEDATA_ADDR) EEDATA;
-extern sfr __at (EEADR_ADDR) EEADR;
-extern sfr __at (EEDATH_ADDR) EEDATH;
-extern sfr __at (EEADRH_ADDR) EEADRH;
+extern __sfr __at (EEDATA_ADDR) EEDATA;
+extern __sfr __at (EEADR_ADDR) EEADR;
+extern __sfr __at (EEDATH_ADDR) EEDATH;
+extern __sfr __at (EEADRH_ADDR) EEADRH;
-extern sfr __at (WPUB_ADDR) WPUB;
-extern sfr __at (IOCB_ADDR) IOCB;
+extern __sfr __at (WPUB_ADDR) WPUB;
+extern __sfr __at (IOCB_ADDR) IOCB;
-extern sfr __at (VRCON_ADDR) VRCON;
-extern sfr __at (CM1CON0_ADDR) CM1CON0;
-extern sfr __at (CM2CON0_ADDR) CM2CON0;
-extern sfr __at (CM2CON1_ADDR) CM2CON1;
+extern __sfr __at (VRCON_ADDR) VRCON;
+extern __sfr __at (CM1CON0_ADDR) CM1CON0;
+extern __sfr __at (CM2CON0_ADDR) CM2CON0;
+extern __sfr __at (CM2CON1_ADDR) CM2CON1;
-extern sfr __at (ANSEL_ADDR) ANSEL;
-extern sfr __at (ANSELH_ADDR) ANSELH;
+extern __sfr __at (ANSEL_ADDR) ANSEL;
+extern __sfr __at (ANSELH_ADDR) ANSELH;
-extern sfr __at (EECON1_ADDR) EECON1;
-extern sfr __at (EECON2_ADDR) EECON2;
+extern __sfr __at (EECON1_ADDR) EECON1;
+extern __sfr __at (EECON2_ADDR) EECON2;
-extern sfr __at (SRCON_ADDR) SRCON;
+extern __sfr __at (SRCON_ADDR) SRCON;
-//----- SSPCON Bits -------------------------------------------------------
+//----- SSPCON0 Bits -------------------------------------------------------
#define VCFG ADCON0_bits.VCFG
#define ADFM ADCON0_bits.ADFM
+// ----- ADCON1 bits --------------------
+typedef union {
+ struct {
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char ADCS0:1;
+ unsigned char ADCS1:1;
+ unsigned char ADCS2:1;
+ unsigned char :1;
+ };
+} __ADCON1_bits_t;
+extern volatile __ADCON1_bits_t __at(ADCON1_ADDR) ADCON1_bits;
+
+#define ADCS0 ADCON1_bits.ADCS0
+#define ADCS1 ADCON1_bits.ADCS1
+#define ADCS2 ADCON1_bits.ADCS2
+
+// ----- ANSEL bits --------------------
+typedef union {
+ struct {
+ unsigned char ANS0:1;
+ unsigned char ANS1:1;
+ unsigned char ANS2:1;
+ unsigned char ANS3:1;
+ unsigned char ANS4:1;
+ unsigned char ANS5:1;
+ unsigned char ANS6:1;
+ unsigned char ANS7:1;
+ };
+} __ANSEL_bits_t;
+extern volatile __ANSEL_bits_t __at(ANSEL_ADDR) ANSEL_bits;
+
+#define ANS0 ANSEL_bits.ANS0
+#define ANS1 ANSEL_bits.ANS1
+#define ANS2 ANSEL_bits.ANS2
+#define ANS3 ANSEL_bits.ANS3
+#define ANS4 ANSEL_bits.ANS4
+#define ANS5 ANSEL_bits.ANS5
+#define ANS6 ANSEL_bits.ANS6
+#define ANS7 ANSEL_bits.ANS7
+
// ----- BAUDCTL bits --------------------
typedef union {
struct {
unsigned char :1;
unsigned char BRG16:1;
unsigned char CKTXP:1;
- unsigned char ADCS1:1;
+ unsigned char :1;
unsigned char RCIDL:1;
unsigned char ABDOVF:1;
};
- struct {
- unsigned char :1;
- unsigned char :1;
- unsigned char :1;
- unsigned char :1;
- unsigned char ADCS0:1;
- unsigned char :1;
- unsigned char ADCS2:1;
- unsigned char :1;
- };
} __BAUDCTL_bits_t;
extern volatile __BAUDCTL_bits_t __at(BAUDCTL_ADDR) BAUDCTL_bits;
#define WUE BAUDCTL_bits.WUE
#define BRG16 BAUDCTL_bits.BRG16
#define CKTXP BAUDCTL_bits.CKTXP
-#define ADCS0 BAUDCTL_bits.ADCS0
-#define ADCS1 BAUDCTL_bits.ADCS1
#define RCIDL BAUDCTL_bits.RCIDL
-#define ADCS2 BAUDCTL_bits.ADCS2
#define ABDOVF BAUDCTL_bits.ABDOVF
// ----- CM1CON0 bits --------------------
struct {
unsigned char C2SYNC:1;
unsigned char T1GSS:1;
- unsigned char ANS2:1;
- unsigned char ANS3:1;
- unsigned char ANS4:1;
- unsigned char ANS5:1;
- unsigned char MC2OUT:1;
- unsigned char MC1OUT:1;
- };
- struct {
- unsigned char ANS0:1;
- unsigned char ANS1:1;
- unsigned char WREN:1;
- unsigned char WRERR:1;
- unsigned char C2REN:1;
- unsigned char C1SEN:1;
- unsigned char ANS6:1;
- unsigned char ANS7:1;
- };
- struct {
- unsigned char RD:1;
- unsigned char WR:1;
- unsigned char PULSR:1;
- unsigned char PULSS:1;
- unsigned char :1;
- unsigned char :1;
- unsigned char SR0:1;
- unsigned char EEPGD:1;
- };
- struct {
- unsigned char :1;
- unsigned char :1;
- unsigned char :1;
unsigned char :1;
unsigned char :1;
unsigned char :1;
unsigned char :1;
- unsigned char SR1:1;
+ unsigned char MC2OUT:1;
+ unsigned char MC1OUT:1;
};
} __CM2CON1_bits_t;
extern volatile __CM2CON1_bits_t __at(CM2CON1_ADDR) CM2CON1_bits;
#define C2SYNC CM2CON1_bits.C2SYNC
-#define ANS0 CM2CON1_bits.ANS0
-#define RD CM2CON1_bits.RD
#define T1GSS CM2CON1_bits.T1GSS
-#define ANS1 CM2CON1_bits.ANS1
-#define WR CM2CON1_bits.WR
-#define ANS2 CM2CON1_bits.ANS2
-#define WREN CM2CON1_bits.WREN
-#define PULSR CM2CON1_bits.PULSR
-#define ANS3 CM2CON1_bits.ANS3
-#define WRERR CM2CON1_bits.WRERR
-#define PULSS CM2CON1_bits.PULSS
-#define ANS4 CM2CON1_bits.ANS4
-#define C2REN CM2CON1_bits.C2REN
-#define ANS5 CM2CON1_bits.ANS5
-#define C1SEN CM2CON1_bits.C1SEN
#define MC2OUT CM2CON1_bits.MC2OUT
-#define ANS6 CM2CON1_bits.ANS6
-#define SR0 CM2CON1_bits.SR0
#define MC1OUT CM2CON1_bits.MC1OUT
-#define ANS7 CM2CON1_bits.ANS7
-#define EEPGD CM2CON1_bits.EEPGD
-#define SR1 CM2CON1_bits.SR1
+
+// ----- EECON1 bits --------------------
+typedef union {
+ struct {
+ unsigned char RD:1;
+ unsigned char WR:1;
+ unsigned char WREN:1;
+ unsigned char WRERR:1;
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char EEPGD:1;
+ };
+} __EECON1_bits_t;
+extern volatile __EECON1_bits_t __at(EECON1_ADDR) EECON1_bits;
+
+#define RD EECON1_bits.RD
+#define WR EECON1_bits.WR
+#define WREN EECON1_bits.WREN
+#define WRERR EECON1_bits.WRERR
+#define EEPGD EECON1_bits.EEPGD
// ----- INTCON bits --------------------
typedef union {
#define PEIE INTCON_bits.PEIE
#define GIE INTCON_bits.GIE
+// ----- IOC bits --------------------
+typedef union {
+ struct {
+ unsigned char IOC0:1;
+ unsigned char IOC1:1;
+ unsigned char IOC2:1;
+ unsigned char IOC3:1;
+ unsigned char IOC4:1;
+ unsigned char IOC5:1;
+ unsigned char :1;
+ unsigned char :1;
+ };
+} __IOC_bits_t;
+extern volatile __IOC_bits_t __at(IOC_ADDR) IOC_bits;
+
+#define IOC0 IOC_bits.IOC0
+#define IOC1 IOC_bits.IOC1
+#define IOC2 IOC_bits.IOC2
+#define IOC3 IOC_bits.IOC3
+#define IOC4 IOC_bits.IOC4
+#define IOC5 IOC_bits.IOC5
+
+// ----- IOCA bits --------------------
+typedef union {
+ struct {
+ unsigned char IOCA0:1;
+ unsigned char IOCA1:1;
+ unsigned char IOCA2:1;
+ unsigned char IOCA3:1;
+ unsigned char IOCA4:1;
+ unsigned char IOCA5:1;
+ unsigned char :1;
+ unsigned char :1;
+ };
+} __IOCA_bits_t;
+extern volatile __IOCA_bits_t __at(IOCA_ADDR) IOCA_bits;
+
+#define IOCA0 IOCA_bits.IOCA0
+#define IOCA1 IOCA_bits.IOCA1
+#define IOCA2 IOCA_bits.IOCA2
+#define IOCA3 IOCA_bits.IOCA3
+#define IOCA4 IOCA_bits.IOCA4
+#define IOCA5 IOCA_bits.IOCA5
+
+// ----- IOCB bits --------------------
+typedef union {
+ struct {
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char IOCB4:1;
+ unsigned char IOCB5:1;
+ unsigned char IOCB6:1;
+ unsigned char IOCB7:1;
+ };
+} __IOCB_bits_t;
+extern volatile __IOCB_bits_t __at(IOCB_ADDR) IOCB_bits;
+
+#define IOCB4 IOCB_bits.IOCB4
+#define IOCB5 IOCB_bits.IOCB5
+#define IOCB6 IOCB_bits.IOCB6
+#define IOCB7 IOCB_bits.IOCB7
+
// ----- OPTION_REG bits --------------------
typedef union {
struct {
#define C2IF PIR2_bits.C2IF
#define OSFIF PIR2_bits.OSFIF
+// ----- PORTA bits --------------------
+typedef union {
+ struct {
+ unsigned char RA0:1;
+ unsigned char RA1:1;
+ unsigned char RA2:1;
+ unsigned char RA3:1;
+ unsigned char RA4:1;
+ unsigned char RA5:1;
+ unsigned char :1;
+ unsigned char :1;
+ };
+} __PORTA_bits_t;
+extern volatile __PORTA_bits_t __at(PORTA_ADDR) PORTA_bits;
+
+#define RA0 PORTA_bits.RA0
+#define RA1 PORTA_bits.RA1
+#define RA2 PORTA_bits.RA2
+#define RA3 PORTA_bits.RA3
+#define RA4 PORTA_bits.RA4
+#define RA5 PORTA_bits.RA5
+
+// ----- PORTB bits --------------------
+typedef union {
+ struct {
+ unsigned char RB0:1;
+ unsigned char RB1:1;
+ unsigned char RB2:1;
+ unsigned char RB3:1;
+ unsigned char RB4:1;
+ unsigned char RB5:1;
+ unsigned char RB6:1;
+ unsigned char RB7:1;
+ };
+} __PORTB_bits_t;
+extern volatile __PORTB_bits_t __at(PORTB_ADDR) PORTB_bits;
+
+#define RB0 PORTB_bits.RB0
+#define RB1 PORTB_bits.RB1
+#define RB2 PORTB_bits.RB2
+#define RB3 PORTB_bits.RB3
+#define RB4 PORTB_bits.RB4
+#define RB5 PORTB_bits.RB5
+#define RB6 PORTB_bits.RB6
+#define RB7 PORTB_bits.RB7
+
+// ----- PORTC bits --------------------
+typedef union {
+ struct {
+ unsigned char RC0:1;
+ unsigned char RC1:1;
+ unsigned char RC2:1;
+ unsigned char RC3:1;
+ unsigned char RC4:1;
+ unsigned char RC5:1;
+ unsigned char RC6:1;
+ unsigned char RC7:1;
+ };
+} __PORTC_bits_t;
+extern volatile __PORTC_bits_t __at(PORTC_ADDR) PORTC_bits;
+
+#define RC0 PORTC_bits.RC0
+#define RC1 PORTC_bits.RC1
+#define RC2 PORTC_bits.RC2
+#define RC3 PORTC_bits.RC3
+#define RC4 PORTC_bits.RC4
+#define RC5 PORTC_bits.RC5
+#define RC6 PORTC_bits.RC6
+#define RC7 PORTC_bits.RC7
+
// ----- RCSTA bits --------------------
typedef union {
struct {
#define BRG14 SPBRGH_bits.BRG14
#define BRG15 SPBRGH_bits.BRG15
+// ----- SRCON bits --------------------
+typedef union {
+ struct {
+ unsigned char :1;
+ unsigned char :1;
+ unsigned char PULSR:1;
+ unsigned char PULSS:1;
+ unsigned char C2REN:1;
+ unsigned char C1SEN:1;
+ unsigned char SR0:1;
+ unsigned char SR1:1;
+ };
+} __SRCON_bits_t;
+extern volatile __SRCON_bits_t __at(SRCON_ADDR) SRCON_bits;
+
+#define PULSR SRCON_bits.PULSR
+#define PULSS SRCON_bits.PULSS
+#define C2REN SRCON_bits.C2REN
+#define C1SEN SRCON_bits.C1SEN
+#define SR0 SRCON_bits.SR0
+#define SR1 SRCON_bits.SR1
+
// ----- SSPCON bits --------------------
typedef union {
struct {
unsigned char CKE:1;
unsigned char SMP:1;
};
- struct {
- unsigned char WPUA0:1;
- unsigned char WPUA1:1;
- unsigned char WPUA2:1;
- unsigned char IOC3:1;
- unsigned char WPUA4:1;
- unsigned char WPUA5:1;
- unsigned char :1;
- unsigned char :1;
- };
- struct {
- unsigned char IOC0:1;
- unsigned char IOC1:1;
- unsigned char IOC2:1;
- unsigned char IOCA3:1;
- unsigned char IOC4:1;
- unsigned char IOC5:1;
- unsigned char :1;
- unsigned char :1;
- };
- struct {
- unsigned char IOCA0:1;
- unsigned char IOCA1:1;
- unsigned char IOCA2:1;
- unsigned char :1;
- unsigned char IOCA4:1;
- unsigned char IOCA5:1;
- unsigned char :1;
- unsigned char :1;
- };
} __SSPSTAT_bits_t;
extern volatile __SSPSTAT_bits_t __at(SSPSTAT_ADDR) SSPSTAT_bits;
#define BF SSPSTAT_bits.BF
-#define WPUA0 SSPSTAT_bits.WPUA0
-#define IOC0 SSPSTAT_bits.IOC0
-#define IOCA0 SSPSTAT_bits.IOCA0
#define UA SSPSTAT_bits.UA
-#define WPUA1 SSPSTAT_bits.WPUA1
-#define IOC1 SSPSTAT_bits.IOC1
-#define IOCA1 SSPSTAT_bits.IOCA1
#define R_W_NOT SSPSTAT_bits.R_W_NOT
-#define WPUA2 SSPSTAT_bits.WPUA2
-#define IOC2 SSPSTAT_bits.IOC2
-#define IOCA2 SSPSTAT_bits.IOCA2
#define S SSPSTAT_bits.S
-#define IOC3 SSPSTAT_bits.IOC3
-#define IOCA3 SSPSTAT_bits.IOCA3
#define P SSPSTAT_bits.P
-#define WPUA4 SSPSTAT_bits.WPUA4
-#define IOC4 SSPSTAT_bits.IOC4
-#define IOCA4 SSPSTAT_bits.IOCA4
#define D_A_NOT SSPSTAT_bits.D_A_NOT
-#define WPUA5 SSPSTAT_bits.WPUA5
-#define IOC5 SSPSTAT_bits.IOC5
-#define IOCA5 SSPSTAT_bits.IOCA5
#define CKE SSPSTAT_bits.CKE
#define SMP SSPSTAT_bits.SMP
#define WDTPS2 WDTCON_bits.WDTPS2
#define WDTPS3 WDTCON_bits.WDTPS3
-// ----- WPUB bits --------------------
+// ----- WPUA bits --------------------
typedef union {
struct {
+ unsigned char WPUA0:1;
+ unsigned char WPUA1:1;
+ unsigned char WPUA2:1;
unsigned char :1;
+ unsigned char WPUA4:1;
+ unsigned char WPUA5:1;
unsigned char :1;
unsigned char :1;
- unsigned char :1;
- unsigned char WPUB4:1;
- unsigned char WPUB5:1;
- unsigned char WPUB6:1;
- unsigned char WPUB7:1;
};
+} __WPUA_bits_t;
+extern volatile __WPUA_bits_t __at(WPUA_ADDR) WPUA_bits;
+
+#define WPUA0 WPUA_bits.WPUA0
+#define WPUA1 WPUA_bits.WPUA1
+#define WPUA2 WPUA_bits.WPUA2
+#define WPUA4 WPUA_bits.WPUA4
+#define WPUA5 WPUA_bits.WPUA5
+
+// ----- WPUB bits --------------------
+typedef union {
struct {
unsigned char :1;
unsigned char :1;
unsigned char :1;
unsigned char :1;
- unsigned char IOCB4:1;
- unsigned char IOCB5:1;
- unsigned char IOCB6:1;
- unsigned char IOCB7:1;
+ unsigned char WPUB4:1;
+ unsigned char WPUB5:1;
+ unsigned char WPUB6:1;
+ unsigned char WPUB7:1;
};
} __WPUB_bits_t;
extern volatile __WPUB_bits_t __at(WPUB_ADDR) WPUB_bits;
#define WPUB4 WPUB_bits.WPUB4
-#define IOCB4 WPUB_bits.IOCB4
#define WPUB5 WPUB_bits.WPUB5
-#define IOCB5 WPUB_bits.IOCB5
#define WPUB6 WPUB_bits.WPUB6
-#define IOCB6 WPUB_bits.IOCB6
#define WPUB7 WPUB_bits.WPUB7
-#define IOCB7 WPUB_bits.IOCB7
#endif