struct / union in initializer, RFE #901.
[sdcc.git] / sdcc / device / non-free / lib / pic14 / libdev / pic16f873.c
blob79a7850bacf0f10747b44bd0f3778a72f6e6ea9d
1 /*
2 * This definitions of the PIC16F873 MCU.
4 * This file is part of the GNU PIC library for SDCC, originally
5 * created by Molnar Karoly <molnarkaroly@users.sf.net> 2016.
7 * This file is generated automatically by the cinc2h.pl, 2016-04-13 17:23:00 UTC.
9 * SDCC is licensed under the GNU Public license (GPL) v2. Note that
10 * this license covers the code to the compiler and other executables,
11 * but explicitly does not cover any code or objects generated by sdcc.
13 * For pic device libraries and header files which are derived from
14 * Microchip header (.inc) and linker script (.lkr) files Microchip
15 * requires that "The header files should state that they are only to be
16 * used with authentic Microchip devices" which makes them incompatible
17 * with the GPL. Pic device libraries and header files are located at
18 * non-free/lib and non-free/include directories respectively.
19 * Sdcc should be run with the --use-non-free command line option in
20 * order to include non-free header files and libraries.
22 * See http://sdcc.sourceforge.net/ for the latest information on sdcc.
25 #include <pic16f873.h>
27 //==============================================================================
29 __at(0x0000) __sfr INDF;
31 __at(0x0001) __sfr TMR0;
33 __at(0x0002) __sfr PCL;
35 __at(0x0003) __sfr STATUS;
36 __at(0x0003) volatile __STATUSbits_t STATUSbits;
38 __at(0x0004) __sfr FSR;
40 __at(0x0005) __sfr PORTA;
41 __at(0x0005) volatile __PORTAbits_t PORTAbits;
43 __at(0x0006) __sfr PORTB;
44 __at(0x0006) volatile __PORTBbits_t PORTBbits;
46 __at(0x0007) __sfr PORTC;
47 __at(0x0007) volatile __PORTCbits_t PORTCbits;
49 __at(0x000A) __sfr PCLATH;
51 __at(0x000B) __sfr INTCON;
52 __at(0x000B) volatile __INTCONbits_t INTCONbits;
54 __at(0x000C) __sfr PIR1;
55 __at(0x000C) volatile __PIR1bits_t PIR1bits;
57 __at(0x000D) __sfr PIR2;
58 __at(0x000D) volatile __PIR2bits_t PIR2bits;
60 __at(0x000E) __sfr TMR1;
62 __at(0x000E) __sfr TMR1L;
64 __at(0x000F) __sfr TMR1H;
66 __at(0x0010) __sfr T1CON;
67 __at(0x0010) volatile __T1CONbits_t T1CONbits;
69 __at(0x0011) __sfr TMR2;
71 __at(0x0012) __sfr T2CON;
72 __at(0x0012) volatile __T2CONbits_t T2CONbits;
74 __at(0x0013) __sfr SSPBUF;
76 __at(0x0014) __sfr SSPCON;
77 __at(0x0014) volatile __SSPCONbits_t SSPCONbits;
79 __at(0x0015) __sfr CCPR1;
81 __at(0x0015) __sfr CCPR1L;
83 __at(0x0016) __sfr CCPR1H;
85 __at(0x0017) __sfr CCP1CON;
86 __at(0x0017) volatile __CCP1CONbits_t CCP1CONbits;
88 __at(0x0018) __sfr RCSTA;
89 __at(0x0018) volatile __RCSTAbits_t RCSTAbits;
91 __at(0x0019) __sfr TXREG;
93 __at(0x001A) __sfr RCREG;
95 __at(0x001B) __sfr CCPR2;
97 __at(0x001B) __sfr CCPR2L;
99 __at(0x001C) __sfr CCPR2H;
101 __at(0x001D) __sfr CCP2CON;
102 __at(0x001D) volatile __CCP2CONbits_t CCP2CONbits;
104 __at(0x001E) __sfr ADRESH;
106 __at(0x001F) __sfr ADCON0;
107 __at(0x001F) volatile __ADCON0bits_t ADCON0bits;
109 __at(0x0081) __sfr OPTION_REG;
110 __at(0x0081) volatile __OPTION_REGbits_t OPTION_REGbits;
112 __at(0x0085) __sfr TRISA;
113 __at(0x0085) volatile __TRISAbits_t TRISAbits;
115 __at(0x0086) __sfr TRISB;
116 __at(0x0086) volatile __TRISBbits_t TRISBbits;
118 __at(0x0087) __sfr TRISC;
119 __at(0x0087) volatile __TRISCbits_t TRISCbits;
121 __at(0x008C) __sfr PIE1;
122 __at(0x008C) volatile __PIE1bits_t PIE1bits;
124 __at(0x008D) __sfr PIE2;
125 __at(0x008D) volatile __PIE2bits_t PIE2bits;
127 __at(0x008E) __sfr PCON;
128 __at(0x008E) volatile __PCONbits_t PCONbits;
130 __at(0x0091) __sfr SSPCON2;
131 __at(0x0091) volatile __SSPCON2bits_t SSPCON2bits;
133 __at(0x0092) __sfr PR2;
135 __at(0x0093) __sfr SSPADD;
137 __at(0x0094) __sfr SSPSTAT;
138 __at(0x0094) volatile __SSPSTATbits_t SSPSTATbits;
140 __at(0x0098) __sfr TXSTA;
141 __at(0x0098) volatile __TXSTAbits_t TXSTAbits;
143 __at(0x0099) __sfr SPBRG;
145 __at(0x009E) __sfr ADRESL;
147 __at(0x009F) __sfr ADCON1;
148 __at(0x009F) volatile __ADCON1bits_t ADCON1bits;
150 __at(0x010C) __sfr EEDATA;
152 __at(0x010D) __sfr EEADR;
154 __at(0x010E) __sfr EEDATH;
156 __at(0x010F) __sfr EEADRH;
158 __at(0x018C) __sfr EECON1;
159 __at(0x018C) volatile __EECON1bits_t EECON1bits;
161 __at(0x018D) __sfr EECON2;