//
// This header file was automatically generated by:
//
-// inc2h.pl V1.6
+// inc2h.pl V4585
//
// 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 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 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 TMR2_ADDR TMR2_ADDR SFR 0x000 // TMR2
-#pragma memmap T2CON_ADDR T2CON_ADDR SFR 0x000 // T2CON
-#pragma memmap CCPR1L_ADDR CCPR1L_ADDR SFR 0x000 // CCPR1L
-#pragma memmap CCPR1H_ADDR CCPR1H_ADDR SFR 0x000 // CCPR1H
-#pragma memmap CCP1CON_ADDR CCP1CON_ADDR SFR 0x000 // CCP1CON
-#pragma memmap PWM1CON_ADDR PWM1CON_ADDR SFR 0x000 // PWM1CON
-#pragma memmap ECCPAS_ADDR ECCPAS_ADDR SFR 0x000 // ECCPAS
-#pragma memmap WDTCON_ADDR WDTCON_ADDR SFR 0x000 // WDTCON
-#pragma memmap CMCON0_ADDR CMCON0_ADDR SFR 0x000 // CMCON0
-#pragma memmap CMCON1_ADDR CMCON1_ADDR SFR 0x000 // CMCON1
-#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 TRISC_ADDR TRISC_ADDR SFR 0x000 // TRISC
-#pragma memmap PIE1_ADDR PIE1_ADDR SFR 0x000 // PIE1
-#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 ANSEL_ADDR ANSEL_ADDR SFR 0x000 // ANSEL
-#pragma memmap PR2_ADDR PR2_ADDR SFR 0x000 // PR2
-#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 VRCON_ADDR VRCON_ADDR SFR 0x000 // VRCON
-#pragma memmap EEDAT_ADDR EEDAT_ADDR SFR 0x000 // EEDAT
-#pragma memmap EEDATA_ADDR EEDATA_ADDR SFR 0x000 // EEDATA
-#pragma memmap EEADR_ADDR EEADR_ADDR SFR 0x000 // EEADR
-#pragma memmap EECON1_ADDR EECON1_ADDR SFR 0x000 // EECON1
-#pragma memmap EECON2_ADDR EECON2_ADDR SFR 0x000 // EECON2
-#pragma memmap ADRESL_ADDR ADRESL_ADDR SFR 0x000 // ADRESL
-#pragma memmap ADCON1_ADDR ADCON1_ADDR SFR 0x000 // ADCON1
// LIST
//----- Register Files------------------------------------------------------
-extern __data __at (INDF_ADDR) volatile char INDF;
+extern __sfr __at (INDF_ADDR) INDF;
extern __sfr __at (TMR0_ADDR) TMR0;
-extern __data __at (PCL_ADDR) volatile char PCL;
+extern __sfr __at (PCL_ADDR) PCL;
extern __sfr __at (STATUS_ADDR) STATUS;
extern __sfr __at (FSR_ADDR) FSR;
extern __sfr __at (PORTA_ADDR) PORTA;
//----- WDTCON Bits --------------------------------------------------------
-//----- CMCON0 Bits -------------------------------------------------------
+//----- COMCON0 Bits -------------------------------------------------------
-//----- CMCON1 Bits -------------------------------------------------------
+//----- COMCON1 Bits -------------------------------------------------------
//----- ADCON0 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
+
// ----- CCP1CON bits --------------------
typedef union {
struct {
#define ECCPAS2 ECCPAS_bits.ECCPAS2
#define ECCPASE ECCPAS_bits.ECCPASE
+// ----- 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 :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
+
// ----- INTCON bits --------------------
typedef union {
struct {
#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
+
// ----- OPTION_REG bits --------------------
typedef union {
struct {
unsigned char TUN2:1;
unsigned char TUN3:1;
unsigned char TUN4:1;
- unsigned char ANS5:1;
- unsigned char ANS6:1;
- unsigned char ANS7:1;
- };
- struct {
- unsigned char ANS0:1;
- unsigned char ANS1:1;
- unsigned char ANS2:1;
- unsigned char ANS3:1;
- unsigned char ANS4:1;
- unsigned char IOC5:1;
- unsigned char :1;
- unsigned char :1;
- };
- struct {
- unsigned char IOC0:1;
- unsigned char IOC1:1;
- unsigned char IOC2:1;
- unsigned char IOC3:1;
- unsigned char IOC4:1;
- unsigned char IOCA5:1;
- unsigned char :1;
- unsigned char :1;
- };
- struct {
- unsigned char IOCA0:1;
- unsigned char IOCA1:1;
- unsigned char IOCA2:1;
- unsigned char IOCA3:1;
- unsigned char IOCA4:1;
unsigned char :1;
unsigned char :1;
unsigned char :1;
extern volatile __OSCTUNE_bits_t __at(OSCTUNE_ADDR) OSCTUNE_bits;
#define TUN0 OSCTUNE_bits.TUN0
-#define ANS0 OSCTUNE_bits.ANS0
-#define IOC0 OSCTUNE_bits.IOC0
-#define IOCA0 OSCTUNE_bits.IOCA0
#define TUN1 OSCTUNE_bits.TUN1
-#define ANS1 OSCTUNE_bits.ANS1
-#define IOC1 OSCTUNE_bits.IOC1
-#define IOCA1 OSCTUNE_bits.IOCA1
#define TUN2 OSCTUNE_bits.TUN2
-#define ANS2 OSCTUNE_bits.ANS2
-#define IOC2 OSCTUNE_bits.IOC2
-#define IOCA2 OSCTUNE_bits.IOCA2
#define TUN3 OSCTUNE_bits.TUN3
-#define ANS3 OSCTUNE_bits.ANS3
-#define IOC3 OSCTUNE_bits.IOC3
-#define IOCA3 OSCTUNE_bits.IOCA3
#define TUN4 OSCTUNE_bits.TUN4
-#define ANS4 OSCTUNE_bits.ANS4
-#define IOC4 OSCTUNE_bits.IOC4
-#define IOCA4 OSCTUNE_bits.IOCA4
-#define ANS5 OSCTUNE_bits.ANS5
-#define IOC5 OSCTUNE_bits.IOC5
-#define IOCA5 OSCTUNE_bits.IOCA5
-#define ANS6 OSCTUNE_bits.ANS6
-#define ANS7 OSCTUNE_bits.ANS7
// ----- PCON bits --------------------
typedef union {
#define ADIF PIR1_bits.ADIF
#define EEIF PIR1_bits.EEIF
+// ----- 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
+
+// ----- 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
+
// ----- PWM1CON bits --------------------
typedef union {
struct {
#define TOUTPS2 T2CON_bits.TOUTPS2
#define TOUTPS3 T2CON_bits.TOUTPS3
+// ----- TRISA bits --------------------
+typedef union {
+ struct {
+ unsigned char TRISA0:1;
+ unsigned char TRISA1:1;
+ unsigned char TRISA2:1;
+ unsigned char TRISA3:1;
+ unsigned char TRISA4:1;
+ unsigned char TRISA5:1;
+ unsigned char :1;
+ unsigned char :1;
+ };
+} __TRISA_bits_t;
+extern volatile __TRISA_bits_t __at(TRISA_ADDR) TRISA_bits;
+
+#define TRISA0 TRISA_bits.TRISA0
+#define TRISA1 TRISA_bits.TRISA1
+#define TRISA2 TRISA_bits.TRISA2
+#define TRISA3 TRISA_bits.TRISA3
+#define TRISA4 TRISA_bits.TRISA4
+#define TRISA5 TRISA_bits.TRISA5
+
+// ----- TRISC bits --------------------
+typedef union {
+ struct {
+ unsigned char TRISC0:1;
+ unsigned char TRISC1:1;
+ unsigned char TRISC2:1;
+ unsigned char TRISC3:1;
+ unsigned char TRISC4:1;
+ unsigned char TRISC5:1;
+ unsigned char TRISC6:1;
+ unsigned char TRISC7:1;
+ };
+} __TRISC_bits_t;
+extern volatile __TRISC_bits_t __at(TRISC_ADDR) TRISC_bits;
+
+#define TRISC0 TRISC_bits.TRISC0
+#define TRISC1 TRISC_bits.TRISC1
+#define TRISC2 TRISC_bits.TRISC2
+#define TRISC3 TRISC_bits.TRISC3
+#define TRISC4 TRISC_bits.TRISC4
+#define TRISC5 TRISC_bits.TRISC5
+#define TRISC6 TRISC_bits.TRISC6
+#define TRISC7 TRISC_bits.TRISC7
+
// ----- VRCON bits --------------------
typedef union {
struct {
unsigned char VR1:1;
unsigned char VR2:1;
unsigned char VR3:1;
- unsigned char ADCS0:1;
- unsigned char VRR:1;
- unsigned char ADCS2:1;
- unsigned char VREN:1;
- };
- struct {
- unsigned char RD:1;
- unsigned char WR:1;
- unsigned char WREN:1;
- unsigned char WRERR:1;
- unsigned char :1;
- unsigned char ADCS1:1;
unsigned char :1;
+ unsigned char VRR:1;
unsigned char :1;
+ unsigned char VREN:1;
};
} __VRCON_bits_t;
extern volatile __VRCON_bits_t __at(VRCON_ADDR) VRCON_bits;
#define VR0 VRCON_bits.VR0
-#define RD VRCON_bits.RD
#define VR1 VRCON_bits.VR1
-#define WR VRCON_bits.WR
#define VR2 VRCON_bits.VR2
-#define WREN VRCON_bits.WREN
#define VR3 VRCON_bits.VR3
-#define WRERR VRCON_bits.WRERR
-#define ADCS0 VRCON_bits.ADCS0
#define VRR VRCON_bits.VRR
-#define ADCS1 VRCON_bits.ADCS1
-#define ADCS2 VRCON_bits.ADCS2
#define VREN VRCON_bits.VREN
// ----- WDTCON bits --------------------