📄 pic1674.h
字号:
volatile bit CCP1M0 @ (unsigned) &CCP1CON * 8 + 0;
/* RCSTA bits */
volatile bit SPEN @ (unsigned) &RCSTA * 8 + 7;
volatile bit RX9 @ (unsigned) &RCSTA * 8 + 6;
volatile bit SREN @ (unsigned) &RCSTA * 8 + 5;
volatile bit CREN @ (unsigned) &RCSTA * 8 + 4;
volatile bit FERR @ (unsigned) &RCSTA * 8 + 2;
volatile bit OERR @ (unsigned) &RCSTA * 8 + 1;
volatile bit RX9D @ (unsigned) &RCSTA * 8 + 0;
/* CCP2CON bits */
volatile bit CCP2X @ (unsigned) &CCP2CON * 8 + 5;
volatile bit CCP2Y @ (unsigned) &CCP2CON * 8 + 4;
volatile bit CCP2M3 @ (unsigned) &CCP2CON * 8 + 3;
volatile bit CCP2M2 @ (unsigned) &CCP2CON * 8 + 2;
volatile bit CCP2M1 @ (unsigned) &CCP2CON * 8 + 1;
volatile bit CCP2M0 @ (unsigned) &CCP2CON * 8 + 0;
#if defined(_16C73) || defined(_16C74) || \
defined(_16C73A) || defined(_16C74A) || \
defined(_16C73B) || defined(_16C74B) || \
defined(_16LC74B) || defined(_16CR73) || \
defined(_16CR74)
/* ADCON0 bits */
volatile bit ADCS1 @ (unsigned) &ADCON0 * 8 + 7;
volatile bit ADCS0 @ (unsigned) &ADCON0 * 8 + 6;
volatile bit CHS2 @ (unsigned) &ADCON0 * 8 + 5;
volatile bit CHS1 @ (unsigned) &ADCON0 * 8 + 4;
volatile bit CHS0 @ (unsigned) &ADCON0 * 8 + 3;
volatile bit ADGO @ (unsigned) &ADCON0 * 8 + 2;
// Alternate definition for compatibility with other devices
volatile bit GODONE @ (unsigned) &ADCON0 * 8 + 2;
volatile bit ADON @ (unsigned) &ADCON0 * 8 + 0;
#endif
/* OPTION bits */
bit RBPU @ (unsigned) &OPTION * 8 + 7;
bit INTEDG @ (unsigned) &OPTION * 8 + 6;
bit T0CS @ (unsigned) &OPTION * 8 + 5;
bit T0SE @ (unsigned) &OPTION * 8 + 4;
bit PSA @ (unsigned) &OPTION * 8 + 3;
bit PS2 @ (unsigned) &OPTION * 8 + 2;
bit PS1 @ (unsigned) &OPTION * 8 + 1;
bit PS0 @ (unsigned) &OPTION * 8 + 0;
/* TRISA bits */
volatile bit TRISA5 @ (unsigned) &TRISA * 8 + 5;
volatile bit TRISA4 @ (unsigned) &TRISA * 8 + 4;
volatile bit TRISA3 @ (unsigned) &TRISA * 8 + 3;
volatile bit TRISA2 @ (unsigned) &TRISA * 8 + 2;
volatile bit TRISA1 @ (unsigned) &TRISA * 8 + 1;
volatile bit TRISA0 @ (unsigned) &TRISA * 8 + 0;
/* TRISB bits */
volatile bit TRISB7 @ (unsigned) &TRISB * 8 + 7;
volatile bit TRISB6 @ (unsigned) &TRISB * 8 + 6;
volatile bit TRISB5 @ (unsigned) &TRISB * 8 + 5;
volatile bit TRISB4 @ (unsigned) &TRISB * 8 + 4;
volatile bit TRISB3 @ (unsigned) &TRISB * 8 + 3;
volatile bit TRISB2 @ (unsigned) &TRISB * 8 + 2;
volatile bit TRISB1 @ (unsigned) &TRISB * 8 + 1;
volatile bit TRISB0 @ (unsigned) &TRISB * 8 + 0;
/* TRISC bits */
volatile bit TRISC7 @ (unsigned) &TRISC * 8 + 7;
volatile bit TRISC6 @ (unsigned) &TRISC * 8 + 6;
volatile bit TRISC5 @ (unsigned) &TRISC * 8 + 5;
volatile bit TRISC4 @ (unsigned) &TRISC * 8 + 4;
volatile bit TRISC3 @ (unsigned) &TRISC * 8 + 3;
volatile bit TRISC2 @ (unsigned) &TRISC * 8 + 2;
volatile bit TRISC1 @ (unsigned) &TRISC * 8 + 1;
volatile bit TRISC0 @ (unsigned) &TRISC * 8 + 0;
#if defined(_16C74) || defined(_16C74A) || \
defined(_16C65B) || defined(_16C74B) || \
defined(_16LC74B) || defined(_16CR74)
/* TRISD bits */
volatile bit TRISD7 @ (unsigned) &TRISD * 8 + 7;
volatile bit TRISD6 @ (unsigned) &TRISD * 8 + 6;
volatile bit TRISD5 @ (unsigned) &TRISD * 8 + 5;
volatile bit TRISD4 @ (unsigned) &TRISD * 8 + 4;
volatile bit TRISD3 @ (unsigned) &TRISD * 8 + 3;
volatile bit TRISD2 @ (unsigned) &TRISD * 8 + 2;
volatile bit TRISD1 @ (unsigned) &TRISD * 8 + 1;
volatile bit TRISD0 @ (unsigned) &TRISD * 8 + 0;
/* TRISE bits */
volatile bit IBF @ (unsigned) &TRISE * 8 + 7;
volatile bit OBF @ (unsigned) &TRISE * 8 + 6;
volatile bit IBOV @ (unsigned) &TRISE * 8 + 5;
volatile bit PSPMODE @ (unsigned) &TRISE * 8 + 4;
volatile bit TRISE2 @ (unsigned) &TRISE * 8 + 2;
volatile bit TRISE1 @ (unsigned) &TRISE * 8 + 1;
volatile bit TRISE0 @ (unsigned) &TRISE * 8 + 0;
#endif
/* PIE1 bits */
#if defined(_16C74) || defined(_16C74A) || \
defined(_16C65B) || defined(_16C74B) || \
defined(_16LC74B) || defined(_16CR74)
volatile bit PSPIE @ (unsigned) &PIE1 * 8 + 7;
#endif
#if defined(_16C73) || defined(_16C74) || \
defined(_16C73A) || defined(_16C74A) || \
defined(_16C73B) || defined(_16C74B) || \
defined(_16LC74B) || defined(_16CR73) || \
defined(_16CR74)
volatile bit ADIE @ (unsigned) &PIE1 * 8 + 6;
#endif
volatile bit RCIE @ (unsigned) &PIE1 * 8 + 5;
volatile bit TXIE @ (unsigned) &PIE1 * 8 + 4;
volatile bit SSPIE @ (unsigned) &PIE1 * 8 + 3;
volatile bit CCP1IE @ (unsigned) &PIE1 * 8 + 2;
volatile bit TMR2IE @ (unsigned) &PIE1 * 8 + 1;
volatile bit TMR1IE @ (unsigned) &PIE1 * 8 + 0;
/* PIE2 bits */
volatile bit CCP2IE @ (unsigned) &PIE2 * 8 + 0;
/* PCON bits */
volatile bit POR @ (unsigned) &PCON * 8 + 1;
volatile bit BOR @ (unsigned) &PCON * 8 + 0;
/* SSPSTAT bits */
#if defined(_16C63A) || defined(_16C65B) || \
defined(_16C73B) || defined(_16C74B) || \
defined(_16LC74B) || defined(_16CR73) || \
defined(_16CR74)
volatile bit SMP @ (unsigned) &SSPSTAT * 8 + 7;
volatile bit CKE @ (unsigned) &SSPSTAT * 8 + 6;
#endif
volatile bit DA @ (unsigned) &SSPSTAT * 8 + 5;
volatile bit STOP @ (unsigned) &SSPSTAT * 8 + 4;
volatile bit START @ (unsigned) &SSPSTAT * 8 + 3;
volatile bit RW @ (unsigned) &SSPSTAT * 8 + 2;
volatile bit UA @ (unsigned) &SSPSTAT * 8 + 1;
volatile bit BF @ (unsigned) &SSPSTAT * 8 + 0;
#ifdef __STAT_BACKWARD_COMPATIBILITY
#define STAT_SMP SMP
#define STAT_CKE CKE
#define STAT_DA DA
#define STAT_P STOP
#define STAT_S START
#define STAT_RW RW
#define STAT_UA UA
#define STAT_BF BF
#endif
/* TXSTA bits */
volatile bit CSRC @ (unsigned) &TXSTA * 8 + 7;
volatile bit TX9 @ (unsigned) &TXSTA * 8 + 6;
volatile bit TXEN @ (unsigned) &TXSTA * 8 + 5;
volatile bit SYNC @ (unsigned) &TXSTA * 8 + 4;
volatile bit BRGH @ (unsigned) &TXSTA * 8 + 2;
volatile bit TRMT @ (unsigned) &TXSTA * 8 + 1;
volatile bit TX9D @ (unsigned) &TXSTA * 8 + 0;
#if defined(_16C73) || defined(_16C74) || \
defined(_16C73A) || defined(_16C74A) || \
defined(_16C73B) || defined(_16C74B) || \
defined(_16LC74B) || defined(_16CR73) || \
defined(_16CR74)
/* ADCON1 bits */
volatile bit PCFG2 @ (unsigned) &ADCON1 * 8 + 2;
volatile bit PCFG1 @ (unsigned) &ADCON1 * 8 + 1;
volatile bit PCFG0 @ (unsigned) &ADCON1 * 8 + 0;
#endif
#define CONFIG_ADDR 0x2007
/*watchdog*/
#define WDTEN 0xFFFF // enable watchdog timer
#define WDTDIS 0xFFFB // disable watchdog timer
/*power up timer*/
#if defined (_16C63) || defined (_16CR63) || defined (_16C63A) || \
defined (_16C65B) || defined (_16C73B) || defined (_16C74B) || \
defined (_16C73A) || defined (_16C74A) || defined (_16LC74B) || \
defined(_16RC73) || defined(_16CR74)
#define PWRTDIS 0x3FFF // power-up timer disbable
#define PWRTEN 0x3FF7 // power-up timer enable
#else
#define PWRTEN 0x3FFF // power-up timer enable
#define PWRTDIS 0x3FF7 // power-up timer disable
#endif
/*osc configurations*/
#define RC 0x3FFF // resistor/capacitor
#define HS 0x3FFE // high speed crystal/resonator
#define XT 0x3FFD // crystal/resonator
#define LP 0x3FFC // low power crystal/resonator
/* code protection */
#define UNPROTECT 0x3FFF // do not protect the code
#if defined(_16C74) || defined(_16C73)
#define PROTECT50 0x3FEF // upper half program memory code protected
#define PROTECT75 0x3FDF // upper 3/4 program memory code protected
#define PROTECT 0x3FCF // all memory code is protected
#else
#define BOREN 0x3FFF // brown out reset enable
#define BORDIS 0x3FBF // brown out reset disable
#define PROTECT50 0x2AEF // upper half program memory code protected
#define PROTECT75 0x15DF // upper 3/4 program memory code protected
#define PROTECT 0x00CF // all memory code is protected
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -