📄 p18f24j10.h
字号:
unsigned CCP1Y:1;
unsigned CCP1X:1;
};
} CCP1CONbits;
extern volatile near unsigned CCPR1;
extern volatile near unsigned char CCPR1L;
extern volatile near unsigned char CCPR1H;
extern volatile near unsigned char ADCON2;
extern volatile near union {
struct {
unsigned ADCS0:1;
unsigned ADCS1:1;
unsigned ADCS2:1;
unsigned ACQT0:1;
unsigned ACQT1:1;
unsigned ACQT2:1;
unsigned :1;
unsigned ADFM:1;
};
struct {
unsigned ADCS:3;
unsigned ADQT:3;
unsigned :1;
unsigned ADFM:1;
};
} ADCON2bits;
extern volatile near unsigned char ADCON1;
extern volatile near struct {
unsigned PCFG0:1;
unsigned PCFG1:1;
unsigned PCFG2:1;
unsigned PCFG3:1;
unsigned VCFG0:1;
unsigned VCFG1:1;
} ADCON1bits;
extern volatile near unsigned char ADCON0;
extern volatile near union {
struct {
unsigned :1;
unsigned DONE:1;
};
struct {
unsigned :1;
unsigned GO_DONE:1;
};
struct {
unsigned ADON:1;
unsigned GO:1;
unsigned CHS0:1;
unsigned CHS1:1;
unsigned CHS2:1;
unsigned CHS3:1;
unsigned :1;
unsigned ADCAL:1;
};
struct {
unsigned :1;
unsigned NOT_DONE:1;
};
struct {
unsigned :1;
unsigned :1;
unsigned ADMUX:4;
unsigned :1;
unsigned :1;
};
} ADCON0bits;
#define _ADMUX ADCON0bits.ADMUX
#define _ADGO ADCON0bits.GO
extern volatile near unsigned ADRES;
extern volatile near unsigned char ADRESL;
extern volatile near unsigned char ADRESH;
extern volatile near unsigned char SSP1CON2;
extern volatile near struct {
unsigned SEN:1;
unsigned RSEN:1;
unsigned PEN:1;
unsigned RCEN:1;
unsigned ACKEN:1;
unsigned ACKDT:1;
unsigned ACKSTAT:1;
unsigned GCEN:1;
} SSP1CON2bits;
extern volatile near unsigned char SSPCON2;
extern volatile near struct {
unsigned SEN:1;
unsigned RSEN:1;
unsigned PEN:1;
unsigned RCEN:1;
unsigned ACKEN:1;
unsigned ACKDT:1;
unsigned ACKSTAT:1;
unsigned GCEN:1;
} SSPCON2bits;
extern volatile near unsigned char SSP1CON1;
extern volatile near struct {
unsigned SSPM0:1;
unsigned SSPM1:1;
unsigned SSPM2:1;
unsigned SSPM3:1;
unsigned CKP:1;
unsigned SSPEN:1;
unsigned SSPOV:1;
unsigned WCOL:1;
} SSP1CON1bits;
extern volatile near unsigned char SSPCON1;
extern volatile near struct {
unsigned SSPM0:1;
unsigned SSPM1:1;
unsigned SSPM2:1;
unsigned SSPM3:1;
unsigned CKP:1;
unsigned SSPEN:1;
unsigned SSPOV:1;
unsigned WCOL:1;
} SSPCON1bits;
extern volatile near unsigned char SSP1STAT;
extern volatile near union {
struct {
unsigned BF:1;
unsigned UA:1;
unsigned R_W:1;
unsigned S:1;
unsigned P:1;
unsigned D_A:1;
unsigned CKE:1;
unsigned SMP:1;
};
struct {
unsigned :2;
unsigned I2C_READ:1;
unsigned I2C_START:1;
unsigned I2C_STOP:1;
unsigned I2C_DAT:1;
};
struct {
unsigned :2;
unsigned NOT_W:1;
unsigned :2;
unsigned NOT_A:1;
};
struct {
unsigned :2;
unsigned NOT_WRITE:1;
unsigned :2;
unsigned NOT_ADDRESS:1;
};
struct {
unsigned :2;
unsigned READ_WRITE:1;
unsigned :2;
unsigned DATA_ADDRESS:1;
};
struct {
unsigned :2;
unsigned R:1;
unsigned :2;
unsigned D:1;
};
} SSP1STATbits;
extern volatile near unsigned char SSPSTAT;
extern volatile near union {
struct {
unsigned BF:1;
unsigned UA:1;
unsigned R_W:1;
unsigned S:1;
unsigned P:1;
unsigned D_A:1;
unsigned CKE:1;
unsigned SMP:1;
};
struct {
unsigned :2;
unsigned I2C_READ:1;
unsigned I2C_START:1;
unsigned I2C_STOP:1;
unsigned I2C_DAT:1;
};
struct {
unsigned :2;
unsigned NOT_W:1;
unsigned :2;
unsigned NOT_A:1;
};
struct {
unsigned :2;
unsigned NOT_WRITE:1;
unsigned :2;
unsigned NOT_ADDRESS:1;
};
struct {
unsigned :2;
unsigned READ_WRITE:1;
unsigned :2;
unsigned DATA_ADDRESS:1;
};
struct {
unsigned :2;
unsigned R:1;
unsigned :2;
unsigned D:1;
};
} SSPSTATbits;
extern volatile near unsigned char SSP1ADD;
extern volatile near unsigned char SSPADD;
extern volatile near unsigned char SSP1BUF;
extern volatile near unsigned char SSPBUF;
extern volatile near unsigned char T2CON;
extern volatile near union {
struct {
unsigned T2CKPS0:1;
unsigned T2CKPS1:1;
unsigned TMR2ON:1;
unsigned T2OUTPS0:1;
unsigned T2OUTPS1:1;
unsigned T2OUTPS2:1;
unsigned T2OUTPS3:1;
};
struct {
unsigned :3;
unsigned TOUTPS0:1;
unsigned TOUTPS1:1;
unsigned TOUTPS2:1;
unsigned TOUTPS3:1;
};
} T2CONbits;
extern volatile near unsigned char PR2;
extern volatile near unsigned char TMR2;
extern volatile near unsigned char T1CON;
extern volatile near union {
struct {
unsigned TMR1ON:1;
unsigned TMR1CS:1;
unsigned T1SYNC:1;
unsigned T1OSCEN:1;
unsigned T1CKPS0:1;
unsigned T1CKPS1:1;
unsigned T1RUN:1;
unsigned RD16:1;
};
struct {
unsigned :2;
unsigned T1INSYNC:1;
};
struct {
unsigned :2;
unsigned NOT_T1SYNC:1;
};
} T1CONbits;
extern volatile near unsigned char TMR1L;
extern volatile near unsigned char TMR1H;
extern volatile near unsigned char RCON;
extern volatile near union {
struct {
unsigned NOT_BOR:1;
unsigned NOT_POR:1;
unsigned NOT_PD:1;
unsigned NOT_TO:1;
unsigned NOT_RI:1;
unsigned :2;
unsigned IPEN:1;
};
struct {
unsigned BOR:1;
unsigned POR:1;
unsigned PD:1;
unsigned TO:1;
unsigned RI:1;
};
} RCONbits;
extern volatile near unsigned char WDTCON;
extern volatile near union {
struct {
unsigned SWDTE:1;
};
struct {
unsigned SWDTEN:1;
};
} WDTCONbits;
extern volatile near unsigned char OSCCON;
extern volatile near struct {
unsigned SCS0:1;
unsigned SCS1:1;
unsigned :1;
unsigned OSTS:1;
unsigned :3;
unsigned IDLEN:1;
} OSCCONbits;
extern volatile near unsigned char T0CON;
extern volatile near struct {
unsigned T0PS0:1;
unsigned T0PS1:1;
unsigned T0PS2:1;
unsigned PSA:1;
unsigned T0SE:1;
unsigned T0CS:1;
unsigned T08BIT:1;
unsigned TMR0ON:1;
} T0CONbits;
extern volatile near unsigned char TMR0L;
extern volatile near unsigned char TMR0H;
extern near unsigned char STATUS;
extern near struct {
unsigned C:1;
unsigned DC:1;
unsigned Z:1;
unsigned OV:1;
unsigned N:1;
} STATUSbits;
extern near unsigned FSR2;
extern near unsigned char FSR2L;
extern near unsigned char FSR2H;
extern volatile near unsigned char PLUSW2;
extern volatile near unsigned char PREINC2;
extern volatile near unsigned char POSTDEC2;
extern volatile near unsigned char POSTINC2;
extern near unsigned char INDF2;
extern near unsigned char BSR;
extern near unsigned FSR1;
extern near unsigned char FSR1L;
extern near unsigned char FSR1H;
extern volatile near unsigned char PLUSW1;
extern volatile near unsigned char PREINC1;
extern volatile near unsigned char POSTDEC1;
extern volatile near unsigned char POSTINC1;
extern near unsigned char INDF1;
extern near unsigned char WREG;
extern near unsigned FSR0;
extern near unsigned char FSR0L;
extern near unsigned char FSR0H;
extern volatile near unsigned char PLUSW0;
extern volatile near unsigned char PREINC0;
extern volatile near unsigned char POSTDEC0;
extern volatile near unsigned char POSTINC0;
extern near unsigned char INDF0;
extern volatile near unsigned char INTCON3;
extern volatile near union {
struct {
unsigned INT1F:1;
unsigned INT2F:1;
unsigned :1;
unsigned INT1E:1;
unsigned INT2E:1;
unsigned :1;
unsigned INT1P:1;
unsigned INT2P:1;
};
struct {
unsigned INT1IF:1;
unsigned INT2IF:1;
unsigned :1;
unsigned INT1IE:1;
unsigned INT2IE:1;
unsigned :1;
unsigned INT1IP:1;
unsigned INT2IP:1;
};
} INTCON3bits;
extern volatile near unsigned char INTCON2;
extern volatile near union {
struct {
unsigned RBIP:1;
unsigned :1;
unsigned T0IP:1;
unsigned :1;
unsigned INTEDG2:1;
unsigned INTEDG1:1;
unsigned INTEDG0:1;
unsigned NOT_RBPU:1;
};
struct {
unsigned :2;
unsigned TMR0IP:1;
unsigned :4;
unsigned RBPU:1;
};
} INTCON2bits;
extern volatile near unsigned char INTCON;
extern volatile near union {
struct {
unsigned RBIF:1;
unsigned INT0F:1;
unsigned T0IF:1;
unsigned RBIE:1;
unsigned INT0E:1;
unsigned T0IE:1;
unsigned PEIE:1;
unsigned GIE:1;
};
struct {
unsigned :1;
unsigned INT0IF:1;
unsigned TMR0IF:1;
unsigned :1;
unsigned INT0IE:1;
unsigned TMR0IE:1;
unsigned GIEL:1;
unsigned GIEH:1;
};
} INTCONbits;
extern near unsigned PROD;
extern near unsigned char PRODL;
extern near unsigned char PRODH;
extern volatile near unsigned char TABLAT;
extern volatile near unsigned short long TBLPTR;
extern volatile near unsigned char TBLPTRL;
extern volatile near unsigned char TBLPTRH;
extern volatile near unsigned char TBLPTRU;
extern volatile near unsigned short long PC;
extern volatile near unsigned char PCL;
extern volatile near unsigned char PCLATH;
extern volatile near unsigned char PCLATU;
extern volatile near unsigned char STKPTR;
extern volatile near union {
struct {
unsigned STKPTR0:1;
unsigned STKPTR1:1;
unsigned STKPTR2:1;
unsigned STKPTR3:1;
unsigned STKPTR4:1;
unsigned :1;
unsigned STKUNF:1;
unsigned STKOVF:1;
};
struct {
unsigned :7;
unsigned STKFUL:1;
};
} STKPTRbits;
extern near unsigned short long TOS;
extern near unsigned char TOSL;
extern near unsigned char TOSH;
extern near unsigned char TOSU;
/* PORTB */
#define _RB0 PORTBbits.RB0
#define _RB1 PORTBbits.RB1
#define _RB2 PORTBbits.RB2
#define _RB3 PORTBbits.RB3
#define _RB4 PORTBbits.RB4
#define _RB5 PORTBbits.RB5
#define _RB6 PORTBbits.RB6
#define _RB7 PORTBbits.RB7
/*-------------------------------------------------------------------------
* Some useful defines for inline assembly stuff
*-------------------------------------------------------------------------*/
#define ACCESS 0
#define BANKED 1
/*-------------------------------------------------------------------------
* Some useful macros for inline assembly stuff
*-------------------------------------------------------------------------*/
#define nop() {_asm nop _endasm}
#define ClrWdt() {_asm clrwdt _endasm}
#define Sleep() {_asm sleep _endasm}
#define Reset() {_asm reset _endasm}
#define Rlcf(f,dest,access) {_asm movlb f rlcf f,dest,access _endasm}
#define Rlncf(f,dest,access) {_asm movlb f rlncf f,dest,access _endasm}
#define Rrcf(f,dest,access) {_asm movlb f rrcf f,dest,access _endasm}
#define Rrncf(f,dest,access) {_asm movlb f rrncf f,dest,access _endasm}
#define Swapf(f,dest,access) {_asm movlb f swapf f,dest,access _endasm }
/*-------------------------------------------------------------------------
* A fairly inclusive set of registers to save for interrupts.
* These are locations which are commonly used by the compiler.
*-------------------------------------------------------------------------*/
#define INTSAVELOCS TBLPTR, TABLAT, PROD
/*-------------------------------------------------------------------------
* IMPORTANT: The _CONFIG_DECL macro has been deprecated. Please utilize
* the #pragma config directive. Refer to the "MPLAB C18 C
* Compiler User's Guide" for more information relating to the
* #pragma config directive.
*
* Defines for configuration words:
* _CONFIG_DECL should be placed between a #pragma romdata CONFIG
* and a #pragma romdata. For example: ,
* #pragma romdata CONFIG
* _CONFIG_DECL(...)
* #pragma romdata
* NOTE: This macro only works when using the default linker script files
* and the CONFIG section exists.
*-------------------------------------------------------------------------*/
#define _CONFIG_DECL(_CONFIG1L, \
_CONFIG1H, \
_CONFIG2L, \
_CONFIG2H, \
_CONFIG3L, \
_CONFIG3H) \
const rom unsigned char _configuration[6] = { \
_CONFIG1L, \
_CONFIG1H, \
_CONFIG2L, \
_CONFIG2H, \
0xff, \
_CONFIG3H \
}
/*-------------------------------------------------------------------------
* CONFIG1L (0x300000)
*-------------------------------------------------------------------------*/
#define _DEBUGON_WDTON 0x21
#define _DEBUGON_WDTOFF 0x20
#define _DEBUGOFF_WDTON 0xA1
#define _DEBUGOFF_WDTOFF 0xA0
/*-------------------------------------------------------------------------
* CONFIG1H (0x300001)
*-------------------------------------------------------------------------*/
#define _CP_NOLOCK 0x04
#define _CP_LOCK 0x00
/*-------------------------------------------------------------------------
* CONFIG2L (0x300002)
*-------------------------------------------------------------------------*/
#define _CONFIG2L_DEFAULT 0x0F
#define _PWRT_ON_2L 0xFE
#define _PWRT_OFF_2L 0xFF
#define _BOR_OFF_2L 0xFD
#define _BOR_ON_2L 0xFF
#define _BORV_45_2L 0xF3
#define _BORV_42_2L 0xF7
#define _BORV_27_2L 0xFB
#define _BORV_25_2L 0xFF
/*-------------------------------------------------------------------------
* CONFIG2H (0x300003)
*-------------------------------------------------------------------------*/
/*#define _WDTPS_1_1H 1
#define _WDTPS_1_2H 2
#define _WDTPS_2_2H 4
#define _WDTPS_4_2H 8
#define _WDTPS_8_2H 16
#define _WDTPS_16_2H 0x00000101
#define _WDTPS_32_2H 0x00000110
#define _WDTPS_64_2H 0x00000111
#define _WDTPS_256_2H 0x00001000
#define _WDTPS_512_2H 0x00001001
#define _WDTPS_1024_2H 0x00001010
#define _WDTPS_2048_2H 0x00001011
#define _WDTPS_4096_2H 0x00001100
#define _WDTPS_8129_2H 0x00001101
#define _WDTPS_16384_2H 0x00001110
#define _WDTPS_132768_2H 0x00001111
*/
/*-------------------------------------------------------------------------
* CONFIG3H (0x300005)
*-------------------------------------------------------------------------*/
#define _CCP2MUX_RC1 0x01
#define _CCP2MUX_RB3 0x00
/*-------------------------------------------------------------------------*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -