2 * pic18f44j10.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 __PIC18F44J10_H__
12 #define __PIC18F44J10_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 (0xF83) PORTD;
208 unsigned NOT_SS2 : 1;
215 extern volatile __PORTDbits_t __at (0xF83) PORTDbits;
217 extern __sfr __at (0xF84) PORTE;
260 extern volatile __PORTEbits_t __at (0xF84) PORTEbits;
262 extern __sfr __at (0xF85) SSP2CON2;
271 unsigned ACKSTAT : 1;
275 extern volatile __SSP2CON2bits_t __at (0xF85) SSP2CON2bits;
277 extern __sfr __at (0xF86) SSP2CON1;
290 extern volatile __SSP2CON1bits_t __at (0xF86) SSP2CON1bits;
292 extern __sfr __at (0xF87) SSP2STAT;
307 unsigned I2C_READ : 1;
308 unsigned I2C_START : 1;
309 unsigned I2C_STOP : 1;
310 unsigned I2C_DAT : 1;
327 unsigned NOT_WRITE : 1;
330 unsigned NOT_ADDRESS : 1;
337 unsigned READ_WRITE : 1;
340 unsigned DATA_ADDRESS : 1;
355 extern volatile __SSP2STATbits_t __at (0xF87) SSP2STATbits;
357 extern __sfr __at (0xF88) SSP2ADD;
359 extern __sfr __at (0xF89) LATA;
372 extern volatile __LATAbits_t __at (0xF89) LATAbits;
374 extern __sfr __at (0xF8A) LATB;
387 extern volatile __LATBbits_t __at (0xF8A) LATBbits;
389 extern __sfr __at (0xF8B) LATC;
402 extern volatile __LATCbits_t __at (0xF8B) LATCbits;
404 extern __sfr __at (0xF8C) LATD;
417 extern volatile __LATDbits_t __at (0xF8C) LATDbits;
419 extern __sfr __at (0xF8D) LATE;
432 extern volatile __LATEbits_t __at (0xF8D) LATEbits;
434 extern __sfr __at (0xF8E) SSP2BUF;
436 extern __sfr __at (0xF92) DDRA;
449 extern volatile __DDRAbits_t __at (0xF92) DDRAbits;
451 extern __sfr __at (0xF92) TRISA;
464 extern volatile __TRISAbits_t __at (0xF92) TRISAbits;
466 extern __sfr __at (0xF93) DDRB;
479 extern volatile __DDRBbits_t __at (0xF93) DDRBbits;
481 extern __sfr __at (0xF93) TRISB;
494 extern volatile __TRISBbits_t __at (0xF93) TRISBbits;
496 extern __sfr __at (0xF94) DDRC;
509 extern volatile __DDRCbits_t __at (0xF94) DDRCbits;
511 extern __sfr __at (0xF94) TRISC;
524 extern volatile __TRISCbits_t __at (0xF94) TRISCbits;
526 extern __sfr __at (0xF95) DDRD;
539 extern volatile __DDRDbits_t __at (0xF95) DDRDbits;
541 extern __sfr __at (0xF95) TRISD;
554 extern volatile __TRISDbits_t __at (0xF95) TRISDbits;
556 extern __sfr __at (0xF96) DDRE;
569 extern volatile __DDREbits_t __at (0xF96) DDREbits;
571 extern __sfr __at (0xF96) TRISE;
578 unsigned PSPMODE : 1;
584 extern volatile __TRISEbits_t __at (0xF96) TRISEbits;
586 extern __sfr __at (0xF9B) OSCTUNE;
599 extern volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
601 extern __sfr __at (0xF9D) PIE1;
624 extern volatile __PIE1bits_t __at (0xF9D) PIE1bits;
626 extern __sfr __at (0xF9E) PIR1;
649 extern volatile __PIR1bits_t __at (0xF9E) PIR1bits;
651 extern __sfr __at (0xF9F) IPR1;
674 extern volatile __IPR1bits_t __at (0xF9F) IPR1bits;
676 extern __sfr __at (0xFA0) PIE2;
699 extern volatile __PIE2bits_t __at (0xFA0) PIE2bits;
701 extern __sfr __at (0xFA1) PIR2;
724 extern volatile __PIR2bits_t __at (0xFA1) PIR2bits;
726 extern __sfr __at (0xFA2) IPR2;
749 extern volatile __IPR2bits_t __at (0xFA2) IPR2bits;
751 extern __sfr __at (0xFA3) PIE3;
764 extern volatile __PIE3bits_t __at (0xFA3) PIE3bits;
766 extern __sfr __at (0xFA4) PIR3;
779 extern volatile __PIR3bits_t __at (0xFA4) PIR3bits;
781 extern __sfr __at (0xFA5) IPR3;
794 extern volatile __IPR3bits_t __at (0xFA5) IPR3bits;
796 extern __sfr __at (0xFA6) EECON1;
809 extern volatile __EECON1bits_t __at (0xFA6) EECON1bits;
811 extern __sfr __at (0xFA7) EECON2;
813 extern __sfr __at (0xFAB) RCSTA;
842 unsigned NOT_RC8 : 1;
856 extern volatile __RCSTAbits_t __at (0xFAB) RCSTAbits;
858 extern __sfr __at (0xFAB) RCSTA1;
887 unsigned NOT_RC8 : 1;
901 extern volatile __RCSTA1bits_t __at (0xFAB) RCSTA1bits;
903 extern __sfr __at (0xFAC) TXSTA;
932 unsigned NOT_TX8 : 1;
936 extern volatile __TXSTAbits_t __at (0xFAC) TXSTAbits;
938 extern __sfr __at (0xFAC) TXSTA1;
967 unsigned NOT_TX8 : 1;
971 extern volatile __TXSTA1bits_t __at (0xFAC) TXSTA1bits;
973 extern __sfr __at (0xFAD) TXREG;
975 extern __sfr __at (0xFAD) TXREG1;
977 extern __sfr __at (0xFAE) RCREG;
979 extern __sfr __at (0xFAE) RCREG1;
981 extern __sfr __at (0xFAF) SPBRG;
983 extern __sfr __at (0xFAF) SPBRG1;
985 extern __sfr __at (0xFB0) SPBRGH;
987 extern __sfr __at (0xFB4) CMCON;
996 unsigned C1OUT_CMCON : 1;
997 unsigned C2OUT_CMCON : 1;
1000 extern volatile __CMCONbits_t __at (0xFB4) CMCONbits;
1002 extern __sfr __at (0xFB5) CVRCON;
1015 extern volatile __CVRCONbits_t __at (0xFB5) CVRCONbits;
1017 extern __sfr __at (0xFB6) ECCP1AS;
1020 unsigned PSSBD0 : 1;
1021 unsigned PSSBD1 : 1;
1022 unsigned PSSAC0 : 1;
1023 unsigned PSSAC1 : 1;
1024 unsigned ECCPAS0 : 1;
1025 unsigned ECCPAS1 : 1;
1026 unsigned ECCPAS2 : 1;
1027 unsigned ECCPASE : 1;
1030 extern volatile __ECCP1ASbits_t __at (0xFB6) ECCP1ASbits;
1032 extern __sfr __at (0xFB7) ECCP1DEL;
1045 extern volatile __ECCP1DELbits_t __at (0xFB7) ECCP1DELbits;
1047 extern __sfr __at (0xFB7) PWM1CON;
1060 extern volatile __PWM1CONbits_t __at (0xFB7) PWM1CONbits;
1062 extern __sfr __at (0xFB8) BAUDCON;
1072 unsigned ABDOVF : 1;
1085 extern volatile __BAUDCONbits_t __at (0xFB8) BAUDCONbits;
1087 extern __sfr __at (0xFB8) BAUDCTL;
1097 unsigned ABDOVF : 1;
1110 extern volatile __BAUDCTLbits_t __at (0xFB8) BAUDCTLbits;
1112 extern __sfr __at (0xFBA) CCP2CON;
1115 unsigned CCP2M0 : 1;
1116 unsigned CCP2M1 : 1;
1117 unsigned CCP2M2 : 1;
1118 unsigned CCP2M3 : 1;
1135 extern volatile __CCP2CONbits_t __at (0xFBA) CCP2CONbits;
1137 extern __sfr __at (0xFBB) CCPR2;
1139 extern __sfr __at (0xFBB) CCPR2L;
1141 extern __sfr __at (0xFBC) CCPR2H;
1143 extern __sfr __at (0xFBD) CCP1CON;
1146 unsigned CCP1M0 : 1;
1147 unsigned CCP1M1 : 1;
1148 unsigned CCP1M2 : 1;
1149 unsigned CCP1M3 : 1;
1166 extern volatile __CCP1CONbits_t __at (0xFBD) CCP1CONbits;
1168 extern __sfr __at (0xFBD) ECCP1CON;
1171 unsigned CCP1M0 : 1;
1172 unsigned CCP1M1 : 1;
1173 unsigned CCP1M2 : 1;
1174 unsigned CCP1M3 : 1;
1191 extern volatile __ECCP1CONbits_t __at (0xFBD) ECCP1CONbits;
1193 extern __sfr __at (0xFBE) CCPR1;
1195 extern __sfr __at (0xFBE) CCPR1L;
1197 extern __sfr __at (0xFBF) CCPR1H;
1199 extern __sfr __at (0xFC0) ADCON2;
1212 extern volatile __ADCON2bits_t __at (0xFC0) ADCON2bits;
1214 extern __sfr __at (0xFC1) ADCON1;
1227 extern volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
1229 extern __sfr __at (0xFC2) ADCON0;
1243 unsigned GO_DONE : 1;
1263 unsigned NOT_DONE : 1;
1272 extern volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
1274 extern __sfr __at (0xFC3) ADRES;
1276 extern __sfr __at (0xFC3) ADRESL;
1278 extern __sfr __at (0xFC4) ADRESH;
1280 extern __sfr __at (0xFC5) SSP1CON2;
1289 unsigned ACKSTAT : 1;
1293 extern volatile __SSP1CON2bits_t __at (0xFC5) SSP1CON2bits;
1295 extern __sfr __at (0xFC5) SSPCON2;
1304 unsigned ACKSTAT : 1;
1308 extern volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
1310 extern __sfr __at (0xFC6) SSP1CON1;
1323 extern volatile __SSP1CON1bits_t __at (0xFC6) SSP1CON1bits;
1325 extern __sfr __at (0xFC6) SSPCON1;
1338 extern volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
1340 extern __sfr __at (0xFC7) SSP1STAT;
1355 unsigned I2C_READ : 1;
1356 unsigned I2C_START : 1;
1357 unsigned I2C_STOP : 1;
1358 unsigned I2C_DAT : 1;
1375 unsigned NOT_WRITE : 1;
1378 unsigned NOT_ADDRESS : 1;
1385 unsigned READ_WRITE : 1;
1388 unsigned DATA_ADDRESS : 1;
1403 extern volatile __SSP1STATbits_t __at (0xFC7) SSP1STATbits;
1405 extern __sfr __at (0xFC7) SSPSTAT;
1420 unsigned I2C_READ : 1;
1421 unsigned I2C_START : 1;
1422 unsigned I2C_STOP : 1;
1423 unsigned I2C_DAT : 1;
1440 unsigned NOT_WRITE : 1;
1443 unsigned NOT_ADDRESS : 1;
1450 unsigned READ_WRITE : 1;
1453 unsigned DATA_ADDRESS : 1;
1468 extern volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
1470 extern __sfr __at (0xFC8) SSP1ADD;
1472 extern __sfr __at (0xFC8) SSPADD;
1474 extern __sfr __at (0xFC9) SSP1BUF;
1476 extern __sfr __at (0xFC9) SSPBUF;
1478 extern __sfr __at (0xFCA) T2CON;
1481 unsigned T2CKPS0 : 1;
1482 unsigned T2CKPS1 : 1;
1483 unsigned TMR2ON : 1;
1484 unsigned T2OUTPS0 : 1;
1485 unsigned T2OUTPS1 : 1;
1486 unsigned T2OUTPS2 : 1;
1487 unsigned T2OUTPS3 : 1;
1494 unsigned TOUTPS0 : 1;
1495 unsigned TOUTPS1 : 1;
1496 unsigned TOUTPS2 : 1;
1497 unsigned TOUTPS3 : 1;
1501 extern volatile __T2CONbits_t __at (0xFCA) T2CONbits;
1503 extern __sfr __at (0xFCB) PR2;
1505 extern __sfr __at (0xFCC) TMR2;
1507 extern __sfr __at (0xFCD) T1CON;
1510 unsigned TMR1ON : 1;
1511 unsigned TMR1CS : 1;
1512 unsigned T1SYNC : 1;
1513 unsigned T1OSCEN : 1;
1514 unsigned T1CKPS0 : 1;
1515 unsigned T1CKPS1 : 1;
1522 unsigned T1INSYNC : 1;
1532 unsigned NOT_T1SYNC : 1;
1540 extern volatile __T1CONbits_t __at (0xFCD) T1CONbits;
1542 extern __sfr __at (0xFCE) TMR1L;
1544 extern __sfr __at (0xFCF) TMR1H;
1546 extern __sfr __at (0xFD0) RCON;
1549 unsigned NOT_BOR : 1;
1550 unsigned NOT_POR : 1;
1551 unsigned NOT_PD : 1;
1552 unsigned NOT_TO : 1;
1553 unsigned NOT_RI : 1;
1569 extern volatile __RCONbits_t __at (0xFD0) RCONbits;
1571 extern __sfr __at (0xFD1) WDTCON;
1584 unsigned SWDTEN : 1;
1594 extern volatile __WDTCONbits_t __at (0xFD1) WDTCONbits;
1596 extern __sfr __at (0xFD3) OSCCON;
1609 extern volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
1611 extern __sfr __at (0xFD5) T0CON;
1620 unsigned T08BIT : 1;
1621 unsigned TMR0ON : 1;
1624 extern volatile __T0CONbits_t __at (0xFD5) T0CONbits;
1626 extern __sfr __at (0xFD6) TMR0L;
1628 extern __sfr __at (0xFD7) TMR0H;
1630 extern __sfr __at (0xFD8) STATUS;
1643 extern volatile __STATUSbits_t __at (0xFD8) STATUSbits;
1645 extern __sfr __at (0xFD9) FSR2L;
1647 extern __sfr __at (0xFDA) FSR2H;
1649 extern __sfr __at (0xFDB) PLUSW2;
1651 extern __sfr __at (0xFDC) PREINC2;
1653 extern __sfr __at (0xFDD) POSTDEC2;
1655 extern __sfr __at (0xFDE) POSTINC2;
1657 extern __sfr __at (0xFDF) INDF2;
1659 extern __sfr __at (0xFE0) BSR;
1661 extern __sfr __at (0xFE1) FSR1L;
1663 extern __sfr __at (0xFE2) FSR1H;
1665 extern __sfr __at (0xFE3) PLUSW1;
1667 extern __sfr __at (0xFE4) PREINC1;
1669 extern __sfr __at (0xFE5) POSTDEC1;
1671 extern __sfr __at (0xFE6) POSTINC1;
1673 extern __sfr __at (0xFE7) INDF1;
1675 extern __sfr __at (0xFE8) WREG;
1677 extern __sfr __at (0xFE9) FSR0L;
1679 extern __sfr __at (0xFEA) FSR0H;
1681 extern __sfr __at (0xFEB) PLUSW0;
1683 extern __sfr __at (0xFEC) PREINC0;
1685 extern __sfr __at (0xFED) POSTDEC0;
1687 extern __sfr __at (0xFEE) POSTINC0;
1689 extern __sfr __at (0xFEF) INDF0;
1691 extern __sfr __at (0xFF0) INTCON3;
1704 unsigned INT1IF : 1;
1705 unsigned INT2IF : 1;
1707 unsigned INT1IE : 1;
1708 unsigned INT2IE : 1;
1710 unsigned INT1IP : 1;
1711 unsigned INT2IP : 1;
1714 extern volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
1716 extern __sfr __at (0xFF1) INTCON2;
1723 unsigned INTEDG2 : 1;
1724 unsigned INTEDG1 : 1;
1725 unsigned INTEDG0 : 1;
1726 unsigned NOT_RBPU : 1;
1731 unsigned TMR0IP : 1;
1739 extern volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
1741 extern __sfr __at (0xFF2) INTCON;
1755 unsigned INT0IF : 1;
1756 unsigned TMR0IF : 1;
1758 unsigned INT0IE : 1;
1759 unsigned TMR0IE : 1;
1764 extern volatile __INTCONbits_t __at (0xFF2) INTCONbits;
1766 extern __sfr __at (0xFF3) PROD;
1768 extern __sfr __at (0xFF3) PRODL;
1770 extern __sfr __at (0xFF4) PRODH;
1772 extern __sfr __at (0xFF5) TABLAT;
1774 extern __sfr __at (0xFF6) TBLPTR;
1776 extern __sfr __at (0xFF6) TBLPTRL;
1778 extern __sfr __at (0xFF7) TBLPTRH;
1780 extern __sfr __at (0xFF8) TBLPTRU;
1782 extern __sfr __at (0xFF9) PC;
1784 extern __sfr __at (0xFF9) PCL;
1786 extern __sfr __at (0xFFA) PCLATH;
1788 extern __sfr __at (0xFFB) PCLATU;
1790 extern __sfr __at (0xFFC) STKPTR;
1793 unsigned STKPTR0 : 1;
1794 unsigned STKPTR1 : 1;
1795 unsigned STKPTR2 : 1;
1796 unsigned STKPTR3 : 1;
1797 unsigned STKPTR4 : 1;
1799 unsigned STKUNF : 1;
1800 unsigned STKOVF : 1;
1810 unsigned STKFUL : 1;
1813 extern volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
1815 extern __sfr __at (0xFFD) TOS;
1817 extern __sfr __at (0xFFD) TOSL;
1819 extern __sfr __at (0xFFE) TOSH;
1821 extern __sfr __at (0xFFF) TOSU;