📄 pic169xx.h
字号:
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;
/* 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 TRISE7 @ (unsigned)&TRISE*8+7;
volatile bit TRISE6 @ (unsigned)&TRISE*8+6;
volatile bit TRISE5 @ (unsigned)&TRISE*8+5;
volatile bit TRISE4 @ (unsigned)&TRISE*8+4;
volatile bit TRISE3 @ (unsigned)&TRISE*8+3;
volatile bit TRISE2 @ (unsigned)&TRISE*8+2;
volatile bit TRISE1 @ (unsigned)&TRISE*8+1;
volatile bit TRISE0 @ (unsigned)&TRISE*8+0;
/* PIE1 bits */
volatile bit LCDIE @ (unsigned)&PIE1*8+7;
#ifndef _16C923
volatile bit ADIE @ (unsigned)&PIE1*8+6;
#endif
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;
/* PCON bit */
volatile bit POR @ (unsigned)&PCON*8+1;
/* SSPSTAT bits */
volatile bit SMP @ (unsigned)&SSPSTAT*8+7;
volatile bit CKE @ (unsigned)&SSPSTAT*8+6;
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
/* PORTF bits */
volatile bit RF7 @ (unsigned)&PORTF*8+7;
volatile bit RF6 @ (unsigned)&PORTF*8+6;
volatile bit RF5 @ (unsigned)&PORTF*8+5;
volatile bit RF4 @ (unsigned)&PORTF*8+4;
volatile bit RF3 @ (unsigned)&PORTF*8+3;
volatile bit RF2 @ (unsigned)&PORTF*8+2;
volatile bit RF1 @ (unsigned)&PORTF*8+1;
volatile bit RF0 @ (unsigned)&PORTF*8+0;
/* PORTG bits */
volatile bit RG7 @ (unsigned)&PORTG*8+7;
volatile bit RG6 @ (unsigned)&PORTG*8+6;
volatile bit RG5 @ (unsigned)&PORTG*8+5;
volatile bit RG4 @ (unsigned)&PORTG*8+4;
volatile bit RG3 @ (unsigned)&PORTG*8+3;
volatile bit RG2 @ (unsigned)&PORTG*8+2;
volatile bit RG1 @ (unsigned)&PORTG*8+1;
volatile bit RG0 @ (unsigned)&PORTG*8+0;
/* LCDSE bits */
volatile bit SE29 @ (unsigned)&LCDSE*8+7;
volatile bit SE27 @ (unsigned)&LCDSE*8+6;
volatile bit SE20 @ (unsigned)&LCDSE*8+5;
volatile bit SE16 @ (unsigned)&LCDSE*8+4;
volatile bit SE12 @ (unsigned)&LCDSE*8+3;
volatile bit SE9 @ (unsigned)&LCDSE*8+2;
volatile bit SE5 @ (unsigned)&LCDSE*8+1;
volatile bit SE0 @ (unsigned)&LCDSE*8+0;
/* LCDPS bits */
volatile bit LP3 @ (unsigned)&LCDPS*8+3;
volatile bit LP2 @ (unsigned)&LCDPS*8+2;
volatile bit LP1 @ (unsigned)&LCDPS*8+1;
volatile bit LP0 @ (unsigned)&LCDPS*8+0;
/* LCDCON bits */
volatile bit LCDEN @ (unsigned)&LCDCON*8+7;
volatile bit SLPEN @ (unsigned)&LCDCON*8+6;
volatile bit VGEN @ (unsigned)&LCDCON*8+4;
volatile bit CS1 @ (unsigned)&LCDCON*8+3;
volatile bit CS0 @ (unsigned)&LCDCON*8+2;
volatile bit LMUX1 @ (unsigned)&LCDCON*8+1;
volatile bit LMUX0 @ (unsigned)&LCDCON*8+0;
/* LCDD00 bits COM0 */
volatile bit COM0SEG07 @ (unsigned)&LCDD00*8+7;
volatile bit COM0SEG06 @ (unsigned)&LCDD00*8+6;
volatile bit COM0SEG05 @ (unsigned)&LCDD00*8+5;
volatile bit COM0SEG04 @ (unsigned)&LCDD00*8+4;
volatile bit COM0SEG03 @ (unsigned)&LCDD00*8+3;
volatile bit COM0SEG02 @ (unsigned)&LCDD00*8+2;
volatile bit COM0SEG01 @ (unsigned)&LCDD00*8+1;
volatile bit COM0SEG00 @ (unsigned)&LCDD00*8+0;
/* LCDD01 bits COM0 */
volatile bit COM0SEG15 @ (unsigned)&LCDD01*8+7;
volatile bit COM0SEG14 @ (unsigned)&LCDD01*8+6;
volatile bit COM0SEG13 @ (unsigned)&LCDD01*8+5;
volatile bit COM0SEG12 @ (unsigned)&LCDD01*8+4;
volatile bit COM0SEG11 @ (unsigned)&LCDD01*8+3;
volatile bit COM0SEG10 @ (unsigned)&LCDD01*8+2;
volatile bit COM0SEG09 @ (unsigned)&LCDD01*8+1;
volatile bit COM0SEG08 @ (unsigned)&LCDD01*8+0;
/* LCDD02 bits COM0 */
volatile bit COM0SEG23 @ (unsigned)&LCDD02*8+7;
volatile bit COM0SEG22 @ (unsigned)&LCDD02*8+6;
volatile bit COM0SEG21 @ (unsigned)&LCDD02*8+5;
volatile bit COM0SEG20 @ (unsigned)&LCDD02*8+4;
volatile bit COM0SEG19 @ (unsigned)&LCDD02*8+3;
volatile bit COM0SEG18 @ (unsigned)&LCDD02*8+2;
volatile bit COM0SEG17 @ (unsigned)&LCDD02*8+1;
volatile bit COM0SEG16 @ (unsigned)&LCDD02*8+0;
/* LCDD03 bits COM0 */
volatile bit COM0SEG31 @ (unsigned)&LCDD03*8+7;
volatile bit COM0SEG30 @ (unsigned)&LCDD03*8+6;
volatile bit COM0SEG29 @ (unsigned)&LCDD03*8+5;
volatile bit COM0SEG28 @ (unsigned)&LCDD03*8+4;
volatile bit COM0SEG27 @ (unsigned)&LCDD03*8+3;
volatile bit COM0SEG26 @ (unsigned)&LCDD03*8+2;
volatile bit COM0SEG25 @ (unsigned)&LCDD03*8+1;
volatile bit COM0SEG24 @ (unsigned)&LCDD03*8+0;
/* LCDD04 bits COM1 */
volatile bit COM1SEG07 @ (unsigned)&LCDD04*8+7;
volatile bit COM1SEG06 @ (unsigned)&LCDD04*8+6;
volatile bit COM1SEG05 @ (unsigned)&LCDD04*8+5;
volatile bit COM1SEG04 @ (unsigned)&LCDD04*8+4;
volatile bit COM1SEG03 @ (unsigned)&LCDD04*8+3;
volatile bit COM1SEG02 @ (unsigned)&LCDD04*8+2;
volatile bit COM1SEG01 @ (unsigned)&LCDD04*8+1;
volatile bit COM1SEG00 @ (unsigned)&LCDD04*8+0;
/* LCDD05 bits COM1 */
volatile bit COM1SEG15 @ (unsigned)&LCDD05*8+7;
volatile bit COM1SEG14 @ (unsigned)&LCDD05*8+6;
volatile bit COM1SEG13 @ (unsigned)&LCDD05*8+5;
volatile bit COM1SEG12 @ (unsigned)&LCDD05*8+4;
volatile bit COM1SEG11 @ (unsigned)&LCDD05*8+3;
volatile bit COM1SEG10 @ (unsigned)&LCDD05*8+2;
volatile bit COM1SEG09 @ (unsigned)&LCDD05*8+1;
volatile bit COM1SEG08 @ (unsigned)&LCDD05*8+0;
/* LCDD06 bits COM1 */
volatile bit COM1SEG23 @ (unsigned)&LCDD06*8+7;
volatile bit COM1SEG22 @ (unsigned)&LCDD06*8+6;
volatile bit COM1SEG21 @ (unsigned)&LCDD06*8+5;
volatile bit COM1SEG20 @ (unsigned)&LCDD06*8+4;
volatile bit COM1SEG19 @ (unsigned)&LCDD06*8+3;
volatile bit COM1SEG18 @ (unsigned)&LCDD06*8+2;
volatile bit COM1SEG17 @ (unsigned)&LCDD06*8+1;
volatile bit COM1SEG16 @ (unsigned)&LCDD06*8+0;
/* LCDD07 bits COM1 */
volatile bit COM1SEG31 @ (unsigned)&LCDD07*8+7;
volatile bit COM1SEG30 @ (unsigned)&LCDD07*8+6;
volatile bit COM1SEG29 @ (unsigned)&LCDD07*8+5;
volatile bit COM1SEG28 @ (unsigned)&LCDD07*8+4;
volatile bit COM1SEG27 @ (unsigned)&LCDD07*8+3;
volatile bit COM1SEG26 @ (unsigned)&LCDD07*8+2;
volatile bit COM1SEG25 @ (unsigned)&LCDD07*8+1;
volatile bit COM1SEG24 @ (unsigned)&LCDD07*8+0;
/* LCDD08 bits COM2 */
volatile bit COM2SEG07 @ (unsigned)&LCDD08*8+7;
volatile bit COM2SEG06 @ (unsigned)&LCDD08*8+6;
volatile bit COM2SEG05 @ (unsigned)&LCDD08*8+5;
volatile bit COM2SEG04 @ (unsigned)&LCDD08*8+4;
volatile bit COM2SEG03 @ (unsigned)&LCDD08*8+3;
volatile bit COM2SEG02 @ (unsigned)&LCDD08*8+2;
volatile bit COM2SEG01 @ (unsigned)&LCDD08*8+1;
volatile bit COM2SEG00 @ (unsigned)&LCDD08*8+0;
/* LCDD09 bits COM2 */
volatile bit COM2SEG15 @ (unsigned)&LCDD09*8+7;
volatile bit COM2SEG14 @ (unsigned)&LCDD09*8+6;
volatile bit COM2SEG13 @ (unsigned)&LCDD09*8+5;
volatile bit COM2SEG12 @ (unsigned)&LCDD09*8+4;
volatile bit COM2SEG11 @ (unsigned)&LCDD09*8+3;
volatile bit COM2SEG10 @ (unsigned)&LCDD09*8+2;
volatile bit COM2SEG09 @ (unsigned)&LCDD09*8+1;
volatile bit COM2SEG08 @ (unsigned)&LCDD09*8+0;
/* LCDD10 bits COM2 */
volatile bit COM2SEG23 @ (unsigned)&LCDD10*8+7;
volatile bit COM2SEG22 @ (unsigned)&LCDD10*8+6;
volatile bit COM2SEG21 @ (unsigned)&LCDD10*8+5;
volatile bit COM2SEG20 @ (unsigned)&LCDD10*8+4;
volatile bit COM2SEG19 @ (unsigned)&LCDD10*8+3;
volatile bit COM2SEG18 @ (unsigned)&LCDD10*8+2;
volatile bit COM2SEG17 @ (unsigned)&LCDD10*8+1;
volatile bit COM2SEG16 @ (unsigned)&LCDD10*8+0;
/* LCDD11 bits COM2 */
volatile bit COM2SEG31 @ (unsigned)&LCDD11*8+7;
volatile bit COM2SEG30 @ (unsigned)&LCDD11*8+6;
volatile bit COM2SEG29 @ (unsigned)&LCDD11*8+5;
volatile bit COM2SEG28 @ (unsigned)&LCDD11*8+4;
volatile bit COM2SEG27 @ (unsigned)&LCDD11*8+3;
volatile bit COM2SEG26 @ (unsigned)&LCDD11*8+2;
volatile bit COM2SEG25 @ (unsigned)&LCDD11*8+1;
volatile bit COM2SEG24 @ (unsigned)&LCDD11*8+0;
/* LCDD12 bits COM3 */
volatile bit COM3SEG07 @ (unsigned)&LCDD12*8+7;
volatile bit COM3SEG06 @ (unsigned)&LCDD12*8+6;
volatile bit COM3SEG05 @ (unsigned)&LCDD12*8+5;
volatile bit COM3SEG04 @ (unsigned)&LCDD12*8+4;
volatile bit COM3SEG03 @ (unsigned)&LCDD12*8+3;
volatile bit COM3SEG02 @ (unsigned)&LCDD12*8+2;
volatile bit COM3SEG01 @ (unsigned)&LCDD12*8+1;
volatile bit COM3SEG00 @ (unsigned)&LCDD12*8+0;
/* LCDD13 bits COM3 */
volatile bit COM3SEG15 @ (unsigned)&LCDD13*8+7;
volatile bit COM3SEG14 @ (unsigned)&LCDD13*8+6;
volatile bit COM3SEG13 @ (unsigned)&LCDD13*8+5;
volatile bit COM3SEG12 @ (unsigned)&LCDD13*8+4;
volatile bit COM3SEG11 @ (unsigned)&LCDD13*8+3;
volatile bit COM3SEG10 @ (unsigned)&LCDD13*8+2;
volatile bit COM3SEG09 @ (unsigned)&LCDD13*8+1;
volatile bit COM3SEG08 @ (unsigned)&LCDD13*8+0;
/* LCDD14 bits COM3 */
volatile bit COM3SEG23 @ (unsigned)&LCDD14*8+7;
volatile bit COM3SEG22 @ (unsigned)&LCDD14*8+6;
volatile bit COM3SEG21 @ (unsigned)&LCDD14*8+5;
volatile bit COM3SEG20 @ (unsigned)&LCDD14*8+4;
volatile bit COM3SEG19 @ (unsigned)&LCDD14*8+3;
volatile bit COM3SEG18 @ (unsigned)&LCDD14*8+2;
volatile bit COM3SEG17 @ (unsigned)&LCDD14*8+1;
volatile bit COM3SEG16 @ (unsigned)&LCDD14*8+0;
/* LCDD15 bits COM3 */
volatile bit COM3SEG31 @ (unsigned)&LCDD15*8+7;
volatile bit COM3SEG30 @ (unsigned)&LCDD15*8+6;
volatile bit COM3SEG29 @ (unsigned)&LCDD15*8+5;
volatile bit COM3SEG28 @ (unsigned)&LCDD15*8+4;
volatile bit COM3SEG27 @ (unsigned)&LCDD15*8+3;
volatile bit COM3SEG26 @ (unsigned)&LCDD15*8+2;
volatile bit COM3SEG25 @ (unsigned)&LCDD15*8+1;
volatile bit COM3SEG24 @ (unsigned)&LCDD15*8+0;
/* TRISF bits */
volatile bit TRISF7 @ (unsigned)&TRISF*8+7;
volatile bit TRISF6 @ (unsigned)&TRISF*8+6;
volatile bit TRISF5 @ (unsigned)&TRISF*8+5;
volatile bit TRISF4 @ (unsigned)&TRISF*8+4;
volatile bit TRISF3 @ (unsigned)&TRISF*8+3;
volatile bit TRISF2 @ (unsigned)&TRISF*8+2;
volatile bit TRISF1 @ (unsigned)&TRISF*8+1;
volatile bit TRISF0 @ (unsigned)&TRISF*8+0;
/* TRISG bits */
volatile bit TRISG7 @ (unsigned)&TRISG*8+7;
volatile bit TRISG6 @ (unsigned)&TRISG*8+6;
volatile bit TRISG5 @ (unsigned)&TRISG*8+5;
volatile bit TRISG4 @ (unsigned)&TRISG*8+4;
volatile bit TRISG3 @ (unsigned)&TRISG*8+3;
volatile bit TRISG2 @ (unsigned)&TRISG*8+2;
volatile bit TRISG1 @ (unsigned)&TRISG*8+1;
volatile bit TRISG0 @ (unsigned)&TRISG*8+0;
// definitions select memory reading macros in pic.h
#define EECON1 PMCON1
#define EEDATA PMDATA
#define EEDATH PMDATH
#define EEADR PMADR
#define EEADRH PMADRH
#define CONFIG_ADDR 0x2007
#define FOSC0 0x01
#define FOSC1 0x02
/*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
#define WDTE 0x04
/*watchdog*/
#define WDTEN 0x3FFF // enable watchdog timer
#define WDTDIS 0x3FFB // disable watchdog timer
#define PWRTE 0x08
/*power up timer*/
#define PWRTEN 0x3FF7 // power up timer enable
#define PWRTDIS 0x3FFF // power up timer disable
#ifdef _16C924
#define BODEN 0x40
/*brown out reset*/
#define BOREN 0x3FFF // brown out reset enable
#define BORDIS 0x3FBF // brown out reset disable
#endif
#define CP0 0x1510
#define CP1 0x2A20
/* code protection */
#define UNPROTECT 0x3FFF /* unprotected */
#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 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -