* device/lib/pic/libdev/devices.txt: device list for mkall.sh
[fw/sdcc] / device / include / pic / pic16f690.h
index 5b854e278c6a120f01a45da28bdd304fbeb5c84a..08826eef7989fa5da5da1b0ccacd91512622df4a 100644 (file)
@@ -4,7 +4,7 @@
 //
 // This header file was automatically generated by:
 //
-//     inc2h.pl V1.6
+//     inc2h.pl V4514
 //
 //     Copyright (c) 2002, Kevin L. Pauba, All Rights Reserved
 //
@@ -467,6 +467,49 @@ extern volatile __ADCON0_bits_t __at(ADCON0_ADDR) 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
+
 // ----- BAUDCTL bits --------------------
 typedef union {
   struct {
@@ -475,20 +518,10 @@ typedef union {
     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;
 
@@ -496,10 +529,7 @@ 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
 
 // ----- CCP1CON bits --------------------
@@ -577,74 +607,20 @@ typedef union {
   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 STRSYNC:1;
-    unsigned char C1SEN:1;
-    unsigned char ANS6:1;
-    unsigned char ANS7:1;
-  };
-  struct {
-    unsigned char RD:1;
-    unsigned char WR:1;
-    unsigned char STRC:1;
-    unsigned char STRD:1;
-    unsigned char C2REN:1;
     unsigned char :1;
-    unsigned char SR0:1;
-    unsigned char EEPGD:1;
-  };
-  struct {
-    unsigned char STRA:1;
-    unsigned char STRB:1;
-    unsigned char PULSR:1;
-    unsigned char PULSS: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 STRA                 CM2CON1_bits.STRA
 #define T1GSS                CM2CON1_bits.T1GSS
-#define ANS1                 CM2CON1_bits.ANS1
-#define WR                   CM2CON1_bits.WR
-#define STRB                 CM2CON1_bits.STRB
-#define ANS2                 CM2CON1_bits.ANS2
-#define WREN                 CM2CON1_bits.WREN
-#define STRC                 CM2CON1_bits.STRC
-#define PULSR                CM2CON1_bits.PULSR
-#define ANS3                 CM2CON1_bits.ANS3
-#define WRERR                CM2CON1_bits.WRERR
-#define STRD                 CM2CON1_bits.STRD
-#define PULSS                CM2CON1_bits.PULSS
-#define ANS4                 CM2CON1_bits.ANS4
-#define STRSYNC              CM2CON1_bits.STRSYNC
-#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
 
 // ----- ECCPAS bits --------------------
 typedef union {
@@ -670,6 +646,27 @@ extern volatile __ECCPAS_bits_t __at(ECCPAS_ADDR) ECCPAS_bits;
 #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 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 {
   struct {
@@ -694,6 +691,70 @@ extern volatile __INTCON_bits_t __at(INTCON_ADDR) INTCON_bits;
 #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 {
@@ -892,6 +953,97 @@ extern volatile __PIR2_bits_t __at(PIR2_ADDR) PIR2_bits;
 #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
+
+// ----- PSTRCON bits --------------------
+typedef union {
+  struct {
+    unsigned char STRA:1;
+    unsigned char STRB:1;
+    unsigned char STRC:1;
+    unsigned char STRD:1;
+    unsigned char STRSYNC:1;
+    unsigned char :1;
+    unsigned char :1;
+    unsigned char :1;
+  };
+} __PSTRCON_bits_t;
+extern volatile __PSTRCON_bits_t __at(PSTRCON_ADDR) PSTRCON_bits;
+
+#define STRA                 PSTRCON_bits.STRA
+#define STRB                 PSTRCON_bits.STRB
+#define STRC                 PSTRCON_bits.STRC
+#define STRD                 PSTRCON_bits.STRD
+#define STRSYNC              PSTRCON_bits.STRSYNC
+
 // ----- PWM1CON bits --------------------
 typedef union {
   struct {
@@ -988,6 +1140,28 @@ extern volatile __SPBRGH_bits_t __at(SPBRGH_ADDR) SPBRGH_bits;
 #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 {
@@ -1024,62 +1198,15 @@ typedef union {
     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
 
@@ -1289,38 +1416,45 @@ extern volatile __WDTCON_bits_t __at(WDTCON_ADDR) WDTCON_bits;
 #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