📄 pic16f722a.h
字号:
unsigned : 1;
unsigned : 4;
};
} ADCON0bits @ 0x01F;
#endif
//
// Special function register definitions: Bank 1
//
// Register: OPTION_REG
volatile unsigned char OPTION_REG @ 0x081;
// bit and bitfield definitions
volatile bit PSA @ ((unsigned)&OPTION_REG*8)+3;
volatile bit T0SE @ ((unsigned)&OPTION_REG*8)+4;
volatile bit T0CS @ ((unsigned)&OPTION_REG*8)+5;
volatile bit INTEDG @ ((unsigned)&OPTION_REG*8)+6;
volatile bit nRBPU @ ((unsigned)&OPTION_REG*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned PS : 3;
unsigned PSA : 1;
unsigned T0SE : 1;
unsigned T0CS : 1;
unsigned INTEDG : 1;
unsigned nRBPU : 1;
};
} OPTION_REGbits @ 0x081;
#endif
// Register: TRISA
volatile unsigned char TRISA @ 0x085;
// bit and bitfield definitions
volatile bit TRISA0 @ ((unsigned)&TRISA*8)+0;
volatile bit TRISA1 @ ((unsigned)&TRISA*8)+1;
volatile bit TRISA2 @ ((unsigned)&TRISA*8)+2;
volatile bit TRISA3 @ ((unsigned)&TRISA*8)+3;
volatile bit TRISA4 @ ((unsigned)&TRISA*8)+4;
volatile bit TRISA5 @ ((unsigned)&TRISA*8)+5;
volatile bit TRISA6 @ ((unsigned)&TRISA*8)+6;
volatile bit TRISA7 @ ((unsigned)&TRISA*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TRISA0 : 1;
unsigned TRISA1 : 1;
unsigned TRISA2 : 1;
unsigned TRISA3 : 1;
unsigned TRISA4 : 1;
unsigned TRISA5 : 1;
unsigned TRISA6 : 1;
unsigned TRISA7 : 1;
};
} TRISAbits @ 0x085;
#endif
// Register: TRISB
volatile unsigned char TRISB @ 0x086;
// bit and bitfield definitions
volatile bit TRISB0 @ ((unsigned)&TRISB*8)+0;
volatile bit TRISB1 @ ((unsigned)&TRISB*8)+1;
volatile bit TRISB2 @ ((unsigned)&TRISB*8)+2;
volatile bit TRISB3 @ ((unsigned)&TRISB*8)+3;
volatile bit TRISB4 @ ((unsigned)&TRISB*8)+4;
volatile bit TRISB5 @ ((unsigned)&TRISB*8)+5;
volatile bit TRISB6 @ ((unsigned)&TRISB*8)+6;
volatile bit TRISB7 @ ((unsigned)&TRISB*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TRISB0 : 1;
unsigned TRISB1 : 1;
unsigned TRISB2 : 1;
unsigned TRISB3 : 1;
unsigned TRISB4 : 1;
unsigned TRISB5 : 1;
unsigned TRISB6 : 1;
unsigned TRISB7 : 1;
};
} TRISBbits @ 0x086;
#endif
// Register: TRISC
volatile unsigned char TRISC @ 0x087;
// bit and bitfield definitions
volatile bit TRISC0 @ ((unsigned)&TRISC*8)+0;
volatile bit TRISC1 @ ((unsigned)&TRISC*8)+1;
volatile bit TRISC2 @ ((unsigned)&TRISC*8)+2;
volatile bit TRISC3 @ ((unsigned)&TRISC*8)+3;
volatile bit TRISC4 @ ((unsigned)&TRISC*8)+4;
volatile bit TRISC5 @ ((unsigned)&TRISC*8)+5;
volatile bit TRISC6 @ ((unsigned)&TRISC*8)+6;
volatile bit TRISC7 @ ((unsigned)&TRISC*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TRISC0 : 1;
unsigned TRISC1 : 1;
unsigned TRISC2 : 1;
unsigned TRISC3 : 1;
unsigned TRISC4 : 1;
unsigned TRISC5 : 1;
unsigned TRISC6 : 1;
unsigned TRISC7 : 1;
};
} TRISCbits @ 0x087;
#endif
// Register: TRISE
volatile unsigned char TRISE @ 0x089;
// bit and bitfield definitions
volatile bit TRISE3 @ ((unsigned)&TRISE*8)+3;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned : 1;
unsigned : 1;
unsigned : 1;
unsigned TRISE3 : 1;
};
} TRISEbits @ 0x089;
#endif
// Register: PIE1
volatile unsigned char PIE1 @ 0x08C;
// bit and bitfield definitions
volatile bit TMR1IE @ ((unsigned)&PIE1*8)+0;
volatile bit TMR2IE @ ((unsigned)&PIE1*8)+1;
volatile bit CCP1IE @ ((unsigned)&PIE1*8)+2;
volatile bit SSPIE @ ((unsigned)&PIE1*8)+3;
volatile bit TXIE @ ((unsigned)&PIE1*8)+4;
volatile bit RCIE @ ((unsigned)&PIE1*8)+5;
volatile bit ADIE @ ((unsigned)&PIE1*8)+6;
volatile bit TMR1GIE @ ((unsigned)&PIE1*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TMR1IE : 1;
unsigned TMR2IE : 1;
unsigned CCP1IE : 1;
unsigned SSPIE : 1;
unsigned TXIE : 1;
unsigned RCIE : 1;
unsigned ADIE : 1;
unsigned TMR1GIE : 1;
};
} PIE1bits @ 0x08C;
#endif
// Register: PIE2
volatile unsigned char PIE2 @ 0x08D;
// bit and bitfield definitions
volatile bit CCP2IE @ ((unsigned)&PIE2*8)+0;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned CCP2IE : 1;
};
} PIE2bits @ 0x08D;
#endif
// Register: PCON
volatile unsigned char PCON @ 0x08E;
// bit and bitfield definitions
volatile bit nBOR @ ((unsigned)&PCON*8)+0;
volatile bit nPOR @ ((unsigned)&PCON*8)+1;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned nBOR : 1;
unsigned nPOR : 1;
};
} PCONbits @ 0x08E;
#endif
// Register: T1GCON
volatile unsigned char T1GCON @ 0x08F;
// bit and bitfield definitions
volatile bit T1GVAL @ ((unsigned)&T1GCON*8)+2;
volatile bit T1GGO_nDONE @ ((unsigned)&T1GCON*8)+3;
volatile bit T1GSPM @ ((unsigned)&T1GCON*8)+4;
volatile bit T1GTM @ ((unsigned)&T1GCON*8)+5;
volatile bit T1GPOL @ ((unsigned)&T1GCON*8)+6;
volatile bit TMR1GE @ ((unsigned)&T1GCON*8)+7;
volatile bit T1G1SE @ ((unsigned)&T1GCON*8)+4;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned T1GSS : 2;
unsigned T1GVAL : 1;
unsigned T1GGO_nDONE : 1;
unsigned T1GSPM : 1;
unsigned T1GTM : 1;
unsigned T1GPOL : 1;
unsigned TMR1GE : 1;
};
struct {
unsigned : 2;
unsigned : 1;
unsigned : 1;
unsigned T1G1SE : 1;
unsigned : 1;
unsigned : 1;
unsigned : 1;
};
} T1GCONbits @ 0x08F;
#endif
// Register: OSCCON
volatile unsigned char OSCCON @ 0x090;
// bit and bitfield definitions
volatile bit ICSS @ ((unsigned)&OSCCON*8)+2;
volatile bit ICSL @ ((unsigned)&OSCCON*8)+3;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned : 2;
unsigned ICSS : 1;
unsigned ICSL : 1;
unsigned IRCF : 2;
};
} OSCCONbits @ 0x090;
#endif
// Register: OSCTUNE
volatile unsigned char OSCTUNE @ 0x091;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TUN : 6;
};
} OSCTUNEbits @ 0x091;
#endif
// Register: PR2
volatile unsigned char PR2 @ 0x092;
// bit and bitfield definitions
// Register: SSPADD
volatile unsigned char SSPADD @ 0x093;
// bit and bitfield definitions
// Register: SSPSTAT
volatile unsigned char SSPSTAT @ 0x094;
// bit and bitfield definitions
volatile bit BF @ ((unsigned)&SSPSTAT*8)+0;
volatile bit UA @ ((unsigned)&SSPSTAT*8)+1;
volatile bit R_nW @ ((unsigned)&SSPSTAT*8)+2;
volatile bit S @ ((unsigned)&SSPSTAT*8)+3;
volatile bit P @ ((unsigned)&SSPSTAT*8)+4;
volatile bit D_nA @ ((unsigned)&SSPSTAT*8)+5;
volatile bit CKE @ ((unsigned)&SSPSTAT*8)+6;
volatile bit SMP @ ((unsigned)&SSPSTAT*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;
};
struct {
unsigned : 1;
unsigned : 1;
unsigned : 1;
unsigned : 1;
unsigned : 1;
unsigned : 1;
unsigned : 1;
unsigned : 1;
};
} SSPSTATbits @ 0x094;
#endif
// Register: WPUB
volatile unsigned char WPUB @ 0x095;
// bit and bitfield definitions
// Register: IOCB
volatile unsigned char IOCB @ 0x096;
// bit and bitfield definitions
// Register: TXSTA
volatile unsigned char TXSTA @ 0x098;
// bit and bitfield definitions
volatile bit TX9D @ ((unsigned)&TXSTA*8)+0;
volatile bit TRMT @ ((unsigned)&TXSTA*8)+1;
volatile bit BRGH @ ((unsigned)&TXSTA*8)+2;
volatile bit SYNC @ ((unsigned)&TXSTA*8)+4;
volatile bit TXEN @ ((unsigned)&TXSTA*8)+5;
volatile bit TX9 @ ((unsigned)&TXSTA*8)+6;
volatile bit CSRC @ ((unsigned)&TXSTA*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned TX9D : 1;
unsigned TRMT : 1;
unsigned BRGH : 1;
unsigned : 1;
unsigned SYNC : 1;
unsigned TXEN : 1;
unsigned TX9 : 1;
unsigned CSRC : 1;
};
} TXSTAbits @ 0x098;
#endif
// Register: SPBRG
volatile unsigned char SPBRG @ 0x099;
// bit and bitfield definitions
// Register: APFCON
volatile unsigned char APFCON @ 0x09C;
// bit and bitfield definitions
volatile bit CCP2SEL @ ((unsigned)&APFCON*8)+0;
volatile bit SSSEL @ ((unsigned)&APFCON*8)+1;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned CCP2SEL : 1;
unsigned SSSEL : 1;
};
} APFCONbits @ 0x09C;
#endif
// Register: FVRCON
volatile unsigned char FVRCON @ 0x09D;
// bit and bitfield definitions
volatile bit ADFVR0 @ ((unsigned)&FVRCON*8)+0;
volatile bit ADFVR1 @ ((unsigned)&FVRCON*8)+1;
volatile bit FVREN @ ((unsigned)&FVRCON*8)+6;
volatile bit FVRRDY @ ((unsigned)&FVRCON*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned ADFVR0 : 1;
unsigned ADFVR1 : 1;
unsigned : 2;
unsigned : 1;
unsigned : 1;
unsigned FVREN : 1;
unsigned FVRRDY : 1;
};
} FVRCONbits @ 0x09D;
#endif
// Register: ADCON1
volatile unsigned char ADCON1 @ 0x09F;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned ADREF : 2;
unsigned : 2;
unsigned ADCS : 3;
};
} ADCON1bits @ 0x09F;
#endif
//
// Special function register definitions: Bank 2
//
// Register: CPSCON0
volatile unsigned char CPSCON0 @ 0x108;
// bit and bitfield definitions
volatile bit T0XCS @ ((unsigned)&CPSCON0*8)+0;
volatile bit CPSOUT @ ((unsigned)&CPSCON0*8)+1;
volatile bit CPSON @ ((unsigned)&CPSCON0*8)+7;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned T0XCS : 1;
unsigned CPSOUT : 1;
unsigned CPSRNG : 2;
unsigned : 3;
unsigned CPSON : 1;
};
} CPSCON0bits @ 0x108;
#endif
// Register: CPSCON1
volatile unsigned char CPSCON1 @ 0x109;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned CPSCH : 3;
unsigned : 1;
};
} CPSCON1bits @ 0x109;
#endif
// Register: PMDATL
volatile unsigned char PMDATL @ 0x10C;
// bit and bitfield definitions
// Register: PMADRL
volatile unsigned char PMADRL @ 0x10D;
// bit and bitfield definitions
// Register: PMDATH
volatile unsigned char PMDATH @ 0x10E;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned PMDATH : 6;
};
} PMDATHbits @ 0x10E;
#endif
// Register: PMADRH
volatile unsigned char PMADRH @ 0x10F;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned PMADRH : 3;
};
} PMADRHbits @ 0x10F;
#endif
//
// Special function register definitions: Bank 3
//
// Register: ANSELA
volatile unsigned char ANSELA @ 0x185;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned ANSA : 6;
};
} ANSELAbits @ 0x185;
#endif
// Register: ANSELB
volatile unsigned char ANSELB @ 0x186;
// bit and bitfield definitions
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned ANSB : 6;
};
} ANSELBbits @ 0x186;
#endif
// Register: PMCON1
volatile unsigned char PMCON1 @ 0x18C;
// bit and bitfield definitions
volatile bit RD @ ((unsigned)&PMCON1*8)+0;
#ifndef _LIB_BUILD
volatile union {
struct {
unsigned RD : 1;
};
} PMCON1bits @ 0x18C;
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -