📄 pic16lf1847.h
字号:
volatile union {
struct {
unsigned CCP1SEL : 1;
unsigned P1CSEL : 1;
unsigned P1DSEL : 1;
unsigned CCP2SEL : 1;
unsigned P2BSEL : 1;
unsigned SS1SEL : 1;
unsigned SDO1SEL : 1;
unsigned RXDTSEL : 1;
};
} APFCON0bits @ 0x11D;
#endif
// Register: APFCON1
volatile unsigned char APFCON1 @ 0x11E;
// bit and bitfield definitions
volatile bit TXCKSEL @ ((unsigned)&APFCON1*8)+0;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TXCKSEL : 1;
};
} APFCON1bits @ 0x11E;
#endif
//
// Special function register definitions: Bank 3
//
// Register: ANSELA
volatile unsigned char ANSELA @ 0x18C;
// bit and bitfield definitions
volatile bit ANSA0 @ ((unsigned)&ANSELA*8)+0;
volatile bit ANSA1 @ ((unsigned)&ANSELA*8)+1;
volatile bit ANSA2 @ ((unsigned)&ANSELA*8)+2;
volatile bit ANSA3 @ ((unsigned)&ANSELA*8)+3;
volatile bit ANSA4 @ ((unsigned)&ANSELA*8)+4;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned ANSA0 : 1;
unsigned ANSA1 : 1;
unsigned ANSA2 : 1;
unsigned ANSA3 : 1;
unsigned ANSA4 : 1;
unsigned : 1;
unsigned : 1;
unsigned : 1;
};
struct {
unsigned ANSELA : 5;
unsigned : 1;
};
} ANSELAbits @ 0x18C;
#endif
// Register: ANSELB
volatile unsigned char ANSELB @ 0x18D;
// bit and bitfield definitions
volatile bit ANSB1 @ ((unsigned)&ANSELB*8)+1;
volatile bit ANSB2 @ ((unsigned)&ANSELB*8)+2;
volatile bit ANSB3 @ ((unsigned)&ANSELB*8)+3;
volatile bit ANSB4 @ ((unsigned)&ANSELB*8)+4;
volatile bit ANSB5 @ ((unsigned)&ANSELB*8)+5;
volatile bit ANSB6 @ ((unsigned)&ANSELB*8)+6;
volatile bit ANSB7 @ ((unsigned)&ANSELB*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned : 1;
unsigned ANSB1 : 1;
unsigned ANSB2 : 1;
unsigned ANSB3 : 1;
unsigned ANSB4 : 1;
unsigned ANSB5 : 1;
unsigned ANSB6 : 1;
unsigned ANSB7 : 1;
};
} ANSELBbits @ 0x18D;
#endif
// bit and bitfield definitions
// Register: EEADRL
volatile unsigned char EEADRL @ 0x191;
// bit and bitfield definitions
// Register: EEADRH
volatile unsigned char EEADRH @ 0x192;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned EEADRH : 7;
};
} EEADRHbits @ 0x192;
#endif
// Register: EEADR
volatile unsigned int EEADR @ 0x191;
// bit and bitfield definitions
// Register: EEDATL
volatile unsigned char EEDATL @ 0x193;
volatile unsigned char EEDATA @ 0x193;
// bit and bitfield definitions
// Register: EEDATH
volatile unsigned char EEDATH @ 0x194;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned EEDATH : 6;
};
} EEDATHbits @ 0x194;
#endif
// Register: EEDAT
volatile unsigned int EEDAT @ 0x193;
// Register: EECON1
volatile unsigned char EECON1 @ 0x195;
// bit and bitfield definitions
// Read Control bit
volatile bit RD @ ((unsigned)&EECON1*8)+0;
// Write Control bit
volatile bit WR @ ((unsigned)&EECON1*8)+1;
// Program/Erase Enable bit
volatile bit WREN @ ((unsigned)&EECON1*8)+2;
// Sequence Error Flag bit
volatile bit WRERR @ ((unsigned)&EECON1*8)+3;
// Program FLASH Erase Enable bit
volatile bit FREE @ ((unsigned)&EECON1*8)+4;
// Load Write Latches Only bit
volatile bit LWLO @ ((unsigned)&EECON1*8)+5;
// FLASH Program / Data EEPROM or Configuration Select bit
volatile bit CFGS @ ((unsigned)&EECON1*8)+6;
// FLASH Program / Data EEPROM Memory Select bit
volatile bit EEPGD @ ((unsigned)&EECON1*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned RD : 1;
unsigned WR : 1;
unsigned WREN : 1;
unsigned WRERR : 1;
unsigned FREE : 1;
unsigned LWLO : 1;
unsigned CFGS : 1;
unsigned EEPGD : 1;
};
} EECON1bits @ 0x195;
#endif
// Register: EECON2
volatile unsigned char EECON2 @ 0x196;
// bit and bitfield definitions
// Register: RCREG
volatile unsigned char RCREG @ 0x199;
// bit and bitfield definitions
// Register: TXREG
volatile unsigned char TXREG @ 0x19A;
// bit and bitfield definitions
// Register: SPBRGL
volatile unsigned char SPBRGL @ 0x19B;
volatile unsigned char SPBRG @ 0x19B;
// bit and bitfield definitions
// Register: SPBRGH
volatile unsigned char SPBRGH @ 0x19C;
// bit and bitfield definitions
// Register: RCSTA
// Receive Status and Control Register
volatile unsigned char RCSTA @ 0x19D;
// bit and bitfield definitions
// 9th bit of received data (can be parity bit)
volatile bit RX9D @ ((unsigned)&RCSTA*8)+0;
// Overrun Error bit
volatile bit OERR @ ((unsigned)&RCSTA*8)+1;
// Framing Error bit
volatile bit FERR @ ((unsigned)&RCSTA*8)+2;
// Address Detect Enable bit
volatile bit ADDEN @ ((unsigned)&RCSTA*8)+3;
// Continuous Receive Enable bit
volatile bit CREN @ ((unsigned)&RCSTA*8)+4;
// Single Receive Enable bit
volatile bit SREN @ ((unsigned)&RCSTA*8)+5;
// 9-bit Receive Enable bit
volatile bit RX9 @ ((unsigned)&RCSTA*8)+6;
// Serial Port Enable bit
volatile bit SPEN @ ((unsigned)&RCSTA*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned RX9D : 1;
unsigned OERR : 1;
unsigned FERR : 1;
unsigned ADDEN : 1;
unsigned CREN : 1;
unsigned SREN : 1;
unsigned RX9 : 1;
unsigned SPEN : 1;
};
} RCSTAbits @ 0x19D;
#endif
// Register: TXSTA
// Transmit Status and Control Register
volatile unsigned char TXSTA @ 0x19E;
// bit and bitfield definitions
// 9th bit of transmit data; can be used as parity bit
volatile bit TX9D @ ((unsigned)&TXSTA*8)+0;
// Transmit Operation Idle Status bit
volatile bit TRMT @ ((unsigned)&TXSTA*8)+1;
// High Baud Rate Select bit
volatile bit BRGH @ ((unsigned)&TXSTA*8)+2;
// Send BREAK character bit
volatile bit SENDB @ ((unsigned)&TXSTA*8)+3;
// USART Mode Select bit
volatile bit SYNC @ ((unsigned)&TXSTA*8)+4;
// Transmit Enable bit
volatile bit TXEN @ ((unsigned)&TXSTA*8)+5;
// 9-bit Transmit Enable bit
volatile bit TX9 @ ((unsigned)&TXSTA*8)+6;
// Clock Source Select bit
volatile bit CSRC @ ((unsigned)&TXSTA*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TX9D : 1;
unsigned TRMT : 1;
unsigned BRGH : 1;
unsigned SENDB : 1;
unsigned SYNC : 1;
unsigned TXEN : 1;
unsigned TX9 : 1;
unsigned CSRC : 1;
};
} TXSTAbits @ 0x19E;
#endif
// Register: BAUDCON
// Baud Rate Control Register
volatile unsigned char BAUDCON @ 0x19F;
// bit and bitfield definitions
// Auto-Baud Detect Enable bit
volatile bit ABDEN @ ((unsigned)&BAUDCON*8)+0;
// Wake-Up Enable bit
volatile bit WUE @ ((unsigned)&BAUDCON*8)+1;
// 16-bit Baud Rate Register enable bit
volatile bit BRG16 @ ((unsigned)&BAUDCON*8)+3;
// Clock/Transmit Polarity Select bit
volatile bit SCKP @ ((unsigned)&BAUDCON*8)+4;
// Receive Operation Idle Status bit
volatile bit RCIDL @ ((unsigned)&BAUDCON*8)+6;
// BRG Rollover Status bit
volatile bit ABDOVF @ ((unsigned)&BAUDCON*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned ABDEN : 1;
unsigned WUE : 1;
unsigned : 1;
unsigned BRG16 : 1;
unsigned SCKP : 1;
unsigned : 1;
unsigned RCIDL : 1;
unsigned ABDOVF : 1;
};
} BAUDCONbits @ 0x19F;
#endif
//
// Special function register definitions: Bank 4
//
// Register: WPUA
volatile unsigned char WPUA @ 0x20C;
// bit and bitfield definitions
volatile bit WPUA5 @ ((unsigned)&WPUA*8)+5;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned : 5;
unsigned WPUA5 : 1;
};
} WPUAbits @ 0x20C;
#endif
// Register: WPUB
volatile unsigned char WPUB @ 0x20D;
// bit and bitfield definitions
volatile bit WPUB0 @ ((unsigned)&WPUB*8)+0;
volatile bit WPUB1 @ ((unsigned)&WPUB*8)+1;
volatile bit WPUB2 @ ((unsigned)&WPUB*8)+2;
volatile bit WPUB3 @ ((unsigned)&WPUB*8)+3;
volatile bit WPUB4 @ ((unsigned)&WPUB*8)+4;
volatile bit WPUB5 @ ((unsigned)&WPUB*8)+5;
volatile bit WPUB6 @ ((unsigned)&WPUB*8)+6;
volatile bit WPUB7 @ ((unsigned)&WPUB*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned WPUB0 : 1;
unsigned WPUB1 : 1;
unsigned WPUB2 : 1;
unsigned WPUB3 : 1;
unsigned WPUB4 : 1;
unsigned WPUB5 : 1;
unsigned WPUB6 : 1;
unsigned WPUB7 : 1;
};
} WPUBbits @ 0x20D;
#endif
// Register: SSP1BUF
volatile unsigned char SSP1BUF @ 0x211;
volatile unsigned char SSPBUF @ 0x211;
// bit and bitfield definitions
// Register: SSP1ADD
volatile unsigned char SSP1ADD @ 0x212;
volatile unsigned char SSPADD @ 0x212;
// bit and bitfield definitions
// Register: SSP1MSK
volatile unsigned char SSP1MSK @ 0x213;
volatile unsigned char SSPMSK @ 0x213;
// bit and bitfield definitions
// Register: SSP1STAT
volatile unsigned char SSP1STAT @ 0x214;
volatile unsigned char SSPSTAT @ 0x214;
// bit and bitfield definitions
// volatile bit BF @ ((unsigned)&SSP1STAT*8)+0;
// volatile bit UA @ ((unsigned)&SSP1STAT*8)+1;
// volatile bit R_nW @ ((unsigned)&SSP1STAT*8)+2;
// volatile bit S @ ((unsigned)&SSP1STAT*8)+3;
// volatile bit P @ ((unsigned)&SSP1STAT*8)+4;
// volatile bit D_nA @ ((unsigned)&SSP1STAT*8)+5;
// volatile bit CKE @ ((unsigned)&SSP1STAT*8)+6;
// volatile bit SMP @ ((unsigned)&SSP1STAT*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned BF : 1;
unsigned UA : 1;
unsigned R_nW : 1;
unsigned S : 1;
unsigned P : 1;
unsigned D_nA : 1;
unsigned CKE : 1;
unsigned SMP : 1;
};
} SSP1STATbi
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -