2 * pic18f24j10.h - device specific declarations
4 * This file is part of the GNU PIC library for SDCC,
5 * originally devised by Vangelis Rokas <vrokas AT otenet.gr>
7 * It has been automatically generated by inc2h-pic16.pl,
8 * (c) 2007 by Raphael Neider <rneider AT web.de>
11 #ifndef __PIC18F24J10_H__
12 #define __PIC18F24J10_H__ 1
14 #define _DEVID1 0x3FFFFE
15 #define _DEVID2 0x3FFFFF
17 extern __sfr __at (0xF80) PORTA;
55 unsigned C2OUT_PORTA : 1;
70 extern volatile __PORTAbits_t __at (0xF80) PORTAbits;
72 extern __sfr __at (0xF81) PORTB;
88 unsigned CCP2_PORTB : 1;
110 unsigned C1OUT_PORTB : 1;
115 extern volatile __PORTBbits_t __at (0xF81) PORTBbits;
117 extern __sfr __at (0xF82) PORTC;
141 unsigned CCP2_PORTC : 1;
170 extern volatile __PORTCbits_t __at (0xF82) PORTCbits;
172 extern __sfr __at (0xF89) LATA;
185 extern volatile __LATAbits_t __at (0xF89) LATAbits;
187 extern __sfr __at (0xF8A) LATB;
200 extern volatile __LATBbits_t __at (0xF8A) LATBbits;
202 extern __sfr __at (0xF8B) LATC;
215 extern volatile __LATCbits_t __at (0xF8B) LATCbits;
217 extern __sfr __at (0xF92) DDRA;
230 extern volatile __DDRAbits_t __at (0xF92) DDRAbits;
232 extern __sfr __at (0xF92) TRISA;
245 extern volatile __TRISAbits_t __at (0xF92) TRISAbits;
247 extern __sfr __at (0xF93) DDRB;
260 extern volatile __DDRBbits_t __at (0xF93) DDRBbits;
262 extern __sfr __at (0xF93) TRISB;
275 extern volatile __TRISBbits_t __at (0xF93) TRISBbits;
277 extern __sfr __at (0xF94) DDRC;
290 extern volatile __DDRCbits_t __at (0xF94) DDRCbits;
292 extern __sfr __at (0xF94) TRISC;
305 extern volatile __TRISCbits_t __at (0xF94) TRISCbits;
307 extern __sfr __at (0xF9B) OSCTUNE;
320 extern volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
322 extern __sfr __at (0xF9D) PIE1;
345 extern volatile __PIE1bits_t __at (0xF9D) PIE1bits;
347 extern __sfr __at (0xF9E) PIR1;
370 extern volatile __PIR1bits_t __at (0xF9E) PIR1bits;
372 extern __sfr __at (0xF9F) IPR1;
395 extern volatile __IPR1bits_t __at (0xF9F) IPR1bits;
397 extern __sfr __at (0xFA0) PIE2;
420 extern volatile __PIE2bits_t __at (0xFA0) PIE2bits;
422 extern __sfr __at (0xFA1) PIR2;
445 extern volatile __PIR2bits_t __at (0xFA1) PIR2bits;
447 extern __sfr __at (0xFA2) IPR2;
470 extern volatile __IPR2bits_t __at (0xFA2) IPR2bits;
472 extern __sfr __at (0xFA3) PIE3;
485 extern volatile __PIE3bits_t __at (0xFA3) PIE3bits;
487 extern __sfr __at (0xFA4) PIR3;
500 extern volatile __PIR3bits_t __at (0xFA4) PIR3bits;
502 extern __sfr __at (0xFA5) IPR3;
515 extern volatile __IPR3bits_t __at (0xFA5) IPR3bits;
517 extern __sfr __at (0xFA6) EECON1;
530 extern volatile __EECON1bits_t __at (0xFA6) EECON1bits;
532 extern __sfr __at (0xFA7) EECON2;
534 extern __sfr __at (0xFAB) RCSTA;
563 unsigned NOT_RC8 : 1;
577 extern volatile __RCSTAbits_t __at (0xFAB) RCSTAbits;
579 extern __sfr __at (0xFAB) RCSTA1;
608 unsigned NOT_RC8 : 1;
622 extern volatile __RCSTA1bits_t __at (0xFAB) RCSTA1bits;
624 extern __sfr __at (0xFAC) TXSTA;
653 unsigned NOT_TX8 : 1;
657 extern volatile __TXSTAbits_t __at (0xFAC) TXSTAbits;
659 extern __sfr __at (0xFAC) TXSTA1;
688 unsigned NOT_TX8 : 1;
692 extern volatile __TXSTA1bits_t __at (0xFAC) TXSTA1bits;
694 extern __sfr __at (0xFAD) TXREG;
696 extern __sfr __at (0xFAD) TXREG1;
698 extern __sfr __at (0xFAE) RCREG;
700 extern __sfr __at (0xFAE) RCREG1;
702 extern __sfr __at (0xFAF) SPBRG;
704 extern __sfr __at (0xFAF) SPBRG1;
706 extern __sfr __at (0xFB0) SPBRGH;
708 extern __sfr __at (0xFB4) CMCON;
717 unsigned C1OUT_CMCON : 1;
718 unsigned C2OUT_CMCON : 1;
721 extern volatile __CMCONbits_t __at (0xFB4) CMCONbits;
723 extern __sfr __at (0xFB5) CVRCON;
736 extern volatile __CVRCONbits_t __at (0xFB5) CVRCONbits;
738 extern __sfr __at (0xFB6) ECCP1AS;
745 unsigned ECCPAS0 : 1;
746 unsigned ECCPAS1 : 1;
747 unsigned ECCPAS2 : 1;
748 unsigned ECCPASE : 1;
751 extern volatile __ECCP1ASbits_t __at (0xFB6) ECCP1ASbits;
753 extern __sfr __at (0xFB7) ECCP1DEL;
766 extern volatile __ECCP1DELbits_t __at (0xFB7) ECCP1DELbits;
768 extern __sfr __at (0xFB7) PWM1CON;
781 extern volatile __PWM1CONbits_t __at (0xFB7) PWM1CONbits;
783 extern __sfr __at (0xFB8) BAUDCON;
806 extern volatile __BAUDCONbits_t __at (0xFB8) BAUDCONbits;
808 extern __sfr __at (0xFB8) BAUDCTL;
831 extern volatile __BAUDCTLbits_t __at (0xFB8) BAUDCTLbits;
833 extern __sfr __at (0xFBA) CCP2CON;
856 extern volatile __CCP2CONbits_t __at (0xFBA) CCP2CONbits;
858 extern __sfr __at (0xFBB) CCPR2;
860 extern __sfr __at (0xFBB) CCPR2L;
862 extern __sfr __at (0xFBC) CCPR2H;
864 extern __sfr __at (0xFBD) CCP1CON;
887 extern volatile __CCP1CONbits_t __at (0xFBD) CCP1CONbits;
889 extern __sfr __at (0xFBE) CCPR1;
891 extern __sfr __at (0xFBE) CCPR1L;
893 extern __sfr __at (0xFBF) CCPR1H;
895 extern __sfr __at (0xFC0) ADCON2;
908 extern volatile __ADCON2bits_t __at (0xFC0) ADCON2bits;
910 extern __sfr __at (0xFC1) ADCON1;
923 extern volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
925 extern __sfr __at (0xFC2) ADCON0;
939 unsigned GO_DONE : 1;
959 unsigned NOT_DONE : 1;
968 extern volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
970 extern __sfr __at (0xFC3) ADRES;
972 extern __sfr __at (0xFC3) ADRESL;
974 extern __sfr __at (0xFC4) ADRESH;
976 extern __sfr __at (0xFC5) SSP1CON2;
985 unsigned ACKSTAT : 1;
989 extern volatile __SSP1CON2bits_t __at (0xFC5) SSP1CON2bits;
991 extern __sfr __at (0xFC5) SSPCON2;
1000 unsigned ACKSTAT : 1;
1004 extern volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
1006 extern __sfr __at (0xFC6) SSP1CON1;
1019 extern volatile __SSP1CON1bits_t __at (0xFC6) SSP1CON1bits;
1021 extern __sfr __at (0xFC6) SSPCON1;
1034 extern volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
1036 extern __sfr __at (0xFC7) SSP1STAT;
1051 unsigned I2C_READ : 1;
1052 unsigned I2C_START : 1;
1053 unsigned I2C_STOP : 1;
1054 unsigned I2C_DAT : 1;
1071 unsigned NOT_WRITE : 1;
1074 unsigned NOT_ADDRESS : 1;
1081 unsigned READ_WRITE : 1;
1084 unsigned DATA_ADDRESS : 1;
1099 extern volatile __SSP1STATbits_t __at (0xFC7) SSP1STATbits;
1101 extern __sfr __at (0xFC7) SSPSTAT;
1116 unsigned I2C_READ : 1;
1117 unsigned I2C_START : 1;
1118 unsigned I2C_STOP : 1;
1119 unsigned I2C_DAT : 1;
1136 unsigned NOT_WRITE : 1;
1139 unsigned NOT_ADDRESS : 1;
1146 unsigned READ_WRITE : 1;
1149 unsigned DATA_ADDRESS : 1;
1164 extern volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
1166 extern __sfr __at (0xFC8) SSP1ADD;
1168 extern __sfr __at (0xFC8) SSPADD;
1170 extern __sfr __at (0xFC9) SSP1BUF;
1172 extern __sfr __at (0xFC9) SSPBUF;
1174 extern __sfr __at (0xFCA) T2CON;
1177 unsigned T2CKPS0 : 1;
1178 unsigned T2CKPS1 : 1;
1179 unsigned TMR2ON : 1;
1180 unsigned T2OUTPS0 : 1;
1181 unsigned T2OUTPS1 : 1;
1182 unsigned T2OUTPS2 : 1;
1183 unsigned T2OUTPS3 : 1;
1190 unsigned TOUTPS0 : 1;
1191 unsigned TOUTPS1 : 1;
1192 unsigned TOUTPS2 : 1;
1193 unsigned TOUTPS3 : 1;
1197 extern volatile __T2CONbits_t __at (0xFCA) T2CONbits;
1199 extern __sfr __at (0xFCB) PR2;
1201 extern __sfr __at (0xFCC) TMR2;
1203 extern __sfr __at (0xFCD) T1CON;
1206 unsigned TMR1ON : 1;
1207 unsigned TMR1CS : 1;
1208 unsigned T1SYNC : 1;
1209 unsigned T1OSCEN : 1;
1210 unsigned T1CKPS0 : 1;
1211 unsigned T1CKPS1 : 1;
1218 unsigned T1INSYNC : 1;
1228 unsigned NOT_T1SYNC : 1;
1236 extern volatile __T1CONbits_t __at (0xFCD) T1CONbits;
1238 extern __sfr __at (0xFCE) TMR1L;
1240 extern __sfr __at (0xFCF) TMR1H;
1242 extern __sfr __at (0xFD0) RCON;
1245 unsigned NOT_BOR : 1;
1246 unsigned NOT_POR : 1;
1247 unsigned NOT_PD : 1;
1248 unsigned NOT_TO : 1;
1249 unsigned NOT_RI : 1;
1265 extern volatile __RCONbits_t __at (0xFD0) RCONbits;
1267 extern __sfr __at (0xFD1) WDTCON;
1280 unsigned SWDTEN : 1;
1290 extern volatile __WDTCONbits_t __at (0xFD1) WDTCONbits;
1292 extern __sfr __at (0xFD3) OSCCON;
1305 extern volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
1307 extern __sfr __at (0xFD5) T0CON;
1316 unsigned T08BIT : 1;
1317 unsigned TMR0ON : 1;
1320 extern volatile __T0CONbits_t __at (0xFD5) T0CONbits;
1322 extern __sfr __at (0xFD6) TMR0L;
1324 extern __sfr __at (0xFD7) TMR0H;
1326 extern __sfr __at (0xFD8) STATUS;
1339 extern volatile __STATUSbits_t __at (0xFD8) STATUSbits;
1341 extern __sfr __at (0xFD9) FSR2L;
1343 extern __sfr __at (0xFDA) FSR2H;
1345 extern __sfr __at (0xFDB) PLUSW2;
1347 extern __sfr __at (0xFDC) PREINC2;
1349 extern __sfr __at (0xFDD) POSTDEC2;
1351 extern __sfr __at (0xFDE) POSTINC2;
1353 extern __sfr __at (0xFDF) INDF2;
1355 extern __sfr __at (0xFE0) BSR;
1357 extern __sfr __at (0xFE1) FSR1L;
1359 extern __sfr __at (0xFE2) FSR1H;
1361 extern __sfr __at (0xFE3) PLUSW1;
1363 extern __sfr __at (0xFE4) PREINC1;
1365 extern __sfr __at (0xFE5) POSTDEC1;
1367 extern __sfr __at (0xFE6) POSTINC1;
1369 extern __sfr __at (0xFE7) INDF1;
1371 extern __sfr __at (0xFE8) WREG;
1373 extern __sfr __at (0xFE9) FSR0L;
1375 extern __sfr __at (0xFEA) FSR0H;
1377 extern __sfr __at (0xFEB) PLUSW0;
1379 extern __sfr __at (0xFEC) PREINC0;
1381 extern __sfr __at (0xFED) POSTDEC0;
1383 extern __sfr __at (0xFEE) POSTINC0;
1385 extern __sfr __at (0xFEF) INDF0;
1387 extern __sfr __at (0xFF0) INTCON3;
1400 unsigned INT1IF : 1;
1401 unsigned INT2IF : 1;
1403 unsigned INT1IE : 1;
1404 unsigned INT2IE : 1;
1406 unsigned INT1IP : 1;
1407 unsigned INT2IP : 1;
1410 extern volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
1412 extern __sfr __at (0xFF1) INTCON2;
1419 unsigned INTEDG2 : 1;
1420 unsigned INTEDG1 : 1;
1421 unsigned INTEDG0 : 1;
1422 unsigned NOT_RBPU : 1;
1427 unsigned TMR0IP : 1;
1435 extern volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
1437 extern __sfr __at (0xFF2) INTCON;
1451 unsigned INT0IF : 1;
1452 unsigned TMR0IF : 1;
1454 unsigned INT0IE : 1;
1455 unsigned TMR0IE : 1;
1460 extern volatile __INTCONbits_t __at (0xFF2) INTCONbits;
1462 extern __sfr __at (0xFF3) PROD;
1464 extern __sfr __at (0xFF3) PRODL;
1466 extern __sfr __at (0xFF4) PRODH;
1468 extern __sfr __at (0xFF5) TABLAT;
1470 extern __sfr __at (0xFF6) TBLPTR;
1472 extern __sfr __at (0xFF6) TBLPTRL;
1474 extern __sfr __at (0xFF7) TBLPTRH;
1476 extern __sfr __at (0xFF8) TBLPTRU;
1478 extern __sfr __at (0xFF9) PC;
1480 extern __sfr __at (0xFF9) PCL;
1482 extern __sfr __at (0xFFA) PCLATH;
1484 extern __sfr __at (0xFFB) PCLATU;
1486 extern __sfr __at (0xFFC) STKPTR;
1489 unsigned STKPTR0 : 1;
1490 unsigned STKPTR1 : 1;
1491 unsigned STKPTR2 : 1;
1492 unsigned STKPTR3 : 1;
1493 unsigned STKPTR4 : 1;
1495 unsigned STKUNF : 1;
1496 unsigned STKOVF : 1;
1506 unsigned STKFUL : 1;
1509 extern volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
1511 extern __sfr __at (0xFFD) TOS;
1513 extern __sfr __at (0xFFD) TOSL;
1515 extern __sfr __at (0xFFE) TOSH;
1517 extern __sfr __at (0xFFF) TOSU;