4 # 44 "/opt/microchip/xc8/v1.12/include/pic12f1822.h"
5 extern volatile unsigned char INDF0 @ 0x000;
15 extern volatile INDF0bits_t INDF0bits @ 0x000;
18 extern volatile unsigned char INDF1 @ 0x001;
28 extern volatile INDF1bits_t INDF1bits @ 0x001;
31 extern volatile unsigned char PCL @ 0x002;
41 extern volatile PCLbits_t PCLbits @ 0x002;
44 extern volatile unsigned char STATUS @ 0x003;
46 asm("STATUS equ 03h");
65 extern volatile STATUSbits_t STATUSbits @ 0x003;
68 extern volatile unsigned short FSR0 @ 0x004;
71 extern volatile unsigned char FSR0L @ 0x004;
81 extern volatile FSR0Lbits_t FSR0Lbits @ 0x004;
84 extern volatile unsigned char FSR0H @ 0x005;
94 extern volatile FSR0Hbits_t FSR0Hbits @ 0x005;
97 extern volatile unsigned short FSR1 @ 0x006;
100 extern volatile unsigned char FSR1L @ 0x006;
102 asm("FSR1L equ 06h");
110 extern volatile FSR1Lbits_t FSR1Lbits @ 0x006;
113 extern volatile unsigned char FSR1H @ 0x007;
115 asm("FSR1H equ 07h");
123 extern volatile FSR1Hbits_t FSR1Hbits @ 0x007;
126 extern volatile unsigned char BSR @ 0x008;
143 extern volatile BSRbits_t BSRbits @ 0x008;
146 extern volatile unsigned char WREG @ 0x009;
156 extern volatile WREGbits_t WREGbits @ 0x009;
159 extern volatile unsigned char PCLATH @ 0x00A;
161 asm("PCLATH equ 0Ah");
169 extern volatile PCLATHbits_t PCLATHbits @ 0x00A;
172 extern volatile unsigned char INTCON @ 0x00B;
174 asm("INTCON equ 0Bh");
195 extern volatile INTCONbits_t INTCONbits @ 0x00B;
198 extern volatile unsigned char PORTA @ 0x00C;
200 asm("PORTA equ 0Ch");
278 extern volatile PORTAbits_t PORTAbits @ 0x00C;
281 extern volatile unsigned char PIR1 @ 0x011;
283 asm("PIR1 equ 011h");
298 extern volatile PIR1bits_t PIR1bits @ 0x011;
301 extern volatile unsigned char PIR2 @ 0x012;
303 asm("PIR2 equ 012h");
316 extern volatile PIR2bits_t PIR2bits @ 0x012;
319 extern volatile unsigned char TMR0 @ 0x015;
321 asm("TMR0 equ 015h");
329 extern volatile TMR0bits_t TMR0bits @ 0x015;
332 extern volatile unsigned short TMR1 @ 0x016;
334 asm("TMR1 equ 016h");
338 extern volatile unsigned char TMR1L @ 0x016;
340 asm("TMR1L equ 016h");
348 extern volatile TMR1Lbits_t TMR1Lbits @ 0x016;
351 extern volatile unsigned char TMR1H @ 0x017;
353 asm("TMR1H equ 017h");
361 extern volatile TMR1Hbits_t TMR1Hbits @ 0x017;
364 extern volatile unsigned char T1CON @ 0x018;
366 asm("T1CON equ 018h");
386 extern volatile T1CONbits_t T1CONbits @ 0x018;
389 extern volatile unsigned char T1GCON @ 0x019;
391 asm("T1GCON equ 019h");
399 unsigned T1GGO_nDONE :1;
411 extern volatile T1GCONbits_t T1GCONbits @ 0x019;
414 extern volatile unsigned char TMR2 @ 0x01A;
416 asm("TMR2 equ 01Ah");
424 extern volatile TMR2bits_t TMR2bits @ 0x01A;
427 extern volatile unsigned char PR2 @ 0x01B;
437 extern volatile PR2bits_t PR2bits @ 0x01B;
440 extern volatile unsigned char T2CON @ 0x01C;
442 asm("T2CON equ 01Ch");
450 unsigned T2OUTPS0 :1;
451 unsigned T2OUTPS1 :1;
452 unsigned T2OUTPS2 :1;
453 unsigned T2OUTPS3 :1;
461 extern volatile T2CONbits_t T2CONbits @ 0x01C;
464 extern volatile unsigned char CPSCON0 @ 0x01E;
466 asm("CPSCON0 equ 01Eh");
484 extern volatile CPSCON0bits_t CPSCON0bits @ 0x01E;
487 extern volatile unsigned char CPSCON1 @ 0x01F;
489 asm("CPSCON1 equ 01Fh");
501 extern volatile CPSCON1bits_t CPSCON1bits @ 0x01F;
504 extern volatile unsigned char TRISA @ 0x08C;
506 asm("TRISA equ 08Ch");
519 extern volatile TRISAbits_t TRISAbits @ 0x08C;
522 extern volatile unsigned char PIE1 @ 0x091;
524 asm("PIE1 equ 091h");
539 extern volatile PIE1bits_t PIE1bits @ 0x091;
542 extern volatile unsigned char PIE2 @ 0x092;
544 asm("PIE2 equ 092h");
557 extern volatile PIE2bits_t PIE2bits @ 0x092;
560 extern volatile unsigned char OPTION_REG @ 0x095;
562 asm("OPTION_REG equ 095h");
583 extern volatile OPTION_REGbits_t OPTION_REGbits @ 0x095;
586 extern volatile unsigned char PCON @ 0x096;
588 asm("PCON equ 096h");
602 extern volatile PCONbits_t PCONbits @ 0x096;
605 extern volatile unsigned char WDTCON @ 0x097;
607 asm("WDTCON equ 097h");
624 extern volatile WDTCONbits_t WDTCONbits @ 0x097;
627 extern volatile unsigned char OSCTUNE @ 0x098;
629 asm("OSCTUNE equ 098h");
645 extern volatile OSCTUNEbits_t OSCTUNEbits @ 0x098;
648 extern volatile unsigned char OSCCON @ 0x099;
650 asm("OSCCON equ 099h");
670 extern volatile OSCCONbits_t OSCCONbits @ 0x099;
673 extern volatile unsigned char OSCSTAT @ 0x09A;
675 asm("OSCSTAT equ 09Ah");
690 extern volatile OSCSTATbits_t OSCSTATbits @ 0x09A;
693 extern volatile unsigned short ADRES @ 0x09B;
695 asm("ADRES equ 09Bh");
699 extern volatile unsigned char ADRESL @ 0x09B;
701 asm("ADRESL equ 09Bh");
709 extern volatile ADRESLbits_t ADRESLbits @ 0x09B;
712 extern volatile unsigned char ADRESH @ 0x09C;
714 asm("ADRESH equ 09Ch");
722 extern volatile ADRESHbits_t ADRESHbits @ 0x09C;
725 extern volatile unsigned char ADCON0 @ 0x09D;
727 asm("ADCON0 equ 09Dh");
733 unsigned GO_nDONE :1;
754 extern volatile ADCON0bits_t ADCON0bits @ 0x09D;
757 extern volatile unsigned char ADCON1 @ 0x09E;
759 asm("ADCON1 equ 09Eh");
778 extern volatile ADCON1bits_t ADCON1bits @ 0x09E;
781 extern volatile unsigned char LATA @ 0x10C;
783 asm("LATA equ 010Ch");
796 extern volatile LATAbits_t LATAbits @ 0x10C;
799 extern volatile unsigned char CM1CON0 @ 0x111;
801 asm("CM1CON0 equ 0111h");
816 extern volatile CM1CON0bits_t CM1CON0bits @ 0x111;
819 extern volatile unsigned char CM1CON1 @ 0x112;
821 asm("CM1CON1 equ 0112h");
838 extern volatile CM1CON1bits_t CM1CON1bits @ 0x112;
841 extern volatile unsigned char CMOUT @ 0x115;
843 asm("CMOUT equ 0115h");
851 extern volatile CMOUTbits_t CMOUTbits @ 0x115;
854 extern volatile unsigned char BORCON @ 0x116;
856 asm("BORCON equ 0116h");
866 extern volatile BORCONbits_t BORCONbits @ 0x116;
869 extern volatile unsigned char FVRCON @ 0x117;
871 asm("FVRCON equ 0117h");
890 extern volatile FVRCONbits_t FVRCONbits @ 0x117;
893 extern volatile unsigned char DACCON0 @ 0x118;
895 asm("DACCON0 equ 0118h");
913 extern volatile DACCON0bits_t DACCON0bits @ 0x118;
916 extern volatile unsigned char DACCON1 @ 0x119;
918 asm("DACCON1 equ 0119h");
933 extern volatile DACCON1bits_t DACCON1bits @ 0x119;
936 extern volatile unsigned char SRCON0 @ 0x11A;
938 asm("SRCON0 equ 011Ah");
957 extern volatile SRCON0bits_t SRCON0bits @ 0x11A;
960 extern volatile unsigned char SRCON1 @ 0x11B;
962 asm("SRCON1 equ 011Bh");
977 extern volatile SRCON1bits_t SRCON1bits @ 0x11B;
980 extern volatile unsigned char APFCON @ 0x11D;
982 asm("APFCON equ 011Dh");
985 extern volatile unsigned char APFCON0 @ 0x11D;
987 asm("APFCON0 equ 011Dh");
1004 unsigned SDO1SEL :1;
1007 extern volatile APFCONbits_t APFCONbits @ 0x11D;
1012 unsigned CCP1SEL :1;
1014 unsigned TXCKSEL :1;
1019 unsigned RXDTSEL :1;
1024 unsigned SDO1SEL :1;
1027 extern volatile APFCON0bits_t APFCON0bits @ 0x11D;
1030 extern volatile unsigned char ANSELA @ 0x18C;
1032 asm("ANSELA equ 018Ch");
1047 extern volatile ANSELAbits_t ANSELAbits @ 0x18C;
1050 extern volatile unsigned short EEADR @ 0x191;
1052 asm("EEADR equ 0191h");
1056 extern volatile unsigned char EEADRL @ 0x191;
1058 asm("EEADRL equ 0191h");
1066 extern volatile EEADRLbits_t EEADRLbits @ 0x191;
1069 extern volatile unsigned char EEADRH @ 0x192;
1071 asm("EEADRH equ 0192h");
1079 extern volatile EEADRHbits_t EEADRHbits @ 0x192;
1082 extern volatile unsigned short EEDAT @ 0x193;
1084 asm("EEDAT equ 0193h");
1088 extern volatile unsigned char EEDATL @ 0x193;
1090 asm("EEDATL equ 0193h");
1093 extern volatile unsigned char EEDATA @ 0x193;
1095 asm("EEDATA equ 0193h");
1103 extern volatile EEDATLbits_t EEDATLbits @ 0x193;
1111 extern volatile EEDATAbits_t EEDATAbits @ 0x193;
1114 extern volatile unsigned char EEDATH @ 0x194;
1116 asm("EEDATH equ 0194h");
1124 extern volatile EEDATHbits_t EEDATHbits @ 0x194;
1127 extern volatile unsigned char EECON1 @ 0x195;
1129 asm("EECON1 equ 0195h");
1144 extern volatile EECON1bits_t EECON1bits @ 0x195;
1147 extern volatile unsigned char EECON2 @ 0x196;
1149 asm("EECON2 equ 0196h");
1157 extern volatile EECON2bits_t EECON2bits @ 0x196;
1160 extern volatile unsigned char RCREG @ 0x199;
1162 asm("RCREG equ 0199h");
1170 extern volatile RCREGbits_t RCREGbits @ 0x199;
1173 extern volatile unsigned char TXREG @ 0x19A;
1175 asm("TXREG equ 019Ah");
1183 extern volatile TXREGbits_t TXREGbits @ 0x19A;
1186 extern volatile unsigned char SPBRGL @ 0x19B;
1188 asm("SPBRGL equ 019Bh");
1191 extern volatile unsigned char SPBRG @ 0x19B;
1193 asm("SPBRG equ 019Bh");
1201 extern volatile SPBRGLbits_t SPBRGLbits @ 0x19B;
1209 extern volatile SPBRGbits_t SPBRGbits @ 0x19B;
1212 extern volatile unsigned char SPBRGH @ 0x19C;
1214 asm("SPBRGH equ 019Ch");
1222 extern volatile SPBRGHbits_t SPBRGHbits @ 0x19C;
1225 extern volatile unsigned char RCSTA @ 0x19D;
1227 asm("RCSTA equ 019Dh");
1242 extern volatile RCSTAbits_t RCSTAbits @ 0x19D;
1245 extern volatile unsigned char TXSTA @ 0x19E;
1247 asm("TXSTA equ 019Eh");
1262 extern volatile TXSTAbits_t TXSTAbits @ 0x19E;
1265 extern volatile unsigned char BAUDCON @ 0x19F;
1267 asm("BAUDCON equ 019Fh");
1282 extern volatile BAUDCONbits_t BAUDCONbits @ 0x19F;
1285 extern volatile unsigned char WPUA @ 0x20C;
1287 asm("WPUA equ 020Ch");
1303 extern volatile WPUAbits_t WPUAbits @ 0x20C;
1306 extern volatile unsigned char SSP1BUF @ 0x211;
1308 asm("SSP1BUF equ 0211h");
1311 extern volatile unsigned char SSPBUF @ 0x211;
1313 asm("SSPBUF equ 0211h");
1321 extern volatile SSP1BUFbits_t SSP1BUFbits @ 0x211;
1329 extern volatile SSPBUFbits_t SSPBUFbits @ 0x211;
1332 extern volatile unsigned char SSP1ADD @ 0x212;
1334 asm("SSP1ADD equ 0212h");
1337 extern volatile unsigned char SSPADD @ 0x212;
1339 asm("SSPADD equ 0212h");
1347 extern volatile SSP1ADDbits_t SSP1ADDbits @ 0x212;
1355 extern volatile SSPADDbits_t SSPADDbits @ 0x212;
1358 extern volatile unsigned char SSP1MSK @ 0x213;
1360 asm("SSP1MSK equ 0213h");
1363 extern volatile unsigned char SSPMSK @ 0x213;
1365 asm("SSPMSK equ 0213h");
1373 extern volatile SSP1MSKbits_t SSP1MSKbits @ 0x213;
1381 extern volatile SSPMSKbits_t SSPMSKbits @ 0x213;
1384 extern volatile unsigned char SSP1STAT @ 0x214;
1386 asm("SSP1STAT equ 0214h");
1389 extern volatile unsigned char SSPSTAT @ 0x214;
1391 asm("SSPSTAT equ 0214h");
1406 extern volatile SSP1STATbits_t SSP1STATbits @ 0x214;
1421 extern volatile SSPSTATbits_t SSPSTATbits @ 0x214;
1424 extern volatile unsigned char SSP1CON1 @ 0x215;
1426 asm("SSP1CON1 equ 0215h");
1429 extern volatile unsigned char SSPCON1 @ 0x215;
1431 asm("SSPCON1 equ 0215h");
1433 extern volatile unsigned char SSPCON @ 0x215;
1435 asm("SSPCON equ 0215h");
1453 extern volatile SSP1CON1bits_t SSP1CON1bits @ 0x215;
1471 extern volatile SSPCON1bits_t SSPCON1bits @ 0x215;
1489 extern volatile SSPCONbits_t SSPCONbits @ 0x215;
1492 extern volatile unsigned char SSP1CON2 @ 0x216;
1494 asm("SSP1CON2 equ 0216h");
1497 extern volatile unsigned char SSPCON2 @ 0x216;
1499 asm("SSPCON2 equ 0216h");
1510 unsigned ACKSTAT :1;
1514 extern volatile SSP1CON2bits_t SSP1CON2bits @ 0x216;
1525 unsigned ACKSTAT :1;
1529 extern volatile SSPCON2bits_t SSPCON2bits @ 0x216;
1532 extern volatile unsigned char SSP1CON3 @ 0x217;
1534 asm("SSP1CON3 equ 0217h");
1537 extern volatile unsigned char SSPCON3 @ 0x217;
1539 asm("SSPCON3 equ 0217h");
1554 extern volatile SSP1CON3bits_t SSP1CON3bits @ 0x217;
1569 extern volatile SSPCON3bits_t SSPCON3bits @ 0x217;
1572 extern volatile unsigned char CCPR1L @ 0x291;
1574 asm("CCPR1L equ 0291h");
1582 extern volatile CCPR1Lbits_t CCPR1Lbits @ 0x291;
1585 extern volatile unsigned char CCPR1H @ 0x292;
1587 asm("CCPR1H equ 0292h");
1595 extern volatile CCPR1Hbits_t CCPR1Hbits @ 0x292;
1598 extern volatile unsigned char CCP1CON @ 0x293;
1600 asm("CCP1CON equ 0293h");
1620 extern volatile CCP1CONbits_t CCP1CONbits @ 0x293;
1623 extern volatile unsigned char PWM1CON @ 0x294;
1625 asm("PWM1CON equ 0294h");
1643 extern volatile PWM1CONbits_t PWM1CONbits @ 0x294;
1646 extern volatile unsigned char CCP1AS @ 0x295;
1648 asm("CCP1AS equ 0295h");
1651 extern volatile unsigned char ECCP1AS @ 0x295;
1653 asm("ECCP1AS equ 0295h");
1658 unsigned PSS1BD0 :1;
1659 unsigned PSS1BD1 :1;
1660 unsigned PSS1AC0 :1;
1661 unsigned PSS1AC1 :1;
1662 unsigned CCP1AS0 :1;
1663 unsigned CCP1AS1 :1;
1664 unsigned CCP1AS2 :1;
1665 unsigned CCP1ASE :1;
1673 extern volatile CCP1ASbits_t CCP1ASbits @ 0x295;
1678 unsigned PSS1BD0 :1;
1679 unsigned PSS1BD1 :1;
1680 unsigned PSS1AC0 :1;
1681 unsigned PSS1AC1 :1;
1682 unsigned CCP1AS0 :1;
1683 unsigned CCP1AS1 :1;
1684 unsigned CCP1AS2 :1;
1685 unsigned CCP1ASE :1;
1693 extern volatile ECCP1ASbits_t ECCP1ASbits @ 0x295;
1696 extern volatile unsigned char PSTR1CON @ 0x296;
1698 asm("PSTR1CON equ 0296h");
1707 unsigned STR1SYNC :1;
1710 extern volatile PSTR1CONbits_t PSTR1CONbits @ 0x296;
1713 extern volatile unsigned char IOCAP @ 0x391;
1715 asm("IOCAP equ 0391h");
1731 extern volatile IOCAPbits_t IOCAPbits @ 0x391;
1734 extern volatile unsigned char IOCAN @ 0x392;
1736 asm("IOCAN equ 0392h");
1752 extern volatile IOCANbits_t IOCANbits @ 0x392;
1755 extern volatile unsigned char IOCAF @ 0x393;
1757 asm("IOCAF equ 0393h");
1773 extern volatile IOCAFbits_t IOCAFbits @ 0x393;
1776 extern volatile unsigned char CLKRCON @ 0x39A;
1778 asm("CLKRCON equ 039Ah");
1783 unsigned CLKRDIV0 :1;
1784 unsigned CLKRDIV1 :1;
1785 unsigned CLKRDIV2 :1;
1786 unsigned CLKRDC0 :1;
1787 unsigned CLKRDC1 :1;
1788 unsigned CLKRSLR :1;
1793 unsigned CLKRDIV :3;
1797 extern volatile CLKRCONbits_t CLKRCONbits @ 0x39A;
1800 extern volatile unsigned char MDCON @ 0x39C;
1802 asm("MDCON equ 039Ch");
1816 extern volatile MDCONbits_t MDCONbits @ 0x39C;
1819 extern volatile unsigned char MDSRC @ 0x39D;
1821 asm("MDSRC equ 039Dh");
1831 unsigned MDMSODIS :1;
1837 extern volatile MDSRCbits_t MDSRCbits @ 0x39D;
1840 extern volatile unsigned char MDCARL @ 0x39E;
1842 asm("MDCARL equ 039Eh");
1852 unsigned MDCLSYNC :1;
1853 unsigned MDCLPOL :1;
1854 unsigned MDCLODIS :1;
1860 extern volatile MDCARLbits_t MDCARLbits @ 0x39E;
1863 extern volatile unsigned char MDCARH @ 0x39F;
1865 asm("MDCARH equ 039Fh");
1875 unsigned MDCHSYNC :1;
1876 unsigned MDCHPOL :1;
1877 unsigned MDCHODIS :1;
1883 extern volatile MDCARHbits_t MDCARHbits @ 0x39F;
1886 extern volatile unsigned char STATUS_SHAD @ 0xFE4;
1888 asm("STATUS_SHAD equ 0FE4h");
1894 unsigned DC_SHAD :1;
1897 } STATUS_SHADbits_t;
1898 extern volatile STATUS_SHADbits_t STATUS_SHADbits @ 0xFE4;
1901 extern volatile unsigned char WREG_SHAD @ 0xFE5;
1903 asm("WREG_SHAD equ 0FE5h");
1908 unsigned WREG_SHAD :8;
1911 extern volatile WREG_SHADbits_t WREG_SHADbits @ 0xFE5;
1914 extern volatile unsigned char BSR_SHAD @ 0xFE6;
1916 asm("BSR_SHAD equ 0FE6h");
1921 unsigned BSR_SHAD :5;
1924 extern volatile BSR_SHADbits_t BSR_SHADbits @ 0xFE6;
1927 extern volatile unsigned char PCLATH_SHAD @ 0xFE7;
1929 asm("PCLATH_SHAD equ 0FE7h");
1934 unsigned PCLATH_SHAD :7;
1936 } PCLATH_SHADbits_t;
1937 extern volatile PCLATH_SHADbits_t PCLATH_SHADbits @ 0xFE7;
1940 extern volatile unsigned char FSR0L_SHAD @ 0xFE8;
1942 asm("FSR0L_SHAD equ 0FE8h");
1947 unsigned FSR0L_SHAD :8;
1950 extern volatile FSR0L_SHADbits_t FSR0L_SHADbits @ 0xFE8;
1953 extern volatile unsigned char FSR0H_SHAD @ 0xFE9;
1955 asm("FSR0H_SHAD equ 0FE9h");
1960 unsigned FSR0H_SHAD :8;
1963 extern volatile FSR0H_SHADbits_t FSR0H_SHADbits @ 0xFE9;
1966 extern volatile unsigned char FSR1L_SHAD @ 0xFEA;
1968 asm("FSR1L_SHAD equ 0FEAh");
1973 unsigned FSR1L_SHAD :8;
1976 extern volatile FSR1L_SHADbits_t FSR1L_SHADbits @ 0xFEA;
1979 extern volatile unsigned char FSR1H_SHAD @ 0xFEB;
1981 asm("FSR1H_SHAD equ 0FEBh");
1986 unsigned FSR1H_SHAD :8;
1989 extern volatile FSR1H_SHADbits_t FSR1H_SHADbits @ 0xFEB;
1992 extern volatile unsigned char STKPTR @ 0xFED;
1994 asm("STKPTR equ 0FEDh");
2002 extern volatile STKPTRbits_t STKPTRbits @ 0xFED;
2005 extern volatile unsigned char TOSL @ 0xFEE;
2007 asm("TOSL equ 0FEEh");
2015 extern volatile TOSLbits_t TOSLbits @ 0xFEE;
2018 extern volatile unsigned char TOSH @ 0xFEF;
2020 asm("TOSH equ 0FEFh");
2028 extern volatile TOSHbits_t TOSHbits @ 0xFEF;
2031 extern volatile __bit ABDEN @ (((unsigned) &BAUDCON)*8) + 0;
2033 extern volatile __bit ABDOVF @ (((unsigned) &BAUDCON)*8) + 7;
2035 extern volatile __bit ACKDT @ (((unsigned) &SSP1CON2)*8) + 5;
2037 extern volatile __bit ACKEN @ (((unsigned) &SSP1CON2)*8) + 4;
2039 extern volatile __bit ACKSTAT @ (((unsigned) &SSP1CON2)*8) + 6;
2041 extern volatile __bit ACKTIM @ (((unsigned) &SSP1CON3)*8) + 7;
2043 extern volatile __bit ADCS0 @ (((unsigned) &ADCON1)*8) + 4;
2045 extern volatile __bit ADCS1 @ (((unsigned) &ADCON1)*8) + 5;
2047 extern volatile __bit ADCS2 @ (((unsigned) &ADCON1)*8) + 6;
2049 extern volatile __bit ADDEN @ (((unsigned) &RCSTA)*8) + 3;
2051 extern volatile __bit ADFM @ (((unsigned) &ADCON1)*8) + 7;
2053 extern volatile __bit ADFVR0 @ (((unsigned) &FVRCON)*8) + 0;
2055 extern volatile __bit ADFVR1 @ (((unsigned) &FVRCON)*8) + 1;
2057 extern volatile __bit ADGO @ (((unsigned) &ADCON0)*8) + 1;
2059 extern volatile __bit ADIE @ (((unsigned) &PIE1)*8) + 6;
2061 extern volatile __bit ADIF @ (((unsigned) &PIR1)*8) + 6;
2063 extern volatile __bit ADON @ (((unsigned) &ADCON0)*8) + 0;
2065 extern volatile __bit ADPREF0 @ (((unsigned) &ADCON1)*8) + 0;
2067 extern volatile __bit ADPREF1 @ (((unsigned) &ADCON1)*8) + 1;
2069 extern volatile __bit AHEN @ (((unsigned) &SSP1CON3)*8) + 1;
2071 extern volatile __bit AN0 @ (((unsigned) &PORTA)*8) + 0;
2073 extern volatile __bit AN1 @ (((unsigned) &PORTA)*8) + 1;
2075 extern volatile __bit AN2 @ (((unsigned) &PORTA)*8) + 2;
2077 extern volatile __bit AN3 @ (((unsigned) &PORTA)*8) + 4;
2079 extern volatile __bit ANSA0 @ (((unsigned) &ANSELA)*8) + 0;
2081 extern volatile __bit ANSA1 @ (((unsigned) &ANSELA)*8) + 1;
2083 extern volatile __bit ANSA2 @ (((unsigned) &ANSELA)*8) + 2;
2085 extern volatile __bit ANSA4 @ (((unsigned) &ANSELA)*8) + 4;
2087 extern volatile __bit BCL1IE @ (((unsigned) &PIE2)*8) + 3;
2089 extern volatile __bit BCL1IF @ (((unsigned) &PIR2)*8) + 3;
2091 extern volatile __bit BF @ (((unsigned) &SSP1STAT)*8) + 0;
2093 extern volatile __bit BOEN @ (((unsigned) &SSP1CON3)*8) + 4;
2095 extern volatile __bit BORRDY @ (((unsigned) &BORCON)*8) + 0;
2097 extern volatile __bit BRG16 @ (((unsigned) &BAUDCON)*8) + 3;
2099 extern volatile __bit BRGH @ (((unsigned) &TXSTA)*8) + 2;
2101 extern volatile __bit BSR0 @ (((unsigned) &BSR)*8) + 0;
2103 extern volatile __bit BSR1 @ (((unsigned) &BSR)*8) + 1;
2105 extern volatile __bit BSR2 @ (((unsigned) &BSR)*8) + 2;
2107 extern volatile __bit BSR3 @ (((unsigned) &BSR)*8) + 3;
2109 extern volatile __bit BSR4 @ (((unsigned) &BSR)*8) + 4;
2111 extern volatile __bit C1HYS @ (((unsigned) &CM1CON0)*8) + 1;
2113 extern volatile __bit C1IE @ (((unsigned) &PIE2)*8) + 5;
2115 extern volatile __bit C1IF @ (((unsigned) &PIR2)*8) + 5;
2117 extern volatile __bit C1IN0N @ (((unsigned) &PORTA)*8) + 1;
2119 extern volatile __bit C1IN1N @ (((unsigned) &PORTA)*8) + 4;
2121 extern volatile __bit C1INP @ (((unsigned) &PORTA)*8) + 0;
2123 extern volatile __bit C1INTN @ (((unsigned) &CM1CON1)*8) + 6;
2125 extern volatile __bit C1INTP @ (((unsigned) &CM1CON1)*8) + 7;
2127 extern volatile __bit C1NCH0 @ (((unsigned) &CM1CON1)*8) + 0;
2129 extern volatile __bit C1OE @ (((unsigned) &CM1CON0)*8) + 5;
2131 extern volatile __bit C1ON @ (((unsigned) &CM1CON0)*8) + 7;
2133 extern volatile __bit C1PCH0 @ (((unsigned) &CM1CON1)*8) + 4;
2135 extern volatile __bit C1PCH1 @ (((unsigned) &CM1CON1)*8) + 5;
2137 extern volatile __bit C1POL @ (((unsigned) &CM1CON0)*8) + 4;
2139 extern volatile __bit C1SP @ (((unsigned) &CM1CON0)*8) + 2;
2141 extern volatile __bit C1SYNC @ (((unsigned) &CM1CON0)*8) + 0;
2143 extern volatile __bit CARRY @ (((unsigned) &STATUS)*8) + 0;
2145 extern volatile __bit CCP1AS0 @ (((unsigned) &CCP1AS)*8) + 4;
2147 extern volatile __bit CCP1AS1 @ (((unsigned) &CCP1AS)*8) + 5;
2149 extern volatile __bit CCP1AS2 @ (((unsigned) &CCP1AS)*8) + 6;
2151 extern volatile __bit CCP1ASE @ (((unsigned) &CCP1AS)*8) + 7;
2153 extern volatile __bit CCP1IE @ (((unsigned) &PIE1)*8) + 2;
2155 extern volatile __bit CCP1IF @ (((unsigned) &PIR1)*8) + 2;
2157 extern volatile __bit CCP1M0 @ (((unsigned) &CCP1CON)*8) + 0;
2159 extern volatile __bit CCP1M1 @ (((unsigned) &CCP1CON)*8) + 1;
2161 extern volatile __bit CCP1M2 @ (((unsigned) &CCP1CON)*8) + 2;
2163 extern volatile __bit CCP1M3 @ (((unsigned) &CCP1CON)*8) + 3;
2165 extern volatile __bit CCP1SEL @ (((unsigned) &APFCON)*8) + 0;
2167 extern volatile __bit CDAFVR0 @ (((unsigned) &FVRCON)*8) + 2;
2169 extern volatile __bit CDAFVR1 @ (((unsigned) &FVRCON)*8) + 3;
2171 extern volatile __bit CFGS @ (((unsigned) &EECON1)*8) + 6;
2173 extern volatile __bit CHS0 @ (((unsigned) &ADCON0)*8) + 2;
2175 extern volatile __bit CHS1 @ (((unsigned) &ADCON0)*8) + 3;
2177 extern volatile __bit CHS2 @ (((unsigned) &ADCON0)*8) + 4;
2179 extern volatile __bit CHS3 @ (((unsigned) &ADCON0)*8) + 5;
2181 extern volatile __bit CHS4 @ (((unsigned) &ADCON0)*8) + 6;
2183 extern volatile __bit CKE @ (((unsigned) &SSP1STAT)*8) + 6;
2185 extern volatile __bit CKP @ (((unsigned) &SSP1CON1)*8) + 4;
2187 extern volatile __bit CLKIN @ (((unsigned) &PORTA)*8) + 5;
2189 extern volatile __bit CLKOUT @ (((unsigned) &PORTA)*8) + 4;
2191 extern volatile __bit CLKR @ (((unsigned) &PORTA)*8) + 4;
2193 extern volatile __bit CLKRDC0 @ (((unsigned) &CLKRCON)*8) + 3;
2195 extern volatile __bit CLKRDC1 @ (((unsigned) &CLKRCON)*8) + 4;
2197 extern volatile __bit CLKRDIV0 @ (((unsigned) &CLKRCON)*8) + 0;
2199 extern volatile __bit CLKRDIV1 @ (((unsigned) &CLKRCON)*8) + 1;
2201 extern volatile __bit CLKRDIV2 @ (((unsigned) &CLKRCON)*8) + 2;
2203 extern volatile __bit CLKREN @ (((unsigned) &CLKRCON)*8) + 7;
2205 extern volatile __bit CLKROE @ (((unsigned) &CLKRCON)*8) + 6;
2207 extern volatile __bit CLKRSLR @ (((unsigned) &CLKRCON)*8) + 5;
2209 extern volatile __bit CPS0 @ (((unsigned) &PORTA)*8) + 0;
2211 extern volatile __bit CPS1 @ (((unsigned) &PORTA)*8) + 1;
2213 extern volatile __bit CPS2 @ (((unsigned) &PORTA)*8) + 2;
2215 extern volatile __bit CPS3 @ (((unsigned) &PORTA)*8) + 4;
2217 extern volatile __bit CPSCH0 @ (((unsigned) &CPSCON1)*8) + 0;
2219 extern volatile __bit CPSCH1 @ (((unsigned) &CPSCON1)*8) + 1;
2221 extern volatile __bit CPSON @ (((unsigned) &CPSCON0)*8) + 7;
2223 extern volatile __bit CPSOUT @ (((unsigned) &CPSCON0)*8) + 1;
2225 extern volatile __bit CPSRM @ (((unsigned) &CPSCON0)*8) + 6;
2227 extern volatile __bit CPSRNG0 @ (((unsigned) &CPSCON0)*8) + 2;
2229 extern volatile __bit CPSRNG1 @ (((unsigned) &CPSCON0)*8) + 3;
2231 extern volatile __bit CREN @ (((unsigned) &RCSTA)*8) + 4;
2233 extern volatile __bit CSRC @ (((unsigned) &TXSTA)*8) + 7;
2235 extern volatile __bit C_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 0;
2237 extern volatile __bit DACEN @ (((unsigned) &DACCON0)*8) + 7;
2239 extern volatile __bit DACLPS @ (((unsigned) &DACCON0)*8) + 6;
2241 extern volatile __bit DACOE @ (((unsigned) &DACCON0)*8) + 5;
2243 extern volatile __bit DACOUT @ (((unsigned) &PORTA)*8) + 0;
2245 extern volatile __bit DACPSS0 @ (((unsigned) &DACCON0)*8) + 2;
2247 extern volatile __bit DACPSS1 @ (((unsigned) &DACCON0)*8) + 3;
2249 extern volatile __bit DACR0 @ (((unsigned) &DACCON1)*8) + 0;
2251 extern volatile __bit DACR1 @ (((unsigned) &DACCON1)*8) + 1;
2253 extern volatile __bit DACR2 @ (((unsigned) &DACCON1)*8) + 2;
2255 extern volatile __bit DACR3 @ (((unsigned) &DACCON1)*8) + 3;
2257 extern volatile __bit DACR4 @ (((unsigned) &DACCON1)*8) + 4;
2259 extern volatile __bit DC @ (((unsigned) &STATUS)*8) + 1;
2261 extern volatile __bit DC1B0 @ (((unsigned) &CCP1CON)*8) + 4;
2263 extern volatile __bit DC1B1 @ (((unsigned) &CCP1CON)*8) + 5;
2265 extern volatile __bit DC_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 1;
2267 extern volatile __bit DHEN @ (((unsigned) &SSP1CON3)*8) + 0;
2269 extern volatile __bit D_nA @ (((unsigned) &SSP1STAT)*8) + 5;
2271 extern volatile __bit EEIE @ (((unsigned) &PIE2)*8) + 4;
2273 extern volatile __bit EEIF @ (((unsigned) &PIR2)*8) + 4;
2275 extern volatile __bit EEPGD @ (((unsigned) &EECON1)*8) + 7;
2277 extern volatile __bit FERR @ (((unsigned) &RCSTA)*8) + 2;
2279 extern volatile __bit FLT0 @ (((unsigned) &PORTA)*8) + 2;
2281 extern volatile __bit FREE @ (((unsigned) &EECON1)*8) + 4;
2283 extern volatile __bit FVREN @ (((unsigned) &FVRCON)*8) + 7;
2285 extern volatile __bit FVRRDY @ (((unsigned) &FVRCON)*8) + 6;
2287 extern volatile __bit GCEN @ (((unsigned) &SSP1CON2)*8) + 7;
2289 extern volatile __bit GIE @ (((unsigned) &INTCON)*8) + 7;
2291 extern volatile __bit GO @ (((unsigned) &ADCON0)*8) + 1;
2293 extern volatile __bit GO_nDONE @ (((unsigned) &ADCON0)*8) + 1;
2295 extern volatile __bit HFIOFL @ (((unsigned) &OSCSTAT)*8) + 3;
2297 extern volatile __bit HFIOFR @ (((unsigned) &OSCSTAT)*8) + 4;
2299 extern volatile __bit HFIOFS @ (((unsigned) &OSCSTAT)*8) + 0;
2301 extern volatile __bit INTE @ (((unsigned) &INTCON)*8) + 4;
2303 extern volatile __bit INTEDG @ (((unsigned) &OPTION_REG)*8) + 6;
2305 extern volatile __bit INTF @ (((unsigned) &INTCON)*8) + 1;
2307 extern volatile __bit IOCAF0 @ (((unsigned) &IOCAF)*8) + 0;
2309 extern volatile __bit IOCAF1 @ (((unsigned) &IOCAF)*8) + 1;
2311 extern volatile __bit IOCAF2 @ (((unsigned) &IOCAF)*8) + 2;
2313 extern volatile __bit IOCAF3 @ (((unsigned) &IOCAF)*8) + 3;
2315 extern volatile __bit IOCAF4 @ (((unsigned) &IOCAF)*8) + 4;
2317 extern volatile __bit IOCAF5 @ (((unsigned) &IOCAF)*8) + 5;
2319 extern volatile __bit IOCAN0 @ (((unsigned) &IOCAN)*8) + 0;
2321 extern volatile __bit IOCAN1 @ (((unsigned) &IOCAN)*8) + 1;
2323 extern volatile __bit IOCAN2 @ (((unsigned) &IOCAN)*8) + 2;
2325 extern volatile __bit IOCAN3 @ (((unsigned) &IOCAN)*8) + 3;
2327 extern volatile __bit IOCAN4 @ (((unsigned) &IOCAN)*8) + 4;
2329 extern volatile __bit IOCAN5 @ (((unsigned) &IOCAN)*8) + 5;
2331 extern volatile __bit IOCAP0 @ (((unsigned) &IOCAP)*8) + 0;
2333 extern volatile __bit IOCAP1 @ (((unsigned) &IOCAP)*8) + 1;
2335 extern volatile __bit IOCAP2 @ (((unsigned) &IOCAP)*8) + 2;
2337 extern volatile __bit IOCAP3 @ (((unsigned) &IOCAP)*8) + 3;
2339 extern volatile __bit IOCAP4 @ (((unsigned) &IOCAP)*8) + 4;
2341 extern volatile __bit IOCAP5 @ (((unsigned) &IOCAP)*8) + 5;
2343 extern volatile __bit IOCIE @ (((unsigned) &INTCON)*8) + 3;
2345 extern volatile __bit IOCIF @ (((unsigned) &INTCON)*8) + 0;
2347 extern volatile __bit IRCF0 @ (((unsigned) &OSCCON)*8) + 3;
2349 extern volatile __bit IRCF1 @ (((unsigned) &OSCCON)*8) + 4;
2351 extern volatile __bit IRCF2 @ (((unsigned) &OSCCON)*8) + 5;
2353 extern volatile __bit IRCF3 @ (((unsigned) &OSCCON)*8) + 6;
2355 extern volatile __bit LATA0 @ (((unsigned) &LATA)*8) + 0;
2357 extern volatile __bit LATA1 @ (((unsigned) &LATA)*8) + 1;
2359 extern volatile __bit LATA2 @ (((unsigned) &LATA)*8) + 2;
2361 extern volatile __bit LATA4 @ (((unsigned) &LATA)*8) + 4;
2363 extern volatile __bit LATA5 @ (((unsigned) &LATA)*8) + 5;
2365 extern volatile __bit LFIOFR @ (((unsigned) &OSCSTAT)*8) + 1;
2367 extern volatile __bit LWLO @ (((unsigned) &EECON1)*8) + 5;
2369 extern volatile __bit MC1OUT @ (((unsigned) &CMOUT)*8) + 0;
2371 extern volatile __bit MDBIT @ (((unsigned) &MDCON)*8) + 0;
2373 extern volatile __bit MDCH0 @ (((unsigned) &MDCARH)*8) + 0;
2375 extern volatile __bit MDCH1 @ (((unsigned) &MDCARH)*8) + 1;
2377 extern volatile __bit MDCH2 @ (((unsigned) &MDCARH)*8) + 2;
2379 extern volatile __bit MDCH3 @ (((unsigned) &MDCARH)*8) + 3;
2381 extern volatile __bit MDCHODIS @ (((unsigned) &MDCARH)*8) + 7;
2383 extern volatile __bit MDCHPOL @ (((unsigned) &MDCARH)*8) + 6;
2385 extern volatile __bit MDCHSYNC @ (((unsigned) &MDCARH)*8) + 5;
2387 extern volatile __bit MDCIN1 @ (((unsigned) &PORTA)*8) + 2;
2389 extern volatile __bit MDCIN2 @ (((unsigned) &PORTA)*8) + 4;
2391 extern volatile __bit MDCL0 @ (((unsigned) &MDCARL)*8) + 0;
2393 extern volatile __bit MDCL1 @ (((unsigned) &MDCARL)*8) + 1;
2395 extern volatile __bit MDCL2 @ (((unsigned) &MDCARL)*8) + 2;
2397 extern volatile __bit MDCL3 @ (((unsigned) &MDCARL)*8) + 3;
2399 extern volatile __bit MDCLODIS @ (((unsigned) &MDCARL)*8) + 7;
2401 extern volatile __bit MDCLPOL @ (((unsigned) &MDCARL)*8) + 6;
2403 extern volatile __bit MDCLSYNC @ (((unsigned) &MDCARL)*8) + 5;
2405 extern volatile __bit MDEN @ (((unsigned) &MDCON)*8) + 7;
2407 extern volatile __bit MDMIN @ (((unsigned) &PORTA)*8) + 1;
2409 extern volatile __bit MDMS0 @ (((unsigned) &MDSRC)*8) + 0;
2411 extern volatile __bit MDMS1 @ (((unsigned) &MDSRC)*8) + 1;
2413 extern volatile __bit MDMS2 @ (((unsigned) &MDSRC)*8) + 2;
2415 extern volatile __bit MDMS3 @ (((unsigned) &MDSRC)*8) + 3;
2417 extern volatile __bit MDMSODIS @ (((unsigned) &MDSRC)*8) + 7;
2419 extern volatile __bit MDOE @ (((unsigned) &MDCON)*8) + 6;
2421 extern volatile __bit MDOPOL @ (((unsigned) &MDCON)*8) + 4;
2423 extern volatile __bit MDSLR @ (((unsigned) &MDCON)*8) + 5;
2425 extern volatile __bit MFIOFR @ (((unsigned) &OSCSTAT)*8) + 2;
2427 extern volatile __bit OERR @ (((unsigned) &RCSTA)*8) + 1;
2429 extern volatile __bit OSC1 @ (((unsigned) &PORTA)*8) + 5;
2431 extern volatile __bit OSC2 @ (((unsigned) &PORTA)*8) + 4;
2433 extern volatile __bit OSFIE @ (((unsigned) &PIE2)*8) + 7;
2435 extern volatile __bit OSFIF @ (((unsigned) &PIR2)*8) + 7;
2437 extern volatile __bit OSTS @ (((unsigned) &OSCSTAT)*8) + 5;
2439 extern volatile __bit P1BSEL @ (((unsigned) &APFCON)*8) + 1;
2441 extern volatile __bit P1DC0 @ (((unsigned) &PWM1CON)*8) + 0;
2443 extern volatile __bit P1DC1 @ (((unsigned) &PWM1CON)*8) + 1;
2445 extern volatile __bit P1DC2 @ (((unsigned) &PWM1CON)*8) + 2;
2447 extern volatile __bit P1DC3 @ (((unsigned) &PWM1CON)*8) + 3;
2449 extern volatile __bit P1DC4 @ (((unsigned) &PWM1CON)*8) + 4;
2451 extern volatile __bit P1DC5 @ (((unsigned) &PWM1CON)*8) + 5;
2453 extern volatile __bit P1DC6 @ (((unsigned) &PWM1CON)*8) + 6;
2455 extern volatile __bit P1M0 @ (((unsigned) &CCP1CON)*8) + 6;
2457 extern volatile __bit P1M1 @ (((unsigned) &CCP1CON)*8) + 7;
2459 extern volatile __bit P1RSEN @ (((unsigned) &PWM1CON)*8) + 7;
2461 extern volatile __bit PCIE @ (((unsigned) &SSP1CON3)*8) + 6;
2463 extern volatile __bit PEIE @ (((unsigned) &INTCON)*8) + 6;
2465 extern volatile __bit PEN @ (((unsigned) &SSP1CON2)*8) + 2;
2467 extern volatile __bit PLLR @ (((unsigned) &OSCSTAT)*8) + 6;
2469 extern volatile __bit PS0 @ (((unsigned) &OPTION_REG)*8) + 0;
2471 extern volatile __bit PS1 @ (((unsigned) &OPTION_REG)*8) + 1;
2473 extern volatile __bit PS2 @ (((unsigned) &OPTION_REG)*8) + 2;
2475 extern volatile __bit PSA @ (((unsigned) &OPTION_REG)*8) + 3;
2477 extern volatile __bit PSS1AC0 @ (((unsigned) &CCP1AS)*8) + 2;
2479 extern volatile __bit PSS1AC1 @ (((unsigned) &CCP1AS)*8) + 3;
2481 extern volatile __bit PSS1BD0 @ (((unsigned) &CCP1AS)*8) + 0;
2483 extern volatile __bit PSS1BD1 @ (((unsigned) &CCP1AS)*8) + 1;
2485 extern volatile __bit RA0 @ (((unsigned) &PORTA)*8) + 0;
2487 extern volatile __bit RA1 @ (((unsigned) &PORTA)*8) + 1;
2489 extern volatile __bit RA2 @ (((unsigned) &PORTA)*8) + 2;
2491 extern volatile __bit RA3 @ (((unsigned) &PORTA)*8) + 3;
2493 extern volatile __bit RA4 @ (((unsigned) &PORTA)*8) + 4;
2495 extern volatile __bit RA5 @ (((unsigned) &PORTA)*8) + 5;
2497 extern volatile __bit RCEN @ (((unsigned) &SSP1CON2)*8) + 3;
2499 extern volatile __bit RCIDL @ (((unsigned) &BAUDCON)*8) + 6;
2501 extern volatile __bit RCIE @ (((unsigned) &PIE1)*8) + 5;
2503 extern volatile __bit RCIF @ (((unsigned) &PIR1)*8) + 5;
2505 extern volatile __bit RD @ (((unsigned) &EECON1)*8) + 0;
2507 extern volatile __bit RSEN @ (((unsigned) &SSP1CON2)*8) + 1;
2509 extern volatile __bit RX9 @ (((unsigned) &RCSTA)*8) + 6;
2511 extern volatile __bit RX9D @ (((unsigned) &RCSTA)*8) + 0;
2513 extern volatile __bit RXDTSEL @ (((unsigned) &APFCON)*8) + 7;
2515 extern volatile __bit R_nW @ (((unsigned) &SSP1STAT)*8) + 2;
2517 extern volatile __bit SBCDE @ (((unsigned) &SSP1CON3)*8) + 2;
2519 extern volatile __bit SBOREN @ (((unsigned) &BORCON)*8) + 7;
2521 extern volatile __bit SCIE @ (((unsigned) &SSP1CON3)*8) + 5;
2523 extern volatile __bit SCK @ (((unsigned) &PORTA)*8) + 1;
2525 extern volatile __bit SCKP @ (((unsigned) &BAUDCON)*8) + 4;
2527 extern volatile __bit SCL @ (((unsigned) &PORTA)*8) + 1;
2529 extern volatile __bit SCS0 @ (((unsigned) &OSCCON)*8) + 0;
2531 extern volatile __bit SCS1 @ (((unsigned) &OSCCON)*8) + 1;
2533 extern volatile __bit SDA @ (((unsigned) &PORTA)*8) + 2;
2535 extern volatile __bit SDAHT @ (((unsigned) &SSP1CON3)*8) + 3;
2537 extern volatile __bit SDI @ (((unsigned) &PORTA)*8) + 2;
2539 extern volatile __bit SDO1SEL @ (((unsigned) &APFCON)*8) + 6;
2541 extern volatile __bit SDOSEL @ (((unsigned) &APFCON)*8) + 6;
2543 extern volatile __bit SEN @ (((unsigned) &SSP1CON2)*8) + 0;
2545 extern volatile __bit SENDB @ (((unsigned) &TXSTA)*8) + 3;
2547 extern volatile __bit SMP @ (((unsigned) &SSP1STAT)*8) + 7;
2549 extern volatile __bit SPEN @ (((unsigned) &RCSTA)*8) + 7;
2551 extern volatile __bit SPLLEN @ (((unsigned) &OSCCON)*8) + 7;
2553 extern volatile __bit SRCLK0 @ (((unsigned) &SRCON0)*8) + 4;
2555 extern volatile __bit SRCLK1 @ (((unsigned) &SRCON0)*8) + 5;
2557 extern volatile __bit SRCLK2 @ (((unsigned) &SRCON0)*8) + 6;
2559 extern volatile __bit SREN @ (((unsigned) &RCSTA)*8) + 5;
2561 extern volatile __bit SRI @ (((unsigned) &PORTA)*8) + 1;
2563 extern volatile __bit SRLEN @ (((unsigned) &SRCON0)*8) + 7;
2565 extern volatile __bit SRNQ @ (((unsigned) &PORTA)*8) + 5;
2567 extern volatile __bit SRNQEN @ (((unsigned) &SRCON0)*8) + 2;
2569 extern volatile __bit SRPR @ (((unsigned) &SRCON0)*8) + 0;
2571 extern volatile __bit SRPS @ (((unsigned) &SRCON0)*8) + 1;
2573 extern volatile __bit SRQ @ (((unsigned) &PORTA)*8) + 2;
2575 extern volatile __bit SRQEN @ (((unsigned) &SRCON0)*8) + 3;
2577 extern volatile __bit SRRC1E @ (((unsigned) &SRCON1)*8) + 0;
2579 extern volatile __bit SRRCKE @ (((unsigned) &SRCON1)*8) + 2;
2581 extern volatile __bit SRRPE @ (((unsigned) &SRCON1)*8) + 3;
2583 extern volatile __bit SRSC1E @ (((unsigned) &SRCON1)*8) + 4;
2585 extern volatile __bit SRSCKE @ (((unsigned) &SRCON1)*8) + 6;
2587 extern volatile __bit SRSPE @ (((unsigned) &SRCON1)*8) + 7;
2589 extern volatile __bit SS1SEL @ (((unsigned) &APFCON)*8) + 5;
2591 extern volatile __bit SSP1IE @ (((unsigned) &PIE1)*8) + 3;
2593 extern volatile __bit SSP1IF @ (((unsigned) &PIR1)*8) + 3;
2595 extern volatile __bit SSPEN @ (((unsigned) &SSP1CON1)*8) + 5;
2597 extern volatile __bit SSPM0 @ (((unsigned) &SSP1CON1)*8) + 0;
2599 extern volatile __bit SSPM1 @ (((unsigned) &SSP1CON1)*8) + 1;
2601 extern volatile __bit SSPM2 @ (((unsigned) &SSP1CON1)*8) + 2;
2603 extern volatile __bit SSPM3 @ (((unsigned) &SSP1CON1)*8) + 3;
2605 extern volatile __bit SSPOV @ (((unsigned) &SSP1CON1)*8) + 6;
2607 extern volatile __bit SSSEL @ (((unsigned) &APFCON)*8) + 5;
2609 extern volatile __bit STKOVF @ (((unsigned) &PCON)*8) + 7;
2611 extern volatile __bit STKUNF @ (((unsigned) &PCON)*8) + 6;
2613 extern volatile __bit STR1A @ (((unsigned) &PSTR1CON)*8) + 0;
2615 extern volatile __bit STR1B @ (((unsigned) &PSTR1CON)*8) + 1;
2617 extern volatile __bit STR1C @ (((unsigned) &PSTR1CON)*8) + 2;
2619 extern volatile __bit STR1D @ (((unsigned) &PSTR1CON)*8) + 3;
2621 extern volatile __bit STR1SYNC @ (((unsigned) &PSTR1CON)*8) + 4;
2623 extern volatile __bit SWDTEN @ (((unsigned) &WDTCON)*8) + 0;
2625 extern volatile __bit SYNC @ (((unsigned) &TXSTA)*8) + 4;
2627 extern volatile __bit T0CKI @ (((unsigned) &PORTA)*8) + 2;
2629 extern volatile __bit T0CS @ (((unsigned) &OPTION_REG)*8) + 5;
2631 extern volatile __bit T0IE @ (((unsigned) &INTCON)*8) + 5;
2633 extern volatile __bit T0IF @ (((unsigned) &INTCON)*8) + 2;
2635 extern volatile __bit T0SE @ (((unsigned) &OPTION_REG)*8) + 4;
2637 extern volatile __bit T0XCS @ (((unsigned) &CPSCON0)*8) + 0;
2639 extern volatile __bit T1CKI @ (((unsigned) &PORTA)*8) + 5;
2641 extern volatile __bit T1CKPS0 @ (((unsigned) &T1CON)*8) + 4;
2643 extern volatile __bit T1CKPS1 @ (((unsigned) &T1CON)*8) + 5;
2645 extern volatile __bit T1GGO @ (((unsigned) &T1GCON)*8) + 3;
2647 extern volatile __bit T1GGO_nDONE @ (((unsigned) &T1GCON)*8) + 3;
2649 extern volatile __bit T1GPOL @ (((unsigned) &T1GCON)*8) + 6;
2651 extern volatile __bit T1GSEL @ (((unsigned) &APFCON)*8) + 3;
2653 extern volatile __bit T1GSPM @ (((unsigned) &T1GCON)*8) + 4;
2655 extern volatile __bit T1GSS0 @ (((unsigned) &T1GCON)*8) + 0;
2657 extern volatile __bit T1GSS1 @ (((unsigned) &T1GCON)*8) + 1;
2659 extern volatile __bit T1GTM @ (((unsigned) &T1GCON)*8) + 5;
2661 extern volatile __bit T1GVAL @ (((unsigned) &T1GCON)*8) + 2;
2663 extern volatile __bit T1OSCEN @ (((unsigned) &T1CON)*8) + 3;
2665 extern volatile __bit T1OSCR @ (((unsigned) &OSCSTAT)*8) + 7;
2667 extern volatile __bit T1OSI @ (((unsigned) &PORTA)*8) + 5;
2669 extern volatile __bit T1OSO @ (((unsigned) &PORTA)*8) + 4;
2671 extern volatile __bit T2CKPS0 @ (((unsigned) &T2CON)*8) + 0;
2673 extern volatile __bit T2CKPS1 @ (((unsigned) &T2CON)*8) + 1;
2675 extern volatile __bit T2OUTPS0 @ (((unsigned) &T2CON)*8) + 3;
2677 extern volatile __bit T2OUTPS1 @ (((unsigned) &T2CON)*8) + 4;
2679 extern volatile __bit T2OUTPS2 @ (((unsigned) &T2CON)*8) + 5;
2681 extern volatile __bit T2OUTPS3 @ (((unsigned) &T2CON)*8) + 6;
2683 extern volatile __bit TMR0CS @ (((unsigned) &OPTION_REG)*8) + 5;
2685 extern volatile __bit TMR0IE @ (((unsigned) &INTCON)*8) + 5;
2687 extern volatile __bit TMR0IF @ (((unsigned) &INTCON)*8) + 2;
2689 extern volatile __bit TMR0SE @ (((unsigned) &OPTION_REG)*8) + 4;
2691 extern volatile __bit TMR1CS0 @ (((unsigned) &T1CON)*8) + 6;
2693 extern volatile __bit TMR1CS1 @ (((unsigned) &T1CON)*8) + 7;
2695 extern volatile __bit TMR1GE @ (((unsigned) &T1GCON)*8) + 7;
2697 extern volatile __bit TMR1GIE @ (((unsigned) &PIE1)*8) + 7;
2699 extern volatile __bit TMR1GIF @ (((unsigned) &PIR1)*8) + 7;
2701 extern volatile __bit TMR1IE @ (((unsigned) &PIE1)*8) + 0;
2703 extern volatile __bit TMR1IF @ (((unsigned) &PIR1)*8) + 0;
2705 extern volatile __bit TMR1ON @ (((unsigned) &T1CON)*8) + 0;
2707 extern volatile __bit TMR2IE @ (((unsigned) &PIE1)*8) + 1;
2709 extern volatile __bit TMR2IF @ (((unsigned) &PIR1)*8) + 1;
2711 extern volatile __bit TMR2ON @ (((unsigned) &T2CON)*8) + 2;
2713 extern volatile __bit TRISA0 @ (((unsigned) &TRISA)*8) + 0;
2715 extern volatile __bit TRISA1 @ (((unsigned) &TRISA)*8) + 1;
2717 extern volatile __bit TRISA2 @ (((unsigned) &TRISA)*8) + 2;
2719 extern volatile __bit TRISA3 @ (((unsigned) &TRISA)*8) + 3;
2721 extern volatile __bit TRISA4 @ (((unsigned) &TRISA)*8) + 4;
2723 extern volatile __bit TRISA5 @ (((unsigned) &TRISA)*8) + 5;
2725 extern volatile __bit TRMT @ (((unsigned) &TXSTA)*8) + 1;
2727 extern volatile __bit TSEN @ (((unsigned) &FVRCON)*8) + 5;
2729 extern volatile __bit TSRNG @ (((unsigned) &FVRCON)*8) + 4;
2731 extern volatile __bit TUN0 @ (((unsigned) &OSCTUNE)*8) + 0;
2733 extern volatile __bit TUN1 @ (((unsigned) &OSCTUNE)*8) + 1;
2735 extern volatile __bit TUN2 @ (((unsigned) &OSCTUNE)*8) + 2;
2737 extern volatile __bit TUN3 @ (((unsigned) &OSCTUNE)*8) + 3;
2739 extern volatile __bit TUN4 @ (((unsigned) &OSCTUNE)*8) + 4;
2741 extern volatile __bit TUN5 @ (((unsigned) &OSCTUNE)*8) + 5;
2743 extern volatile __bit TX9 @ (((unsigned) &TXSTA)*8) + 6;
2745 extern volatile __bit TX9D @ (((unsigned) &TXSTA)*8) + 0;
2747 extern volatile __bit TXCKSEL @ (((unsigned) &APFCON)*8) + 2;
2749 extern volatile __bit TXEN @ (((unsigned) &TXSTA)*8) + 5;
2751 extern volatile __bit TXIE @ (((unsigned) &PIE1)*8) + 4;
2753 extern volatile __bit TXIF @ (((unsigned) &PIR1)*8) + 4;
2755 extern volatile __bit UA @ (((unsigned) &SSP1STAT)*8) + 1;
2757 extern volatile __bit WCOL @ (((unsigned) &SSP1CON1)*8) + 7;
2759 extern volatile __bit WDTPS0 @ (((unsigned) &WDTCON)*8) + 1;
2761 extern volatile __bit WDTPS1 @ (((unsigned) &WDTCON)*8) + 2;
2763 extern volatile __bit WDTPS2 @ (((unsigned) &WDTCON)*8) + 3;
2765 extern volatile __bit WDTPS3 @ (((unsigned) &WDTCON)*8) + 4;
2767 extern volatile __bit WDTPS4 @ (((unsigned) &WDTCON)*8) + 5;
2769 extern volatile __bit WPUA0 @ (((unsigned) &WPUA)*8) + 0;
2771 extern volatile __bit WPUA1 @ (((unsigned) &WPUA)*8) + 1;
2773 extern volatile __bit WPUA2 @ (((unsigned) &WPUA)*8) + 2;
2775 extern volatile __bit WPUA3 @ (((unsigned) &WPUA)*8) + 3;
2777 extern volatile __bit WPUA4 @ (((unsigned) &WPUA)*8) + 4;
2779 extern volatile __bit WPUA5 @ (((unsigned) &WPUA)*8) + 5;
2781 extern volatile __bit WR @ (((unsigned) &EECON1)*8) + 1;
2783 extern volatile __bit WREN @ (((unsigned) &EECON1)*8) + 2;
2785 extern volatile __bit WRERR @ (((unsigned) &EECON1)*8) + 3;
2787 extern volatile __bit WUE @ (((unsigned) &BAUDCON)*8) + 1;
2789 extern volatile __bit ZERO @ (((unsigned) &STATUS)*8) + 2;
2791 extern volatile __bit Z_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 2;
2793 extern volatile __bit nBOR @ (((unsigned) &PCON)*8) + 0;
2795 extern volatile __bit nDONE @ (((unsigned) &ADCON0)*8) + 1;
2797 extern volatile __bit nMCLR @ (((unsigned) &PORTA)*8) + 3;
2799 extern volatile __bit nPD @ (((unsigned) &STATUS)*8) + 3;
2801 extern volatile __bit nPOR @ (((unsigned) &PCON)*8) + 1;
2803 extern volatile __bit nRI @ (((unsigned) &PCON)*8) + 2;
2805 extern volatile __bit nRMCLR @ (((unsigned) &PCON)*8) + 3;
2807 extern volatile __bit nT1SYNC @ (((unsigned) &T1CON)*8) + 2;
2809 extern volatile __bit nTO @ (((unsigned) &STATUS)*8) + 4;
2811 extern volatile __bit nWPUEN @ (((unsigned) &OPTION_REG)*8) + 7;
2814 # 27 "/opt/microchip/xc8/v1.12/include/pic.h"
2815 #pragma intrinsic(_nop)
2816 extern void _nop(void);
2819 extern unsigned int flash_read(unsigned short addr);
2821 # 41 "/opt/microchip/xc8/v1.12/include/eeprom_routines.h"
2822 extern void eeprom_write(unsigned char addr, unsigned char value);
2823 extern unsigned char eeprom_read(unsigned char addr);
2824 extern void eecpymem(volatile unsigned char *to, __eeprom unsigned char *from, unsigned char size);
2825 extern void memcpyee(__eeprom unsigned char *to, const unsigned char *from, unsigned char size);
2828 # 150 "/opt/microchip/xc8/v1.12/include/pic.h"
2829 #pragma intrinsic(_delay)
2830 extern void _delay(unsigned long);
2832 # 13 "/opt/microchip/xc8/v1.12/include/stdint.h"
2833 typedef signed char int8_t;
2836 typedef signed int int16_t;
2839 typedef signed short long int int24_t;
2842 typedef signed long int int32_t;
2845 typedef unsigned char uint8_t;
2848 typedef unsigned int uint16_t;
2851 typedef unsigned short long int uint24_t;
2854 typedef unsigned long int uint32_t;
2857 typedef signed char int_least8_t;
2860 typedef signed int int_least16_t;
2863 typedef signed short long int int_least24_t;
2866 typedef signed long int int_least32_t;
2869 typedef unsigned char uint_least8_t;
2872 typedef unsigned int uint_least16_t;
2875 typedef unsigned short long int uint_least24_t;
2878 typedef unsigned long int uint_least32_t;
2881 typedef signed char int_fast8_t;
2884 typedef signed int int_fast16_t;
2887 typedef signed short long int int_fast24_t;
2890 typedef signed long int int_fast32_t;
2893 typedef unsigned char uint_fast8_t;
2896 typedef unsigned int uint_fast16_t;
2899 typedef unsigned short long int uint_fast24_t;
2902 typedef unsigned long int uint_fast32_t;
2905 typedef int32_t intmax_t;
2910 typedef uint32_t uintmax_t;
2915 typedef int16_t intptr_t;
2920 typedef uint16_t uintptr_t;
2922 # 12 "/opt/microchip/xc8/v1.12/include/stdbool.h"
2923 typedef unsigned char bool;
2925 # 44 "/opt/microchip/xc8/v1.12/include/pic12f1840.h"
2926 extern volatile unsigned char INDF0 @ 0x000;
2928 asm("INDF0 equ 00h");
2936 extern volatile INDF0bits_t INDF0bits @ 0x000;
2939 extern volatile unsigned char INDF1 @ 0x001;
2941 asm("INDF1 equ 01h");
2949 extern volatile INDF1bits_t INDF1bits @ 0x001;
2952 extern volatile unsigned char PCL @ 0x002;
2962 extern volatile PCLbits_t PCLbits @ 0x002;
2965 extern volatile unsigned char STATUS @ 0x003;
2967 asm("STATUS equ 03h");
2986 extern volatile STATUSbits_t STATUSbits @ 0x003;
2989 extern volatile unsigned short FSR0 @ 0x004;
2992 extern volatile unsigned char FSR0L @ 0x004;
2994 asm("FSR0L equ 04h");
3002 extern volatile FSR0Lbits_t FSR0Lbits @ 0x004;
3005 extern volatile unsigned char FSR0H @ 0x005;
3007 asm("FSR0H equ 05h");
3015 extern volatile FSR0Hbits_t FSR0Hbits @ 0x005;
3018 extern volatile unsigned short FSR1 @ 0x006;
3021 extern volatile unsigned char FSR1L @ 0x006;
3023 asm("FSR1L equ 06h");
3031 extern volatile FSR1Lbits_t FSR1Lbits @ 0x006;
3034 extern volatile unsigned char FSR1H @ 0x007;
3036 asm("FSR1H equ 07h");
3044 extern volatile FSR1Hbits_t FSR1Hbits @ 0x007;
3047 extern volatile unsigned char BSR @ 0x008;
3064 extern volatile BSRbits_t BSRbits @ 0x008;
3067 extern volatile unsigned char WREG @ 0x009;
3069 asm("WREG equ 09h");
3077 extern volatile WREGbits_t WREGbits @ 0x009;
3080 extern volatile unsigned char PCLATH @ 0x00A;
3082 asm("PCLATH equ 0Ah");
3090 extern volatile PCLATHbits_t PCLATHbits @ 0x00A;
3093 extern volatile unsigned char INTCON @ 0x00B;
3095 asm("INTCON equ 0Bh");
3116 extern volatile INTCONbits_t INTCONbits @ 0x00B;
3119 extern volatile unsigned char PORTA @ 0x00C;
3121 asm("PORTA equ 0Ch");
3134 extern volatile PORTAbits_t PORTAbits @ 0x00C;
3137 extern volatile unsigned char PIR1 @ 0x011;
3139 asm("PIR1 equ 011h");
3151 unsigned TMR1GIF :1;
3154 extern volatile PIR1bits_t PIR1bits @ 0x011;
3157 extern volatile unsigned char PIR2 @ 0x012;
3159 asm("PIR2 equ 012h");
3172 extern volatile PIR2bits_t PIR2bits @ 0x012;
3175 extern volatile unsigned char TMR0 @ 0x015;
3177 asm("TMR0 equ 015h");
3185 extern volatile TMR0bits_t TMR0bits @ 0x015;
3188 extern volatile unsigned short TMR1 @ 0x016;
3190 asm("TMR1 equ 016h");
3194 extern volatile unsigned char TMR1L @ 0x016;
3196 asm("TMR1L equ 016h");
3204 extern volatile TMR1Lbits_t TMR1Lbits @ 0x016;
3207 extern volatile unsigned char TMR1H @ 0x017;
3209 asm("TMR1H equ 017h");
3217 extern volatile TMR1Hbits_t TMR1Hbits @ 0x017;
3220 extern volatile unsigned char T1CON @ 0x018;
3222 asm("T1CON equ 018h");
3229 unsigned nT1SYNC :1;
3230 unsigned T1OSCEN :1;
3231 unsigned T1CKPS0 :1;
3232 unsigned T1CKPS1 :1;
3233 unsigned TMR1CS0 :1;
3234 unsigned TMR1CS1 :1;
3242 extern volatile T1CONbits_t T1CONbits @ 0x018;
3245 extern volatile unsigned char T1GCON @ 0x019;
3247 asm("T1GCON equ 019h");
3255 unsigned T1GGO_nDONE :1;
3267 extern volatile T1GCONbits_t T1GCONbits @ 0x019;
3270 extern volatile unsigned char TMR2 @ 0x01A;
3272 asm("TMR2 equ 01Ah");
3280 extern volatile TMR2bits_t TMR2bits @ 0x01A;
3283 extern volatile unsigned char PR2 @ 0x01B;
3285 asm("PR2 equ 01Bh");
3293 extern volatile PR2bits_t PR2bits @ 0x01B;
3296 extern volatile unsigned char T2CON @ 0x01C;
3298 asm("T2CON equ 01Ch");
3303 unsigned T2CKPS0 :1;
3304 unsigned T2CKPS1 :1;
3306 unsigned T2OUTPS0 :1;
3307 unsigned T2OUTPS1 :1;
3308 unsigned T2OUTPS2 :1;
3309 unsigned T2OUTPS3 :1;
3314 unsigned T2OUTPS :4;
3317 extern volatile T2CONbits_t T2CONbits @ 0x01C;
3320 extern volatile unsigned char CPSCON0 @ 0x01E;
3322 asm("CPSCON0 equ 01Eh");
3329 unsigned CPSRNG0 :1;
3330 unsigned CPSRNG1 :1;
3340 extern volatile CPSCON0bits_t CPSCON0bits @ 0x01E;
3343 extern volatile unsigned char CPSCON1 @ 0x01F;
3345 asm("CPSCON1 equ 01Fh");
3357 extern volatile CPSCON1bits_t CPSCON1bits @ 0x01F;
3360 extern volatile unsigned char TRISA @ 0x08C;
3362 asm("TRISA equ 08Ch");
3375 extern volatile TRISAbits_t TRISAbits @ 0x08C;
3378 extern volatile unsigned char PIE1 @ 0x091;
3380 asm("PIE1 equ 091h");
3392 unsigned TMR1GIE :1;
3395 extern volatile PIE1bits_t PIE1bits @ 0x091;
3398 extern volatile unsigned char PIE2 @ 0x092;
3400 asm("PIE2 equ 092h");
3413 extern volatile PIE2bits_t PIE2bits @ 0x092;
3416 extern volatile unsigned char OPTION_REG @ 0x095;
3418 asm("OPTION_REG equ 095h");
3439 extern volatile OPTION_REGbits_t OPTION_REGbits @ 0x095;
3442 extern volatile unsigned char PCON @ 0x096;
3444 asm("PCON equ 096h");
3458 extern volatile PCONbits_t PCONbits @ 0x096;
3461 extern volatile unsigned char WDTCON @ 0x097;
3463 asm("WDTCON equ 097h");
3480 extern volatile WDTCONbits_t WDTCONbits @ 0x097;
3483 extern volatile unsigned char OSCTUNE @ 0x098;
3485 asm("OSCTUNE equ 098h");
3501 extern volatile OSCTUNEbits_t OSCTUNEbits @ 0x098;
3504 extern volatile unsigned char OSCCON @ 0x099;
3506 asm("OSCCON equ 099h");
3526 extern volatile OSCCONbits_t OSCCONbits @ 0x099;
3529 extern volatile unsigned char OSCSTAT @ 0x09A;
3531 asm("OSCSTAT equ 09Ah");
3546 extern volatile OSCSTATbits_t OSCSTATbits @ 0x09A;
3549 extern volatile unsigned short ADRES @ 0x09B;
3551 asm("ADRES equ 09Bh");
3555 extern volatile unsigned char ADRESL @ 0x09B;
3557 asm("ADRESL equ 09Bh");
3565 extern volatile ADRESLbits_t ADRESLbits @ 0x09B;
3568 extern volatile unsigned char ADRESH @ 0x09C;
3570 asm("ADRESH equ 09Ch");
3578 extern volatile ADRESHbits_t ADRESHbits @ 0x09C;
3581 extern volatile unsigned char ADCON0 @ 0x09D;
3583 asm("ADCON0 equ 09Dh");
3589 unsigned GO_nDONE :1;
3606 extern volatile ADCON0bits_t ADCON0bits @ 0x09D;
3609 extern volatile unsigned char ADCON1 @ 0x09E;
3611 asm("ADCON1 equ 09Eh");
3616 unsigned ADPREF0 :1;
3617 unsigned ADPREF1 :1;
3630 extern volatile ADCON1bits_t ADCON1bits @ 0x09E;
3633 extern volatile unsigned char LATA @ 0x10C;
3635 asm("LATA equ 010Ch");
3648 extern volatile LATAbits_t LATAbits @ 0x10C;
3651 extern volatile unsigned char CM1CON0 @ 0x111;
3653 asm("CM1CON0 equ 0111h");
3668 extern volatile CM1CON0bits_t CM1CON0bits @ 0x111;
3671 extern volatile unsigned char CM1CON1 @ 0x112;
3673 asm("CM1CON1 equ 0112h");
3691 extern volatile CM1CON1bits_t CM1CON1bits @ 0x112;
3694 extern volatile unsigned char CMOUT @ 0x115;
3696 asm("CMOUT equ 0115h");
3704 extern volatile CMOUTbits_t CMOUTbits @ 0x115;
3707 extern volatile unsigned char BORCON @ 0x116;
3709 asm("BORCON equ 0116h");
3720 extern volatile BORCONbits_t BORCONbits @ 0x116;
3723 extern volatile unsigned char FVRCON @ 0x117;
3725 asm("FVRCON equ 0117h");
3732 unsigned CDAFVR0 :1;
3733 unsigned CDAFVR1 :1;
3744 extern volatile FVRCONbits_t FVRCONbits @ 0x117;
3747 extern volatile unsigned char DACCON0 @ 0x118;
3749 asm("DACCON0 equ 0118h");
3755 unsigned DACPSS0 :1;
3756 unsigned DACPSS1 :1;
3767 extern volatile DACCON0bits_t DACCON0bits @ 0x118;
3770 extern volatile unsigned char DACCON1 @ 0x119;
3772 asm("DACCON1 equ 0119h");
3787 extern volatile DACCON1bits_t DACCON1bits @ 0x119;
3790 extern volatile unsigned char SRCON0 @ 0x11A;
3792 asm("SRCON0 equ 011Ah");
3811 extern volatile SRCON0bits_t SRCON0bits @ 0x11A;
3814 extern volatile unsigned char SRCON1 @ 0x11B;
3816 asm("SRCON1 equ 011Bh");
3831 extern volatile SRCON1bits_t SRCON1bits @ 0x11B;
3834 extern volatile unsigned char APFCON @ 0x11D;
3836 asm("APFCON equ 011Dh");
3839 extern volatile unsigned char APFCON0 @ 0x11D;
3841 asm("APFCON0 equ 011Dh");
3846 unsigned CCP1SEL :1;
3848 unsigned TXCKSEL :1;
3853 unsigned RXDTSEL :1;
3858 unsigned SDO1SEL :1;
3861 extern volatile APFCONbits_t APFCONbits @ 0x11D;
3866 unsigned CCP1SEL :1;
3868 unsigned TXCKSEL :1;
3873 unsigned RXDTSEL :1;
3878 unsigned SDO1SEL :1;
3881 extern volatile APFCON0bits_t APFCON0bits @ 0x11D;
3884 extern volatile unsigned char ANSELA @ 0x18C;
3886 asm("ANSELA equ 018Ch");
3901 extern volatile ANSELAbits_t ANSELAbits @ 0x18C;
3904 extern volatile unsigned short EEADR @ 0x191;
3906 asm("EEADR equ 0191h");
3910 extern volatile unsigned char EEADRL @ 0x191;
3912 asm("EEADRL equ 0191h");
3920 extern volatile EEADRLbits_t EEADRLbits @ 0x191;
3923 extern volatile unsigned char EEADRH @ 0x192;
3925 asm("EEADRH equ 0192h");
3933 extern volatile EEADRHbits_t EEADRHbits @ 0x192;
3936 extern volatile unsigned short EEDAT @ 0x193;
3938 asm("EEDAT equ 0193h");
3942 extern volatile unsigned char EEDATL @ 0x193;
3944 asm("EEDATL equ 0193h");
3947 extern volatile unsigned char EEDATA @ 0x193;
3949 asm("EEDATA equ 0193h");
3957 extern volatile EEDATLbits_t EEDATLbits @ 0x193;
3965 extern volatile EEDATAbits_t EEDATAbits @ 0x193;
3968 extern volatile unsigned char EEDATH @ 0x194;
3970 asm("EEDATH equ 0194h");
3978 extern volatile EEDATHbits_t EEDATHbits @ 0x194;
3981 extern volatile unsigned char EECON1 @ 0x195;
3983 asm("EECON1 equ 0195h");
3998 extern volatile EECON1bits_t EECON1bits @ 0x195;
4001 extern volatile unsigned char EECON2 @ 0x196;
4003 asm("EECON2 equ 0196h");
4011 extern volatile EECON2bits_t EECON2bits @ 0x196;
4014 extern volatile unsigned char VREGCON @ 0x197;
4016 asm("VREGCON equ 0197h");
4021 unsigned VREGPM0 :1;
4022 unsigned VREGPM1 :1;
4028 extern volatile VREGCONbits_t VREGCONbits @ 0x197;
4031 extern volatile unsigned char RCREG @ 0x199;
4033 asm("RCREG equ 0199h");
4041 extern volatile RCREGbits_t RCREGbits @ 0x199;
4044 extern volatile unsigned char TXREG @ 0x19A;
4046 asm("TXREG equ 019Ah");
4054 extern volatile TXREGbits_t TXREGbits @ 0x19A;
4057 extern volatile unsigned char SPBRGL @ 0x19B;
4059 asm("SPBRGL equ 019Bh");
4062 extern volatile unsigned char SPBRG @ 0x19B;
4064 asm("SPBRG equ 019Bh");
4072 extern volatile SPBRGLbits_t SPBRGLbits @ 0x19B;
4080 extern volatile SPBRGbits_t SPBRGbits @ 0x19B;
4083 extern volatile unsigned char SPBRGH @ 0x19C;
4085 asm("SPBRGH equ 019Ch");
4093 extern volatile SPBRGHbits_t SPBRGHbits @ 0x19C;
4096 extern volatile unsigned char RCSTA @ 0x19D;
4098 asm("RCSTA equ 019Dh");
4113 extern volatile RCSTAbits_t RCSTAbits @ 0x19D;
4116 extern volatile unsigned char TXSTA @ 0x19E;
4118 asm("TXSTA equ 019Eh");
4133 extern volatile TXSTAbits_t TXSTAbits @ 0x19E;
4136 extern volatile unsigned char BAUDCON @ 0x19F;
4138 asm("BAUDCON equ 019Fh");
4153 extern volatile BAUDCONbits_t BAUDCONbits @ 0x19F;
4156 extern volatile unsigned char WPUA @ 0x20C;
4158 asm("WPUA equ 020Ch");
4174 extern volatile WPUAbits_t WPUAbits @ 0x20C;
4177 extern volatile unsigned char SSP1BUF @ 0x211;
4179 asm("SSP1BUF equ 0211h");
4182 extern volatile unsigned char SSPBUF @ 0x211;
4184 asm("SSPBUF equ 0211h");
4192 extern volatile SSP1BUFbits_t SSP1BUFbits @ 0x211;
4200 extern volatile SSPBUFbits_t SSPBUFbits @ 0x211;
4203 extern volatile unsigned char SSP1ADD @ 0x212;
4205 asm("SSP1ADD equ 0212h");
4208 extern volatile unsigned char SSPADD @ 0x212;
4210 asm("SSPADD equ 0212h");
4218 extern volatile SSP1ADDbits_t SSP1ADDbits @ 0x212;
4226 extern volatile SSPADDbits_t SSPADDbits @ 0x212;
4229 extern volatile unsigned char SSP1MSK @ 0x213;
4231 asm("SSP1MSK equ 0213h");
4234 extern volatile unsigned char SSPMSK @ 0x213;
4236 asm("SSPMSK equ 0213h");
4244 extern volatile SSP1MSKbits_t SSP1MSKbits @ 0x213;
4252 extern volatile SSPMSKbits_t SSPMSKbits @ 0x213;
4255 extern volatile unsigned char SSP1STAT @ 0x214;
4257 asm("SSP1STAT equ 0214h");
4260 extern volatile unsigned char SSPSTAT @ 0x214;
4262 asm("SSPSTAT equ 0214h");
4277 extern volatile SSP1STATbits_t SSP1STATbits @ 0x214;
4292 extern volatile SSPSTATbits_t SSPSTATbits @ 0x214;
4295 extern volatile unsigned char SSP1CON1 @ 0x215;
4297 asm("SSP1CON1 equ 0215h");
4300 extern volatile unsigned char SSPCON1 @ 0x215;
4302 asm("SSPCON1 equ 0215h");
4304 extern volatile unsigned char SSPCON @ 0x215;
4306 asm("SSPCON equ 0215h");
4324 extern volatile SSP1CON1bits_t SSP1CON1bits @ 0x215;
4342 extern volatile SSPCON1bits_t SSPCON1bits @ 0x215;
4360 extern volatile SSPCONbits_t SSPCONbits @ 0x215;
4363 extern volatile unsigned char SSP1CON2 @ 0x216;
4365 asm("SSP1CON2 equ 0216h");
4368 extern volatile unsigned char SSPCON2 @ 0x216;
4370 asm("SSPCON2 equ 0216h");
4381 unsigned ACKSTAT :1;
4385 extern volatile SSP1CON2bits_t SSP1CON2bits @ 0x216;
4396 unsigned ACKSTAT :1;
4400 extern volatile SSPCON2bits_t SSPCON2bits @ 0x216;
4403 extern volatile unsigned char SSP1CON3 @ 0x217;
4405 asm("SSP1CON3 equ 0217h");
4408 extern volatile unsigned char SSPCON3 @ 0x217;
4410 asm("SSPCON3 equ 0217h");
4425 extern volatile SSP1CON3bits_t SSP1CON3bits @ 0x217;
4440 extern volatile SSPCON3bits_t SSPCON3bits @ 0x217;
4443 extern volatile unsigned char CCPR1L @ 0x291;
4445 asm("CCPR1L equ 0291h");
4453 extern volatile CCPR1Lbits_t CCPR1Lbits @ 0x291;
4456 extern volatile unsigned char CCPR1H @ 0x292;
4458 asm("CCPR1H equ 0292h");
4466 extern volatile CCPR1Hbits_t CCPR1Hbits @ 0x292;
4469 extern volatile unsigned char CCP1CON @ 0x293;
4471 asm("CCP1CON equ 0293h");
4491 extern volatile CCP1CONbits_t CCP1CONbits @ 0x293;
4494 extern volatile unsigned char PWM1CON @ 0x294;
4496 asm("PWM1CON equ 0294h");
4514 extern volatile PWM1CONbits_t PWM1CONbits @ 0x294;
4517 extern volatile unsigned char CCP1AS @ 0x295;
4519 asm("CCP1AS equ 0295h");
4522 extern volatile unsigned char ECCP1AS @ 0x295;
4524 asm("ECCP1AS equ 0295h");
4529 unsigned PSS1BD0 :1;
4530 unsigned PSS1BD1 :1;
4531 unsigned PSS1AC0 :1;
4532 unsigned PSS1AC1 :1;
4533 unsigned CCP1AS0 :1;
4534 unsigned CCP1AS1 :1;
4535 unsigned CCP1AS2 :1;
4536 unsigned CCP1ASE :1;
4544 extern volatile CCP1ASbits_t CCP1ASbits @ 0x295;
4549 unsigned PSS1BD0 :1;
4550 unsigned PSS1BD1 :1;
4551 unsigned PSS1AC0 :1;
4552 unsigned PSS1AC1 :1;
4553 unsigned CCP1AS0 :1;
4554 unsigned CCP1AS1 :1;
4555 unsigned CCP1AS2 :1;
4556 unsigned CCP1ASE :1;
4564 extern volatile ECCP1ASbits_t ECCP1ASbits @ 0x295;
4567 extern volatile unsigned char PSTR1CON @ 0x296;
4569 asm("PSTR1CON equ 0296h");
4578 unsigned STR1SYNC :1;
4581 extern volatile PSTR1CONbits_t PSTR1CONbits @ 0x296;
4584 extern volatile unsigned char IOCAP @ 0x391;
4586 asm("IOCAP equ 0391h");
4602 extern volatile IOCAPbits_t IOCAPbits @ 0x391;
4605 extern volatile unsigned char IOCAN @ 0x392;
4607 asm("IOCAN equ 0392h");
4623 extern volatile IOCANbits_t IOCANbits @ 0x392;
4626 extern volatile unsigned char IOCAF @ 0x393;
4628 asm("IOCAF equ 0393h");
4644 extern volatile IOCAFbits_t IOCAFbits @ 0x393;
4647 extern volatile unsigned char CLKRCON @ 0x39A;
4649 asm("CLKRCON equ 039Ah");
4654 unsigned CLKRDIV0 :1;
4655 unsigned CLKRDIV1 :1;
4656 unsigned CLKRDIV2 :1;
4657 unsigned CLKRDC0 :1;
4658 unsigned CLKRDC1 :1;
4659 unsigned CLKRSLR :1;
4664 unsigned CLKRDIV :3;
4668 extern volatile CLKRCONbits_t CLKRCONbits @ 0x39A;
4671 extern volatile unsigned char MDCON @ 0x39C;
4673 asm("MDCON equ 039Ch");
4687 extern volatile MDCONbits_t MDCONbits @ 0x39C;
4690 extern volatile unsigned char MDSRC @ 0x39D;
4692 asm("MDSRC equ 039Dh");
4702 unsigned MDMSODIS :1;
4708 extern volatile MDSRCbits_t MDSRCbits @ 0x39D;
4711 extern volatile unsigned char MDCARL @ 0x39E;
4713 asm("MDCARL equ 039Eh");
4723 unsigned MDCLSYNC :1;
4724 unsigned MDCLPOL :1;
4725 unsigned MDCLODIS :1;
4731 extern volatile MDCARLbits_t MDCARLbits @ 0x39E;
4734 extern volatile unsigned char MDCARH @ 0x39F;
4736 asm("MDCARH equ 039Fh");
4746 unsigned MDCHSYNC :1;
4747 unsigned MDCHPOL :1;
4748 unsigned MDCHODIS :1;
4754 extern volatile MDCARHbits_t MDCARHbits @ 0x39F;
4757 extern volatile unsigned char STATUS_SHAD @ 0xFE4;
4759 asm("STATUS_SHAD equ 0FE4h");
4765 unsigned DC_SHAD :1;
4768 } STATUS_SHADbits_t;
4769 extern volatile STATUS_SHADbits_t STATUS_SHADbits @ 0xFE4;
4772 extern volatile unsigned char WREG_SHAD @ 0xFE5;
4774 asm("WREG_SHAD equ 0FE5h");
4779 unsigned WREG_SHAD :8;
4782 extern volatile WREG_SHADbits_t WREG_SHADbits @ 0xFE5;
4785 extern volatile unsigned char BSR_SHAD @ 0xFE6;
4787 asm("BSR_SHAD equ 0FE6h");
4792 unsigned BSR_SHAD :5;
4795 extern volatile BSR_SHADbits_t BSR_SHADbits @ 0xFE6;
4798 extern volatile unsigned char PCLATH_SHAD @ 0xFE7;
4800 asm("PCLATH_SHAD equ 0FE7h");
4805 unsigned PCLATH_SHAD :7;
4807 } PCLATH_SHADbits_t;
4808 extern volatile PCLATH_SHADbits_t PCLATH_SHADbits @ 0xFE7;
4811 extern volatile unsigned char FSR0L_SHAD @ 0xFE8;
4813 asm("FSR0L_SHAD equ 0FE8h");
4818 unsigned FSR0L_SHAD :8;
4821 extern volatile FSR0L_SHADbits_t FSR0L_SHADbits @ 0xFE8;
4824 extern volatile unsigned char FSR0H_SHAD @ 0xFE9;
4826 asm("FSR0H_SHAD equ 0FE9h");
4831 unsigned FSR0H_SHAD :8;
4834 extern volatile FSR0H_SHADbits_t FSR0H_SHADbits @ 0xFE9;
4837 extern volatile unsigned char FSR1L_SHAD @ 0xFEA;
4839 asm("FSR1L_SHAD equ 0FEAh");
4844 unsigned FSR1L_SHAD :8;
4847 extern volatile FSR1L_SHADbits_t FSR1L_SHADbits @ 0xFEA;
4850 extern volatile unsigned char FSR1H_SHAD @ 0xFEB;
4852 asm("FSR1H_SHAD equ 0FEBh");
4857 unsigned FSR1H_SHAD :8;
4860 extern volatile FSR1H_SHADbits_t FSR1H_SHADbits @ 0xFEB;
4863 extern volatile unsigned char STKPTR @ 0xFED;
4865 asm("STKPTR equ 0FEDh");
4873 extern volatile STKPTRbits_t STKPTRbits @ 0xFED;
4876 extern volatile unsigned char TOSL @ 0xFEE;
4878 asm("TOSL equ 0FEEh");
4886 extern volatile TOSLbits_t TOSLbits @ 0xFEE;
4889 extern volatile unsigned char TOSH @ 0xFEF;
4891 asm("TOSH equ 0FEFh");
4899 extern volatile TOSHbits_t TOSHbits @ 0xFEF;
4902 extern volatile __bit ABDEN @ (((unsigned) &BAUDCON)*8) + 0;
4904 extern volatile __bit ABDOVF @ (((unsigned) &BAUDCON)*8) + 7;
4906 extern volatile __bit ACKDT @ (((unsigned) &SSP1CON2)*8) + 5;
4908 extern volatile __bit ACKEN @ (((unsigned) &SSP1CON2)*8) + 4;
4910 extern volatile __bit ACKSTAT @ (((unsigned) &SSP1CON2)*8) + 6;
4912 extern volatile __bit ACKTIM @ (((unsigned) &SSP1CON3)*8) + 7;
4914 extern volatile __bit ADCS0 @ (((unsigned) &ADCON1)*8) + 4;
4916 extern volatile __bit ADCS1 @ (((unsigned) &ADCON1)*8) + 5;
4918 extern volatile __bit ADCS2 @ (((unsigned) &ADCON1)*8) + 6;
4920 extern volatile __bit ADDEN @ (((unsigned) &RCSTA)*8) + 3;
4922 extern volatile __bit ADFM @ (((unsigned) &ADCON1)*8) + 7;
4924 extern volatile __bit ADFVR0 @ (((unsigned) &FVRCON)*8) + 0;
4926 extern volatile __bit ADFVR1 @ (((unsigned) &FVRCON)*8) + 1;
4928 extern volatile __bit ADGO @ (((unsigned) &ADCON0)*8) + 1;
4930 extern volatile __bit ADIE @ (((unsigned) &PIE1)*8) + 6;
4932 extern volatile __bit ADIF @ (((unsigned) &PIR1)*8) + 6;
4934 extern volatile __bit ADON @ (((unsigned) &ADCON0)*8) + 0;
4936 extern volatile __bit ADPREF0 @ (((unsigned) &ADCON1)*8) + 0;
4938 extern volatile __bit ADPREF1 @ (((unsigned) &ADCON1)*8) + 1;
4940 extern volatile __bit AHEN @ (((unsigned) &SSP1CON3)*8) + 1;
4942 extern volatile __bit ANSA0 @ (((unsigned) &ANSELA)*8) + 0;
4944 extern volatile __bit ANSA1 @ (((unsigned) &ANSELA)*8) + 1;
4946 extern volatile __bit ANSA2 @ (((unsigned) &ANSELA)*8) + 2;
4948 extern volatile __bit ANSA4 @ (((unsigned) &ANSELA)*8) + 4;
4950 extern volatile __bit BCL1IE @ (((unsigned) &PIE2)*8) + 3;
4952 extern volatile __bit BCL1IF @ (((unsigned) &PIR2)*8) + 3;
4954 extern volatile __bit BF @ (((unsigned) &SSP1STAT)*8) + 0;
4956 extern volatile __bit BOEN @ (((unsigned) &SSP1CON3)*8) + 4;
4958 extern volatile __bit BORFS @ (((unsigned) &BORCON)*8) + 6;
4960 extern volatile __bit BORRDY @ (((unsigned) &BORCON)*8) + 0;
4962 extern volatile __bit BRG16 @ (((unsigned) &BAUDCON)*8) + 3;
4964 extern volatile __bit BRGH @ (((unsigned) &TXSTA)*8) + 2;
4966 extern volatile __bit BSR0 @ (((unsigned) &BSR)*8) + 0;
4968 extern volatile __bit BSR1 @ (((unsigned) &BSR)*8) + 1;
4970 extern volatile __bit BSR2 @ (((unsigned) &BSR)*8) + 2;
4972 extern volatile __bit BSR3 @ (((unsigned) &BSR)*8) + 3;
4974 extern volatile __bit BSR4 @ (((unsigned) &BSR)*8) + 4;
4976 extern volatile __bit C1HYS @ (((unsigned) &CM1CON0)*8) + 1;
4978 extern volatile __bit C1IE @ (((unsigned) &PIE2)*8) + 5;
4980 extern volatile __bit C1IF @ (((unsigned) &PIR2)*8) + 5;
4982 extern volatile __bit C1INTN @ (((unsigned) &CM1CON1)*8) + 6;
4984 extern volatile __bit C1INTP @ (((unsigned) &CM1CON1)*8) + 7;
4986 extern volatile __bit C1NCH @ (((unsigned) &CM1CON1)*8) + 0;
4988 extern volatile __bit C1NCH0 @ (((unsigned) &CM1CON1)*8) + 0;
4990 extern volatile __bit C1OE @ (((unsigned) &CM1CON0)*8) + 5;
4992 extern volatile __bit C1ON @ (((unsigned) &CM1CON0)*8) + 7;
4994 extern volatile __bit C1OUT @ (((unsigned) &CM1CON0)*8) + 6;
4996 extern volatile __bit C1PCH0 @ (((unsigned) &CM1CON1)*8) + 4;
4998 extern volatile __bit C1PCH1 @ (((unsigned) &CM1CON1)*8) + 5;
5000 extern volatile __bit C1POL @ (((unsigned) &CM1CON0)*8) + 4;
5002 extern volatile __bit C1SP @ (((unsigned) &CM1CON0)*8) + 2;
5004 extern volatile __bit C1SYNC @ (((unsigned) &CM1CON0)*8) + 0;
5006 extern volatile __bit CARRY @ (((unsigned) &STATUS)*8) + 0;
5008 extern volatile __bit CCP1AS0 @ (((unsigned) &CCP1AS)*8) + 4;
5010 extern volatile __bit CCP1AS1 @ (((unsigned) &CCP1AS)*8) + 5;
5012 extern volatile __bit CCP1AS2 @ (((unsigned) &CCP1AS)*8) + 6;
5014 extern volatile __bit CCP1ASE @ (((unsigned) &CCP1AS)*8) + 7;
5016 extern volatile __bit CCP1IE @ (((unsigned) &PIE1)*8) + 2;
5018 extern volatile __bit CCP1IF @ (((unsigned) &PIR1)*8) + 2;
5020 extern volatile __bit CCP1M0 @ (((unsigned) &CCP1CON)*8) + 0;
5022 extern volatile __bit CCP1M1 @ (((unsigned) &CCP1CON)*8) + 1;
5024 extern volatile __bit CCP1M2 @ (((unsigned) &CCP1CON)*8) + 2;
5026 extern volatile __bit CCP1M3 @ (((unsigned) &CCP1CON)*8) + 3;
5028 extern volatile __bit CCP1SEL @ (((unsigned) &APFCON)*8) + 0;
5030 extern volatile __bit CDAFVR0 @ (((unsigned) &FVRCON)*8) + 2;
5032 extern volatile __bit CDAFVR1 @ (((unsigned) &FVRCON)*8) + 3;
5034 extern volatile __bit CFGS @ (((unsigned) &EECON1)*8) + 6;
5036 extern volatile __bit CHS0 @ (((unsigned) &ADCON0)*8) + 2;
5038 extern volatile __bit CHS1 @ (((unsigned) &ADCON0)*8) + 3;
5040 extern volatile __bit CHS2 @ (((unsigned) &ADCON0)*8) + 4;
5042 extern volatile __bit CHS3 @ (((unsigned) &ADCON0)*8) + 5;
5044 extern volatile __bit CHS4 @ (((unsigned) &ADCON0)*8) + 6;
5046 extern volatile __bit CKE @ (((unsigned) &SSP1STAT)*8) + 6;
5048 extern volatile __bit CKP @ (((unsigned) &SSP1CON1)*8) + 4;
5050 extern volatile __bit CLKRDC0 @ (((unsigned) &CLKRCON)*8) + 3;
5052 extern volatile __bit CLKRDC1 @ (((unsigned) &CLKRCON)*8) + 4;
5054 extern volatile __bit CLKRDIV0 @ (((unsigned) &CLKRCON)*8) + 0;
5056 extern volatile __bit CLKRDIV1 @ (((unsigned) &CLKRCON)*8) + 1;
5058 extern volatile __bit CLKRDIV2 @ (((unsigned) &CLKRCON)*8) + 2;
5060 extern volatile __bit CLKREN @ (((unsigned) &CLKRCON)*8) + 7;
5062 extern volatile __bit CLKROE @ (((unsigned) &CLKRCON)*8) + 6;
5064 extern volatile __bit CLKRSLR @ (((unsigned) &CLKRCON)*8) + 5;
5066 extern volatile __bit CPSCH0 @ (((unsigned) &CPSCON1)*8) + 0;
5068 extern volatile __bit CPSCH1 @ (((unsigned) &CPSCON1)*8) + 1;
5070 extern volatile __bit CPSON @ (((unsigned) &CPSCON0)*8) + 7;
5072 extern volatile __bit CPSOUT @ (((unsigned) &CPSCON0)*8) + 1;
5074 extern volatile __bit CPSRM @ (((unsigned) &CPSCON0)*8) + 6;
5076 extern volatile __bit CPSRNG0 @ (((unsigned) &CPSCON0)*8) + 2;
5078 extern volatile __bit CPSRNG1 @ (((unsigned) &CPSCON0)*8) + 3;
5080 extern volatile __bit CREN @ (((unsigned) &RCSTA)*8) + 4;
5082 extern volatile __bit CSRC @ (((unsigned) &TXSTA)*8) + 7;
5084 extern volatile __bit C_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 0;
5086 extern volatile __bit DACEN @ (((unsigned) &DACCON0)*8) + 7;
5088 extern volatile __bit DACLPS @ (((unsigned) &DACCON0)*8) + 6;
5090 extern volatile __bit DACOE @ (((unsigned) &DACCON0)*8) + 5;
5092 extern volatile __bit DACPSS0 @ (((unsigned) &DACCON0)*8) + 2;
5094 extern volatile __bit DACPSS1 @ (((unsigned) &DACCON0)*8) + 3;
5096 extern volatile __bit DACR0 @ (((unsigned) &DACCON1)*8) + 0;
5098 extern volatile __bit DACR1 @ (((unsigned) &DACCON1)*8) + 1;
5100 extern volatile __bit DACR2 @ (((unsigned) &DACCON1)*8) + 2;
5102 extern volatile __bit DACR3 @ (((unsigned) &DACCON1)*8) + 3;
5104 extern volatile __bit DACR4 @ (((unsigned) &DACCON1)*8) + 4;
5106 extern volatile __bit DC @ (((unsigned) &STATUS)*8) + 1;
5108 extern volatile __bit DC1B0 @ (((unsigned) &CCP1CON)*8) + 4;
5110 extern volatile __bit DC1B1 @ (((unsigned) &CCP1CON)*8) + 5;
5112 extern volatile __bit DC_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 1;
5114 extern volatile __bit DHEN @ (((unsigned) &SSP1CON3)*8) + 0;
5116 extern volatile __bit D_nA @ (((unsigned) &SSP1STAT)*8) + 5;
5118 extern volatile __bit EEIE @ (((unsigned) &PIE2)*8) + 4;
5120 extern volatile __bit EEIF @ (((unsigned) &PIR2)*8) + 4;
5122 extern volatile __bit EEPGD @ (((unsigned) &EECON1)*8) + 7;
5124 extern volatile __bit FERR @ (((unsigned) &RCSTA)*8) + 2;
5126 extern volatile __bit FREE @ (((unsigned) &EECON1)*8) + 4;
5128 extern volatile __bit FVREN @ (((unsigned) &FVRCON)*8) + 7;
5130 extern volatile __bit FVRRDY @ (((unsigned) &FVRCON)*8) + 6;
5132 extern volatile __bit GCEN @ (((unsigned) &SSP1CON2)*8) + 7;
5134 extern volatile __bit GIE @ (((unsigned) &INTCON)*8) + 7;
5136 extern volatile __bit GO @ (((unsigned) &ADCON0)*8) + 1;
5138 extern volatile __bit GO_nDONE @ (((unsigned) &ADCON0)*8) + 1;
5140 extern volatile __bit HFIOFL @ (((unsigned) &OSCSTAT)*8) + 3;
5142 extern volatile __bit HFIOFR @ (((unsigned) &OSCSTAT)*8) + 4;
5144 extern volatile __bit HFIOFS @ (((unsigned) &OSCSTAT)*8) + 0;
5146 extern volatile __bit INTE @ (((unsigned) &INTCON)*8) + 4;
5148 extern volatile __bit INTEDG @ (((unsigned) &OPTION_REG)*8) + 6;
5150 extern volatile __bit INTF @ (((unsigned) &INTCON)*8) + 1;
5152 extern volatile __bit IOCAF0 @ (((unsigned) &IOCAF)*8) + 0;
5154 extern volatile __bit IOCAF1 @ (((unsigned) &IOCAF)*8) + 1;
5156 extern volatile __bit IOCAF2 @ (((unsigned) &IOCAF)*8) + 2;
5158 extern volatile __bit IOCAF3 @ (((unsigned) &IOCAF)*8) + 3;
5160 extern volatile __bit IOCAF4 @ (((unsigned) &IOCAF)*8) + 4;
5162 extern volatile __bit IOCAF5 @ (((unsigned) &IOCAF)*8) + 5;
5164 extern volatile __bit IOCAN0 @ (((unsigned) &IOCAN)*8) + 0;
5166 extern volatile __bit IOCAN1 @ (((unsigned) &IOCAN)*8) + 1;
5168 extern volatile __bit IOCAN2 @ (((unsigned) &IOCAN)*8) + 2;
5170 extern volatile __bit IOCAN3 @ (((unsigned) &IOCAN)*8) + 3;
5172 extern volatile __bit IOCAN4 @ (((unsigned) &IOCAN)*8) + 4;
5174 extern volatile __bit IOCAN5 @ (((unsigned) &IOCAN)*8) + 5;
5176 extern volatile __bit IOCAP0 @ (((unsigned) &IOCAP)*8) + 0;
5178 extern volatile __bit IOCAP1 @ (((unsigned) &IOCAP)*8) + 1;
5180 extern volatile __bit IOCAP2 @ (((unsigned) &IOCAP)*8) + 2;
5182 extern volatile __bit IOCAP3 @ (((unsigned) &IOCAP)*8) + 3;
5184 extern volatile __bit IOCAP4 @ (((unsigned) &IOCAP)*8) + 4;
5186 extern volatile __bit IOCAP5 @ (((unsigned) &IOCAP)*8) + 5;
5188 extern volatile __bit IOCIE @ (((unsigned) &INTCON)*8) + 3;
5190 extern volatile __bit IOCIF @ (((unsigned) &INTCON)*8) + 0;
5192 extern volatile __bit IRCF0 @ (((unsigned) &OSCCON)*8) + 3;
5194 extern volatile __bit IRCF1 @ (((unsigned) &OSCCON)*8) + 4;
5196 extern volatile __bit IRCF2 @ (((unsigned) &OSCCON)*8) + 5;
5198 extern volatile __bit IRCF3 @ (((unsigned) &OSCCON)*8) + 6;
5200 extern volatile __bit LATA0 @ (((unsigned) &LATA)*8) + 0;
5202 extern volatile __bit LATA1 @ (((unsigned) &LATA)*8) + 1;
5204 extern volatile __bit LATA2 @ (((unsigned) &LATA)*8) + 2;
5206 extern volatile __bit LATA4 @ (((unsigned) &LATA)*8) + 4;
5208 extern volatile __bit LATA5 @ (((unsigned) &LATA)*8) + 5;
5210 extern volatile __bit LFIOFR @ (((unsigned) &OSCSTAT)*8) + 1;
5212 extern volatile __bit LWLO @ (((unsigned) &EECON1)*8) + 5;
5214 extern volatile __bit MC1OUT @ (((unsigned) &CMOUT)*8) + 0;
5216 extern volatile __bit MDBIT @ (((unsigned) &MDCON)*8) + 0;
5218 extern volatile __bit MDCH0 @ (((unsigned) &MDCARH)*8) + 0;
5220 extern volatile __bit MDCH1 @ (((unsigned) &MDCARH)*8) + 1;
5222 extern volatile __bit MDCH2 @ (((unsigned) &MDCARH)*8) + 2;
5224 extern volatile __bit MDCH3 @ (((unsigned) &MDCARH)*8) + 3;
5226 extern volatile __bit MDCHODIS @ (((unsigned) &MDCARH)*8) + 7;
5228 extern volatile __bit MDCHPOL @ (((unsigned) &MDCARH)*8) + 6;
5230 extern volatile __bit MDCHSYNC @ (((unsigned) &MDCARH)*8) + 5;
5232 extern volatile __bit MDCL0 @ (((unsigned) &MDCARL)*8) + 0;
5234 extern volatile __bit MDCL1 @ (((unsigned) &MDCARL)*8) + 1;
5236 extern volatile __bit MDCL2 @ (((unsigned) &MDCARL)*8) + 2;
5238 extern volatile __bit MDCL3 @ (((unsigned) &MDCARL)*8) + 3;
5240 extern volatile __bit MDCLODIS @ (((unsigned) &MDCARL)*8) + 7;
5242 extern volatile __bit MDCLPOL @ (((unsigned) &MDCARL)*8) + 6;
5244 extern volatile __bit MDCLSYNC @ (((unsigned) &MDCARL)*8) + 5;
5246 extern volatile __bit MDEN @ (((unsigned) &MDCON)*8) + 7;
5248 extern volatile __bit MDMS0 @ (((unsigned) &MDSRC)*8) + 0;
5250 extern volatile __bit MDMS1 @ (((unsigned) &MDSRC)*8) + 1;
5252 extern volatile __bit MDMS2 @ (((unsigned) &MDSRC)*8) + 2;
5254 extern volatile __bit MDMS3 @ (((unsigned) &MDSRC)*8) + 3;
5256 extern volatile __bit MDMSODIS @ (((unsigned) &MDSRC)*8) + 7;
5258 extern volatile __bit MDOE @ (((unsigned) &MDCON)*8) + 6;
5260 extern volatile __bit MDOPOL @ (((unsigned) &MDCON)*8) + 4;
5262 extern volatile __bit MDOUT @ (((unsigned) &MDCON)*8) + 3;
5264 extern volatile __bit MDSLR @ (((unsigned) &MDCON)*8) + 5;
5266 extern volatile __bit MFIOFR @ (((unsigned) &OSCSTAT)*8) + 2;
5268 extern volatile __bit OERR @ (((unsigned) &RCSTA)*8) + 1;
5270 extern volatile __bit OSFIE @ (((unsigned) &PIE2)*8) + 7;
5272 extern volatile __bit OSFIF @ (((unsigned) &PIR2)*8) + 7;
5274 extern volatile __bit OSTS @ (((unsigned) &OSCSTAT)*8) + 5;
5276 extern volatile __bit P1BSEL @ (((unsigned) &APFCON)*8) + 1;
5278 extern volatile __bit P1DC0 @ (((unsigned) &PWM1CON)*8) + 0;
5280 extern volatile __bit P1DC1 @ (((unsigned) &PWM1CON)*8) + 1;
5282 extern volatile __bit P1DC2 @ (((unsigned) &PWM1CON)*8) + 2;
5284 extern volatile __bit P1DC3 @ (((unsigned) &PWM1CON)*8) + 3;
5286 extern volatile __bit P1DC4 @ (((unsigned) &PWM1CON)*8) + 4;
5288 extern volatile __bit P1DC5 @ (((unsigned) &PWM1CON)*8) + 5;
5290 extern volatile __bit P1DC6 @ (((unsigned) &PWM1CON)*8) + 6;
5292 extern volatile __bit P1M0 @ (((unsigned) &CCP1CON)*8) + 6;
5294 extern volatile __bit P1M1 @ (((unsigned) &CCP1CON)*8) + 7;
5296 extern volatile __bit P1RSEN @ (((unsigned) &PWM1CON)*8) + 7;
5298 extern volatile __bit PCIE @ (((unsigned) &SSP1CON3)*8) + 6;
5300 extern volatile __bit PEIE @ (((unsigned) &INTCON)*8) + 6;
5302 extern volatile __bit PEN @ (((unsigned) &SSP1CON2)*8) + 2;
5304 extern volatile __bit PLLR @ (((unsigned) &OSCSTAT)*8) + 6;
5306 extern volatile __bit PS0 @ (((unsigned) &OPTION_REG)*8) + 0;
5308 extern volatile __bit PS1 @ (((unsigned) &OPTION_REG)*8) + 1;
5310 extern volatile __bit PS2 @ (((unsigned) &OPTION_REG)*8) + 2;
5312 extern volatile __bit PSA @ (((unsigned) &OPTION_REG)*8) + 3;
5314 extern volatile __bit PSS1AC0 @ (((unsigned) &CCP1AS)*8) + 2;
5316 extern volatile __bit PSS1AC1 @ (((unsigned) &CCP1AS)*8) + 3;
5318 extern volatile __bit PSS1BD0 @ (((unsigned) &CCP1AS)*8) + 0;
5320 extern volatile __bit PSS1BD1 @ (((unsigned) &CCP1AS)*8) + 1;
5322 extern volatile __bit RA0 @ (((unsigned) &PORTA)*8) + 0;
5324 extern volatile __bit RA1 @ (((unsigned) &PORTA)*8) + 1;
5326 extern volatile __bit RA2 @ (((unsigned) &PORTA)*8) + 2;
5328 extern volatile __bit RA3 @ (((unsigned) &PORTA)*8) + 3;
5330 extern volatile __bit RA4 @ (((unsigned) &PORTA)*8) + 4;
5332 extern volatile __bit RA5 @ (((unsigned) &PORTA)*8) + 5;
5334 extern volatile __bit RCEN @ (((unsigned) &SSP1CON2)*8) + 3;
5336 extern volatile __bit RCIDL @ (((unsigned) &BAUDCON)*8) + 6;
5338 extern volatile __bit RCIE @ (((unsigned) &PIE1)*8) + 5;
5340 extern volatile __bit RCIF @ (((unsigned) &PIR1)*8) + 5;
5342 extern volatile __bit RD @ (((unsigned) &EECON1)*8) + 0;
5344 extern volatile __bit RSEN @ (((unsigned) &SSP1CON2)*8) + 1;
5346 extern volatile __bit RX9 @ (((unsigned) &RCSTA)*8) + 6;
5348 extern volatile __bit RX9D @ (((unsigned) &RCSTA)*8) + 0;
5350 extern volatile __bit RXDTSEL @ (((unsigned) &APFCON)*8) + 7;
5352 extern volatile __bit R_nW @ (((unsigned) &SSP1STAT)*8) + 2;
5354 extern volatile __bit SBCDE @ (((unsigned) &SSP1CON3)*8) + 2;
5356 extern volatile __bit SBOREN @ (((unsigned) &BORCON)*8) + 7;
5358 extern volatile __bit SCIE @ (((unsigned) &SSP1CON3)*8) + 5;
5360 extern volatile __bit SCKP @ (((unsigned) &BAUDCON)*8) + 4;
5362 extern volatile __bit SCS0 @ (((unsigned) &OSCCON)*8) + 0;
5364 extern volatile __bit SCS1 @ (((unsigned) &OSCCON)*8) + 1;
5366 extern volatile __bit SDAHT @ (((unsigned) &SSP1CON3)*8) + 3;
5368 extern volatile __bit SDO1SEL @ (((unsigned) &APFCON)*8) + 6;
5370 extern volatile __bit SDOSEL @ (((unsigned) &APFCON)*8) + 6;
5372 extern volatile __bit SEN @ (((unsigned) &SSP1CON2)*8) + 0;
5374 extern volatile __bit SENDB @ (((unsigned) &TXSTA)*8) + 3;
5376 extern volatile __bit SMP @ (((unsigned) &SSP1STAT)*8) + 7;
5378 extern volatile __bit SPEN @ (((unsigned) &RCSTA)*8) + 7;
5380 extern volatile __bit SPLLEN @ (((unsigned) &OSCCON)*8) + 7;
5382 extern volatile __bit SRCLK0 @ (((unsigned) &SRCON0)*8) + 4;
5384 extern volatile __bit SRCLK1 @ (((unsigned) &SRCON0)*8) + 5;
5386 extern volatile __bit SRCLK2 @ (((unsigned) &SRCON0)*8) + 6;
5388 extern volatile __bit SREN @ (((unsigned) &RCSTA)*8) + 5;
5390 extern volatile __bit SRLEN @ (((unsigned) &SRCON0)*8) + 7;
5392 extern volatile __bit SRNQEN @ (((unsigned) &SRCON0)*8) + 2;
5394 extern volatile __bit SRPR @ (((unsigned) &SRCON0)*8) + 0;
5396 extern volatile __bit SRPS @ (((unsigned) &SRCON0)*8) + 1;
5398 extern volatile __bit SRQEN @ (((unsigned) &SRCON0)*8) + 3;
5400 extern volatile __bit SRRC1E @ (((unsigned) &SRCON1)*8) + 0;
5402 extern volatile __bit SRRCKE @ (((unsigned) &SRCON1)*8) + 2;
5404 extern volatile __bit SRRPE @ (((unsigned) &SRCON1)*8) + 3;
5406 extern volatile __bit SRSC1E @ (((unsigned) &SRCON1)*8) + 4;
5408 extern volatile __bit SRSCKE @ (((unsigned) &SRCON1)*8) + 6;
5410 extern volatile __bit SRSPE @ (((unsigned) &SRCON1)*8) + 7;
5412 extern volatile __bit SS1SEL @ (((unsigned) &APFCON)*8) + 5;
5414 extern volatile __bit SSP1IE @ (((unsigned) &PIE1)*8) + 3;
5416 extern volatile __bit SSP1IF @ (((unsigned) &PIR1)*8) + 3;
5418 extern volatile __bit SSPEN @ (((unsigned) &SSP1CON1)*8) + 5;
5420 extern volatile __bit SSPM0 @ (((unsigned) &SSP1CON1)*8) + 0;
5422 extern volatile __bit SSPM1 @ (((unsigned) &SSP1CON1)*8) + 1;
5424 extern volatile __bit SSPM2 @ (((unsigned) &SSP1CON1)*8) + 2;
5426 extern volatile __bit SSPM3 @ (((unsigned) &SSP1CON1)*8) + 3;
5428 extern volatile __bit SSPOV @ (((unsigned) &SSP1CON1)*8) + 6;
5430 extern volatile __bit SSSEL @ (((unsigned) &APFCON)*8) + 5;
5432 extern volatile __bit STKOVF @ (((unsigned) &PCON)*8) + 7;
5434 extern volatile __bit STKUNF @ (((unsigned) &PCON)*8) + 6;
5436 extern volatile __bit STR1A @ (((unsigned) &PSTR1CON)*8) + 0;
5438 extern volatile __bit STR1B @ (((unsigned) &PSTR1CON)*8) + 1;
5440 extern volatile __bit STR1SYNC @ (((unsigned) &PSTR1CON)*8) + 4;
5442 extern volatile __bit SWDTEN @ (((unsigned) &WDTCON)*8) + 0;
5444 extern volatile __bit SYNC @ (((unsigned) &TXSTA)*8) + 4;
5446 extern volatile __bit T0CS @ (((unsigned) &OPTION_REG)*8) + 5;
5448 extern volatile __bit T0IE @ (((unsigned) &INTCON)*8) + 5;
5450 extern volatile __bit T0IF @ (((unsigned) &INTCON)*8) + 2;
5452 extern volatile __bit T0SE @ (((unsigned) &OPTION_REG)*8) + 4;
5454 extern volatile __bit T0XCS @ (((unsigned) &CPSCON0)*8) + 0;
5456 extern volatile __bit T1CKPS0 @ (((unsigned) &T1CON)*8) + 4;
5458 extern volatile __bit T1CKPS1 @ (((unsigned) &T1CON)*8) + 5;
5460 extern volatile __bit T1GGO @ (((unsigned) &T1GCON)*8) + 3;
5462 extern volatile __bit T1GGO_nDONE @ (((unsigned) &T1GCON)*8) + 3;
5464 extern volatile __bit T1GPOL @ (((unsigned) &T1GCON)*8) + 6;
5466 extern volatile __bit T1GSEL @ (((unsigned) &APFCON)*8) + 3;
5468 extern volatile __bit T1GSPM @ (((unsigned) &T1GCON)*8) + 4;
5470 extern volatile __bit T1GSS0 @ (((unsigned) &T1GCON)*8) + 0;
5472 extern volatile __bit T1GSS1 @ (((unsigned) &T1GCON)*8) + 1;
5474 extern volatile __bit T1GTM @ (((unsigned) &T1GCON)*8) + 5;
5476 extern volatile __bit T1GVAL @ (((unsigned) &T1GCON)*8) + 2;
5478 extern volatile __bit T1OSCEN @ (((unsigned) &T1CON)*8) + 3;
5480 extern volatile __bit T1OSCR @ (((unsigned) &OSCSTAT)*8) + 7;
5482 extern volatile __bit T2CKPS0 @ (((unsigned) &T2CON)*8) + 0;
5484 extern volatile __bit T2CKPS1 @ (((unsigned) &T2CON)*8) + 1;
5486 extern volatile __bit T2OUTPS0 @ (((unsigned) &T2CON)*8) + 3;
5488 extern volatile __bit T2OUTPS1 @ (((unsigned) &T2CON)*8) + 4;
5490 extern volatile __bit T2OUTPS2 @ (((unsigned) &T2CON)*8) + 5;
5492 extern volatile __bit T2OUTPS3 @ (((unsigned) &T2CON)*8) + 6;
5494 extern volatile __bit TMR0CS @ (((unsigned) &OPTION_REG)*8) + 5;
5496 extern volatile __bit TMR0IE @ (((unsigned) &INTCON)*8) + 5;
5498 extern volatile __bit TMR0IF @ (((unsigned) &INTCON)*8) + 2;
5500 extern volatile __bit TMR0SE @ (((unsigned) &OPTION_REG)*8) + 4;
5502 extern volatile __bit TMR1CS0 @ (((unsigned) &T1CON)*8) + 6;
5504 extern volatile __bit TMR1CS1 @ (((unsigned) &T1CON)*8) + 7;
5506 extern volatile __bit TMR1GE @ (((unsigned) &T1GCON)*8) + 7;
5508 extern volatile __bit TMR1GIE @ (((unsigned) &PIE1)*8) + 7;
5510 extern volatile __bit TMR1GIF @ (((unsigned) &PIR1)*8) + 7;
5512 extern volatile __bit TMR1IE @ (((unsigned) &PIE1)*8) + 0;
5514 extern volatile __bit TMR1IF @ (((unsigned) &PIR1)*8) + 0;
5516 extern volatile __bit TMR1ON @ (((unsigned) &T1CON)*8) + 0;
5518 extern volatile __bit TMR2IE @ (((unsigned) &PIE1)*8) + 1;
5520 extern volatile __bit TMR2IF @ (((unsigned) &PIR1)*8) + 1;
5522 extern volatile __bit TMR2ON @ (((unsigned) &T2CON)*8) + 2;
5524 extern volatile __bit TRISA0 @ (((unsigned) &TRISA)*8) + 0;
5526 extern volatile __bit TRISA1 @ (((unsigned) &TRISA)*8) + 1;
5528 extern volatile __bit TRISA2 @ (((unsigned) &TRISA)*8) + 2;
5530 extern volatile __bit TRISA3 @ (((unsigned) &TRISA)*8) + 3;
5532 extern volatile __bit TRISA4 @ (((unsigned) &TRISA)*8) + 4;
5534 extern volatile __bit TRISA5 @ (((unsigned) &TRISA)*8) + 5;
5536 extern volatile __bit TRMT @ (((unsigned) &TXSTA)*8) + 1;
5538 extern volatile __bit TSEN @ (((unsigned) &FVRCON)*8) + 5;
5540 extern volatile __bit TSRNG @ (((unsigned) &FVRCON)*8) + 4;
5542 extern volatile __bit TUN0 @ (((unsigned) &OSCTUNE)*8) + 0;
5544 extern volatile __bit TUN1 @ (((unsigned) &OSCTUNE)*8) + 1;
5546 extern volatile __bit TUN2 @ (((unsigned) &OSCTUNE)*8) + 2;
5548 extern volatile __bit TUN3 @ (((unsigned) &OSCTUNE)*8) + 3;
5550 extern volatile __bit TUN4 @ (((unsigned) &OSCTUNE)*8) + 4;
5552 extern volatile __bit TUN5 @ (((unsigned) &OSCTUNE)*8) + 5;
5554 extern volatile __bit TX9 @ (((unsigned) &TXSTA)*8) + 6;
5556 extern volatile __bit TX9D @ (((unsigned) &TXSTA)*8) + 0;
5558 extern volatile __bit TXCKSEL @ (((unsigned) &APFCON)*8) + 2;
5560 extern volatile __bit TXEN @ (((unsigned) &TXSTA)*8) + 5;
5562 extern volatile __bit TXIE @ (((unsigned) &PIE1)*8) + 4;
5564 extern volatile __bit TXIF @ (((unsigned) &PIR1)*8) + 4;
5566 extern volatile __bit UA @ (((unsigned) &SSP1STAT)*8) + 1;
5568 extern volatile __bit VREGPM0 @ (((unsigned) &VREGCON)*8) + 0;
5570 extern volatile __bit VREGPM1 @ (((unsigned) &VREGCON)*8) + 1;
5572 extern volatile __bit WCOL @ (((unsigned) &SSP1CON1)*8) + 7;
5574 extern volatile __bit WDTPS0 @ (((unsigned) &WDTCON)*8) + 1;
5576 extern volatile __bit WDTPS1 @ (((unsigned) &WDTCON)*8) + 2;
5578 extern volatile __bit WDTPS2 @ (((unsigned) &WDTCON)*8) + 3;
5580 extern volatile __bit WDTPS3 @ (((unsigned) &WDTCON)*8) + 4;
5582 extern volatile __bit WDTPS4 @ (((unsigned) &WDTCON)*8) + 5;
5584 extern volatile __bit WPUA0 @ (((unsigned) &WPUA)*8) + 0;
5586 extern volatile __bit WPUA1 @ (((unsigned) &WPUA)*8) + 1;
5588 extern volatile __bit WPUA2 @ (((unsigned) &WPUA)*8) + 2;
5590 extern volatile __bit WPUA3 @ (((unsigned) &WPUA)*8) + 3;
5592 extern volatile __bit WPUA4 @ (((unsigned) &WPUA)*8) + 4;
5594 extern volatile __bit WPUA5 @ (((unsigned) &WPUA)*8) + 5;
5596 extern volatile __bit WR @ (((unsigned) &EECON1)*8) + 1;
5598 extern volatile __bit WREN @ (((unsigned) &EECON1)*8) + 2;
5600 extern volatile __bit WRERR @ (((unsigned) &EECON1)*8) + 3;
5602 extern volatile __bit WUE @ (((unsigned) &BAUDCON)*8) + 1;
5604 extern volatile __bit ZERO @ (((unsigned) &STATUS)*8) + 2;
5606 extern volatile __bit Z_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 2;
5608 extern volatile __bit nBOR @ (((unsigned) &PCON)*8) + 0;
5610 extern volatile __bit nPD @ (((unsigned) &STATUS)*8) + 3;
5612 extern volatile __bit nPOR @ (((unsigned) &PCON)*8) + 1;
5614 extern volatile __bit nRI @ (((unsigned) &PCON)*8) + 2;
5616 extern volatile __bit nRMCLR @ (((unsigned) &PCON)*8) + 3;
5618 extern volatile __bit nT1SYNC @ (((unsigned) &T1CON)*8) + 2;
5620 extern volatile __bit nTO @ (((unsigned) &STATUS)*8) + 4;
5622 extern volatile __bit nWPUEN @ (((unsigned) &OPTION_REG)*8) + 7;
5625 void ConfigureOscillator(void);
5629 bool msg_empty(void);
5630 void msg_write(const char *msg);
5631 void msg_writebyte(const char msg);
5632 void msg_sendnext(void);
5633 void tohex(char val[3], char i);
5634 void msg_recvnext(void);
5635 bool msg_recvready(void);
5636 char msg_recv(void);
5639 void int_disable(void);
5640 void int_enable(void);
5643 bool OW_reset(void);
5644 void OW_write_bit(bool val);
5646 void OW_write_byte(unsigned char byte);
5647 unsigned char OW_read_byte(void);
5649 void OW_search_init();
5650 bool OW_search(void);
5651 void OW_start(void);
5654 bool OW_parasite(void);
5655 void OW_read_block(uint8_t code, uint8_t * data, uint8_t len);
5659 inline void drive_OW_low(void);
5660 inline void drive_OW_high(void);
5661 inline void float_OW(void);
5662 inline bool read_OW(void);
5664 extern unsigned char romid[8];
5667 inline void drive_OW_low(void)
5670 TRISAbits.TRISA5 = 0;
5673 inline void drive_OW_high(void)
5676 TRISAbits.TRISA5 = 0;
5679 inline void float_OW(void)
5681 TRISAbits.TRISA5 = 1;
5684 inline bool read_OW(void)
5686 TRISAbits.TRISA5 = 1;
5687 return PORTAbits.RA5;
5702 { PORTAbits.RA5 = 0; TRISAbits.TRISA5 = 0; };
5705 { TRISAbits.TRISA5 = 1; };
5707 presence = (PORTAbits.RA5);
5714 void OW_write_bit(bool val)
5718 { PORTAbits.RA5 = 0; TRISAbits.TRISA5 = 0; };
5722 if (val) { TRISAbits.TRISA5 = 1; };
5724 { TRISAbits.TRISA5 = 1; };
5735 { PORTAbits.RA5 = 0; TRISAbits.TRISA5 = 0; };
5742 { TRISAbits.TRISA5 = 1; };
5754 void OW_write_byte(unsigned char byte)
5756 for (char i=8; i!=0; i--)
5758 OW_write_bit( byte & 0x01 );
5763 unsigned char OW_read_byte(void)
5765 unsigned char byte = 0;
5766 for (char i=8; i!=0; i--)
5776 static const unsigned char dscrc_table[] = {
5777 0, 94,188,226, 97, 63,221,131,194,156,126, 32,163,253, 31, 65,
5778 157,195, 33,127,252,162, 64, 30, 95, 1,227,189, 62, 96,130,220,
5779 35,125,159,193, 66, 28,254,160,225,191, 93, 3,128,222, 60, 98,
5780 190,224, 2, 92,223,129, 99, 61,124, 34,192,158, 29, 67,161,255,
5781 70, 24,250,164, 39,121,155,197,132,218, 56,102,229,187, 89, 7,
5782 219,133,103, 57,186,228, 6, 88, 25, 71,165,251,120, 38,196,154,
5783 101, 59,217,135, 4, 90,184,230,167,249, 27, 69,198,152,122, 36,
5784 248,166, 68, 26,153,199, 37,123, 58,100,134,216, 91, 5,231,185,
5785 140,210, 48,110,237,179, 81, 15, 78, 16,242,172, 47,113,147,205,
5786 17, 79,173,243,112, 46,204,146,211,141,111, 49,178,236, 14, 80,
5787 175,241, 19, 77,206,144,114, 44,109, 51,209,143, 12, 82,176,238,
5788 50,108,142,208, 83, 13,239,177,240,174, 76, 18,145,207, 45,115,
5789 202,148,118, 40,171,245, 23, 73, 8, 86,180,234,105, 55,213,139,
5790 87, 9,235,181, 54,104,138,212,149,203, 41,119,244,170, 72, 22,
5791 233,183, 85, 11,136,214, 52,106, 43,117,151,201, 74, 20,246,168,
5792 116, 42,200,150, 21, 75,169,247,182,232, 10, 84,215,137,107, 53
5795 unsigned char romid[8];
5796 char LastDiscrepancy = 0;
5797 char LastFamilyDiscrepancy = 0;
5798 char LastDeviceFlag = 0;
5801 static unsigned char docrc8(unsigned char value)
5803 crc8 = dscrc_table[crc8 ^ value];
5810 char id_bit_number = 1;
5812 char rom_byte_number = 0;
5813 char search_result = 0;
5814 unsigned char rom_byte_mask = 1;
5815 unsigned char search_direction;
5823 if (!LastDeviceFlag) {
5826 msg_write("Reset said nothing there.\r\n");
5828 LastDiscrepancy = 0;
5830 LastFamilyDiscrepancy = 0;
5836 OW_write_byte(0xF0);
5841 bool id_bit = OW_read_bit();
5843 bool cmp_id_bit = OW_read_bit();
5846 if (id_bit && cmp_id_bit) {
5850 if (id_bit != cmp_id_bit) {
5852 search_direction = id_bit;
5858 if (id_bit_number < LastDiscrepancy) {
5859 search_direction = ((romid[rom_byte_number] & rom_byte_mask) > 0);
5862 search_direction = (id_bit_number == LastDiscrepancy);
5866 if (search_direction == 0)
5868 last_zero = id_bit_number;
5871 LastFamilyDiscrepancy = last_zero;
5877 if (search_direction == 1)
5878 romid[rom_byte_number] |= rom_byte_mask;
5880 romid[rom_byte_number] &= ~rom_byte_mask;
5883 OW_write_bit(search_direction);
5888 rom_byte_mask <<= 1;
5891 if (rom_byte_mask == 0)
5893 docrc8(romid[rom_byte_number]);
5897 } while (rom_byte_number < 8);
5901 if (!(id_bit_number < 65 || crc8 != 0))
5904 LastDiscrepancy = last_zero;
5907 if (LastDiscrepancy == 0)
5913 if (!search_result || !romid[0])
5915 LastDiscrepancy = 0;
5917 LastFamilyDiscrepancy = 0;
5922 return search_result;
5926 void OW_search_init()
5928 LastDiscrepancy = 0;
5930 LastFamilyDiscrepancy = 0;
5932 for (int j=0; j<8; j++) romid[j]=0;
5942 OW_write_byte(0x33);
5943 for (int j=0; j<8; j++)
5944 romid[j] = OW_read_byte();
5949 bool OW_parasite(void)
5953 OW_write_byte(0xCC);
5954 OW_write_byte(0xB4);
5955 bool no = OW_read_bit();
5961 static void OW_select_id(void)
5963 if (romid[0] == 0) {
5964 OW_write_byte(0xCC);
5966 OW_write_byte(0x55);
5967 for (int8_t j=0; j<8; j++) {
5968 OW_write_byte(romid[j]);
5975 void OW_read_block(uint8_t code, uint8_t * data, uint8_t len)
5980 OW_write_byte(code);
5981 for (int8_t j=0; j<len; j++)
5982 data[j] = OW_read_byte();
5987 void OW_write_block(uint8_t code, uint8_t * data, uint8_t len)
5992 OW_write_byte(code);
5993 for (int8_t j=0; j<len; j++) {
5994 OW_write_byte(data[j]);
6004 bool para = OW_parasite();
6010 OW_write_byte(0x44);
6013 { PORTAbits.RA5 = 1; TRISAbits.TRISA5 = 0; };
6023 } while (!OW_read_bit());