📄 iar7166.h
字号:
__sfr __no_init volatile unsigned char TL1 @ 0x8B;
__sfr __no_init volatile unsigned char TH0 @ 0x8C;
__sfr __no_init volatile unsigned char TH1 @ 0x8D;
__sfr __no_init volatile union
{
unsigned char T2CON;
struct
{
unsigned char CAP2 : 1;
unsigned char CNT2 : 1;
unsigned char TR2 : 1;
unsigned char EXEN2 : 1;
unsigned char TCLK : 1;
unsigned char RCLK : 1;
unsigned char EXF2 : 1;
unsigned char TF2 : 1;
} T2CON_bit;
} @ 0xC8;
__sfr __no_init volatile unsigned char RCAP2L @ 0xCA;
__sfr __no_init volatile unsigned char RCAP2H @ 0xCB;
__sfr __no_init volatile unsigned char TL2 @ 0xCC;
__sfr __no_init volatile unsigned char TH2 @ 0xCD;
/*-------------------------------------------------------------------------
* FLASH
*-------------------------------------------------------------------------*/
__sfr __no_init volatile unsigned char ECON @ 0xB9;
__sfr __no_init volatile unsigned char FLSHKY @ 0xBA;
__sfr __no_init volatile unsigned char PROTKY @ 0xBB;
__sfr __no_init volatile unsigned char EDATA @ 0xBC;
__sfr __no_init volatile unsigned char EADRL @ 0xC6;
__sfr __no_init volatile unsigned char EADRH @ 0xC7;
/*-------------------------------------------------------------------------
* Power
*-------------------------------------------------------------------------*/
__sfr __no_init volatile union
{
unsigned char INTPR;
struct
{
unsigned char INT0PRG : 1;
unsigned char INT1PRG0 : 1;
unsigned char INT1PRG1 : 1;
unsigned char INT1PRG2 : 1;
unsigned char : 1;
unsigned char : 1;
unsigned char : 1;
unsigned char RTCCAL: 1;
} INTPR_bit;
} @ 0xFF;
__sfr __no_init volatile union
{
unsigned char PERIPH;
struct
{
unsigned char RXPROG0 : 1;
unsigned char RXPROG1 : 1;
unsigned char EXTREFEN : 1;
unsigned char REF_BATT_EN : 1;
unsigned char PLL_FLT : 1;
unsigned char VDD_OK : 1;
unsigned char VSWSOURCE : 1;
unsigned char RXFLAG : 1;
} PERIPH_bit;
} @ 0xF4;
__sfr __no_init volatile unsigned char KYREG @ 0xC1;
__sfr __no_init volatile union
{
unsigned char BATPR;
struct
{
unsigned char BATPRG0 : 1;
unsigned char BATPRG1 : 1;
unsigned char : 1;
unsigned char : 1;
unsigned char : 1;
unsigned char : 1;
unsigned char : 1;
unsigned char : 1;
} BATPR_bit;
} @ 0xF5;
__sfr __no_init volatile unsigned char SCRATCH1 @ 0xFB;
__sfr __no_init volatile unsigned char SCRATCH2 @ 0xFC;
__sfr __no_init volatile unsigned char SCRATCH3 @ 0xFD;
__sfr __no_init volatile unsigned char SCRATCH4 @ 0xFE;
__sfr __no_init volatile union
{
unsigned char IPSMF;
struct
{
unsigned char FVDC : 1;
unsigned char FBSO : 1;
unsigned char FBAT : 1;
unsigned char FVSW : 1;
unsigned char : 1;
unsigned char FSAG : 1;
unsigned char FPSM : 1;
unsigned char FPSR : 1;
} IPSMF_bit;
} @ 0xF8;
__sfr __no_init volatile union
{
unsigned char POWCON;
struct
{
unsigned char CD0 : 1;
unsigned char CD1 : 1;
unsigned char CD2 : 1;
unsigned char : 1;
unsigned char COREOFF : 1;
unsigned char : 1;
unsigned char : 1;
unsigned char : 1;
} POWCON_bit;
} @ 0xC5;
__sfr __no_init volatile union
{
unsigned char IPSME;
struct
{
unsigned char EVDCIN : 1;
unsigned char EBSO : 1;
unsigned char EBAT : 1;
unsigned char EVSW : 1;
unsigned char : 1;
unsigned char ESAG : 1;
unsigned char ADEIAUTCLR : 1;
unsigned char EPSR : 1;
} IPSME_bit;
} @ 0xEC;
/*
* Interrupt Vectors
*/
#pragma language=default
#endif /* __IAR_SYSTEMS_ICC__ */
/***************************************************************************
* Assembler definitions
*
* The following SFRs are built in in the a8051.exe and can not be
* defined explicitly in this file:
* ACC,B,PSW,SP,DPL,DPH
* The PSW-bits are built-in in the a8051.exe
* OV,AC,F0,RS0,RS1,P
*
***************************************************************************/
#ifdef __IAR_SYSTEMS_ASM__
/*-------------------------------------------------------------------------
* SPI
*-------------------------------------------------------------------------*/
SPI2CTX DEFINE 0x9A
SPI2CRX DEFINE 0x9B
SPIMOD1 DEFINE 0xE8
SPIMOD2 DEFINE 0xE9
SPISTAT DEFINE 0xEA
/*-------------------------------------------------------------------------
* I2C
*-------------------------------------------------------------------------*/
I2CMOD DEFINE 0xE8
I2CADR DEFINE 0xE9
I2CSTAT DEFINE 0xEA
/*-------------------------------------------------------------------------
* RTC
*-------------------------------------------------------------------------*/
TIMECON DEFINE 0xA1
TIMECON2 DEFINE 0xA2
RTCPTR DEFINE 0xA3
RTCDAT DEFINE 0xA4
RTCCOMP DEFINE 0xF6
TEMPCAL DEFINE 0xF7
/*-------------------------------------------------------------------------
* LCD
*-------------------------------------------------------------------------*/
LCDCON DEFINE 0x95
LCDCLK DEFINE 0x96
LCDSEGE DEFINE 0x97
LCDCONX DEFINE 0x9C
LCDPTR DEFINE 0xAC
LCDDAT DEFINE 0xAE
LCDCONY DEFINE 0xB1
LCDSEGE2 DEFINE 0xED
/*-------------------------------------------------------------------------
* Energy Measurement
*-------------------------------------------------------------------------*/
MADDPT DEFINE 0x91
MDATL DEFINE 0x92
MDATM DEFINE 0x93
MDATH DEFINE 0x94
VRMSL DEFINE 0xD1
VRMSM DEFINE 0xD2
VRMSH DEFINE 0xD3
IRMSL DEFINE 0xD4
IRMSM DEFINE 0xD5
IRMSH DEFINE 0xD6
MIRQENL DEFINE 0xD9
MIRQENM DEFINE 0xDA
MIRQENH DEFINE 0xDB
MIRQSTL DEFINE 0xDC
MIRQSTM DEFINE 0xDD
MIRQSTH DEFINE 0xDE
WAV1L DEFINE 0xE2
WAV1M DEFINE 0xE3
WAV1H DEFINE 0xE4
WAV2L DEFINE 0xE5
WAV2M DEFINE 0xE6
WAV2H DEFINE 0xE7
/*-------------------------------------------------------------------------
* UART
*-------------------------------------------------------------------------*/
SCON DEFINE 0x98
SBUF DEFINE 0x99
SBAUDF DEFINE 0x9D
SBAUDT DEFINE 0x9E
/*-------------------------------------------------------------------------
* UART2
*-------------------------------------------------------------------------*/
SCON2 DEFINE 0xE1
SBUF2 DEFINE 0xEB
SBAUD2 DEFINE 0xEE
/*-------------------------------------------------------------------------
* Interupt
*-------------------------------------------------------------------------*/
IE DEFINE 0xA8
IEIP2 DEFINE 0xA9
IP DEFINE 0xB8
WDCON DEFINE 0xC0
/*-------------------------------------------------------------------------
* Temp, batt and volt
*-------------------------------------------------------------------------*/
TEMPADC DEFINE 0xD7
ADCGO DEFINE 0xD8
BATADC DEFINE 0xDF
VSWADC DEFINE 0xEF
DIFFPROG DEFINE 0xF3
STRBPER DEFINE 0xF9
BATVTH DEFINE 0xFA
/*-------------------------------------------------------------------------
* I/O Ports
*-------------------------------------------------------------------------*/
P0 DEFINE 0x80 /* Port 0 */
P1 DEFINE 0x90
EPCFG DEFINE 0x9F
P2 DEFINE 0xA0
PINMAP0 DEFINE 0xB2
PINMAP1 DEFINE 0xB3
PINMAP2 DEFINE 0xB4
/*-------------------------------------------------------------------------
* Core
*-------------------------------------------------------------------------*/
PCON DEFINE 0x87
DPC DEFINE 0xA7
CFG DEFINE 0xAF
SPH DEFINE 0xB7
STCON DEFINE 0xBF
/*-------------------------------------------------------------------------
* Timer
*-------------------------------------------------------------------------*/
TCON DEFINE 0x88
TMOD DEFINE 0x89
TL0 DEFINE 0x8A
TL1 DEFINE 0x8B
TH0 DEFINE 0x8C
TH1 DEFINE 0x8D
T2CON DEFINE 0xC8
RCAP2L DEFINE 0xCA
RCAP2H DEFINE 0xCB
TL2 DEFINE 0xCC
TH2 DEFINE 0xCD
/*-------------------------------------------------------------------------
* FLASH
*-------------------------------------------------------------------------*/
ECON DEFINE 0xB9
FLSHKY DEFINE 0xBA
PROTKY DEFINE 0xBB
EDATA DEFINE 0xBC
EADRL DEFINE 0xC6
EADRH DEFINE 0xC7
/*-------------------------------------------------------------------------
* Power
*-------------------------------------------------------------------------*/
KYREG DEFINE 0xC1
POWCON DEFINE 0xC5
IPSME DEFINE 0xEC
PERIPH DEFINE 0xF4
BATPR DEFINE 0xF5
IPSMF DEFINE 0xF8
SCRATCH1 DEFINE 0xFB
SCRATCH2 DEFINE 0xFC
SCRATCH3 DEFINE 0xFD
SCRATCH4 DEFINE 0xFE
INTPR DEFINE 0xFF
/*-------------------------------------------------------------------------
* Bit Definitions
*-------------------------------------------------------------------------*/
//P0 bits
INT1 DEFINE 0x80
CF1 DEFINE 0x82
CF2 DEFINE 0x83
T0 DEFINE 0x86
T1 DEFINE 0x87
//TCON bits
IT0 DEFINE 0x88
IE0 DEFINE 0x89
IT1 DEFINE 0x8A
IE1 DEFINE 0x8B
TR0 DEFINE 0x8C
TF0 DEFINE 0x8D
TR1 DEFINE 0x8E
TF1 DEFINE 0x8F
//P1 bits
RXD DEFINE 0x90
TXD DEFINE 0x91
T2EX DEFINE 0x93
T2 DEFINE 0x94
//SCON bits
RI DEFINE 0x98
TI DEFINE 0x99
RB8 DEFINE 0x9A
TB8 DEFINE 0x9B
REN DEFINE 0x9C
SM2 DEFINE 0x9D
SM1 DEFINE 0x9E
SM0 DEFINE 0x9F
//IE bits
EX0 DEFINE 0xA8
ET0 DEFINE 0xA9
EX1 DEFINE 0xAA
ET1 DEFINE 0xAB
ES DEFINE 0xAC
ET2 DEFINE 0xAD
ETEMP DEFINE 0xAE
EA DEFINE 0xAF
//IP bits
PX0 DEFINE 0xB8
PT0 DEFINE 0xB9
PX1 DEFINE 0xBA
PT1 DEFINE 0xBB
PS DEFINE 0xBC
PT2 DEFINE 0xBD
PTEMP DEFINE 0xBE
PADE DEFINE 0xBF
//WDCON bits
WDWR DEFINE 0xC0
WDE DEFINE 0xC1
WDS DEFINE 0xC2
WDIR DEFINE 0xC3
PRE0 DEFINE 0xC4
PRE1 DEFINE 0xC5
PRE2 DEFINE 0xC6
PRE3 DEFINE 0xC7
//T2CON bits
CAP2 DEFINE 0xC8
CNT2 DEFINE 0xC9
TR2 DEFINE 0xCA
EXEN2 DEFINE 0xCB
TCLK DEFINE 0xCC
RCLK DEFINE 0xCD
EXF2 DEFINE 0xCE
TF2 DEFINE 0xCF
//PSW bits besides P, RS0, RS1, F0, AC and OV already built-in in the a8051.exe
F1 DEFINE 0xD1
CY DEFINE 0xD7
//ADCGO bits
BTADC DEFINE 0xD8
TADC DEFINE 0xD9
VADC DEFINE 0xDA
PLLACK DEFINE 0xDF
//SPIMOD1 bits
SPIR0 DEFINE 0xE8
SPIR1 DEFINE 0xE9
RXOFW DEFINE 0xEA
SSE DEFINE 0xEB
AUTO_SS DEFINE 0xEC
INTMOD DEFINE 0xED
//I2CMOD bits
I2CRCT0 DEFINE 0xE8
I2CRCT1 DEFINE 0xE9
I2CRCT2 DEFINE 0xEA
I2CRCT3 DEFINE 0xEB
I2CRCT4 DEFINE 0xEC
I2CR0 DEFINE 0xED
I2CR1 DEFINE 0xEE
I2CEN DEFINE 0xEF
//IPSMF bits
FVDC DEFINE 0xF8
FBSO DEFINE 0xF9
FBAT DEFINE 0xFA
FVSW DEFINE 0xFB
FSAG DEFINE 0xFD
FPSM DEFINE 0xFE
FPSR DEFINE 0xFF
//Define ADE indirect registers read and write commands
WATTHR_R DEFINE 0x01
RWATTHR_R DEFINE 0x02
LWATTHR_R DEFINE 0x03
VARHR_R DEFINE 0x04
RVARHR_R DEFINE 0x05
LVARHR_R DEFINE 0x06
VAHR_R DEFINE 0x07
RVAHR_R DEFINE 0x08
LVAHR_R DEFINE 0x09
PER_FREQ_R DEFINE 0x0A
MODE1_R DEFINE 0x0B
MODE2_R DEFINE 0x0C
WAVMODE_R DEFINE 0x0D
NLMODE_R DEFINE 0x0E
ACCMODE_R DEFINE 0x0F
PHCAL_R DEFINE 0x10
ZXTOUT_R DEFINE 0x11
LINCYC_R DEFINE 0x12
SAGCYC_R DEFINE 0x13
SAGLVL_R DEFINE 0x14
IPKLVL_R DEFINE 0x15
VPKLVL_R DEFINE 0x16
IPEAK_R DEFINE 0x17
RSTIPEAK_R DEFINE 0x18
VPEAK_R DEFINE 0x19
RSTVPEAK_R DEFINE 0x1A
GAIN_R DEFINE 0x1B
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -