⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 80c196kr.inc

📁 mcs51,2051,x86系列MCU
💻 INC
字号:
;*****************************************************************************
;
; 80C196KR.INC - DEFINITION OF SYMBOLIC NAMES FOR THE I/O REGISTERS
;                OF THE 8XC196KR
;                Copyright INTEL Corporation 1992
;*****************************************************************************

tmpreg0         EQU      01CH:WORD

P0_PIN		EQU	01FDAH:BYTE
P1_PIN          EQU     01FD6H:BYTE
P1_REG          EQU     01FD4H:BYTE
P1_DIR          EQU     01FD2H:BYTE
P1_MODE         EQU     01FD0H:BYTE

P6_PIN          EQU     01FD7H:BYTE
P6_REG          EQU     01FD5H:BYTE
P6_DIR          EQU     01FD3H:BYTE
P6_MODE         EQU     01FD1H:BYTE

P2_PIN          EQU     01FCFH:BYTE
P2_REG          EQU     01FCDH:BYTE
P2_DIR          EQU     01FCBH:BYTE
P2_MODE         EQU     01FC9H:BYTE

TIMER1          EQU     01F9AH:WORD
TIMER2          EQU     01F9EH:WORD
T1CONTROL       EQU     01F98H:BYTE
T2CONTROL       EQU     01F9CH:BYTE

SP_BAUD         EQU     01FBCH:WORD
SP_CON          EQU     01FBBH:BYTE
SP_STATUS       EQU     01FB9H:BYTE
SBUF_TX         EQU     01FBAH:BYTE
SBUF_RX         EQU     01FB8H:BYTE

EPAIPV          EQU     01FA8H:BYTE
EPA_PEND        EQU     01FA2H:WORD
EPA_PEND1       EQU     01FA6H:BYTE
EPA_MASK        EQU     01FA0H:WORD
EPA_MASK1       EQU     01FA4H:WORD ; BUG... must write to mask as a word

AD_TIME         EQU     01FAFH:BYTE
AD_TEST         EQU     01FAEH:BYTE
AD_COMMAND      EQU     01FACH:WORD
AD_RESULT       EQU     01FAAH:WORD

SSIO_BAUD       EQU     01FB4H:BYTE
SSIO1_CON       EQU     01FB3H:BYTE
SSIO1_BUF       EQU     01FB2H:BYTE
SSIO0_CON       EQU     01FB1H:BYTE
SSIO0_BUF       EQU     01FB0H:BYTE

SLP_CON         EQU     01FFBH:BYTE
SLP_CMD         EQU     01FFAH:BYTE
SLP_STAT        EQU     01FF8H:BYTE

P3_PIN          EQU     1FFEH:BYTE
P4_PIN          EQU     1FFFH:BYTE
P3_REG          EQU     1FFCH:BYTE
P4_REG          EQU     1FFDH:BYTE

P5_PIN          EQU     01FF7H:BYTE
P5_REG          EQU     01FF5H:BYTE
P5_DIR          EQU     01FF3H:BYTE
P5_MODE         EQU     01FF1H:BYTE

EP_PIN          EQU     1FE7H:BYTE
EP_REG          EQU     1FE5H:BYTE
EP_DIR          EQU     1FE3H:BYTE
EP_MODE         EQU     1FE1H:BYTE

P34_DRV         EQU     1FF4H:BYTE

COMP1_TIME      EQU     01F8EH:WORD
COMP1_CON       EQU     01F8CH:BYTE
COMP0_TIME      EQU     01F8AH:WORD
COMP0_CON       EQU     01F88H:BYTE

EPA9_TIME       EQU     01F86H:WORD
EPA9_CON        EQU     01F84H:BYTE
EPA8_TIME       EQU     01F82H:WORD
EPA8_CON        EQU     01F80H:BYTE
EPA7_TIME       EQU     01F7EH:WORD
EPA7_CON        EQU     01F7CH:BYTE
EPA6_TIME       EQU     01F7AH:WORD
EPA6_CON        EQU     01F78H:BYTE
EPA5_TIME       EQU     01F76H:WORD
EPA5_CON        EQU     01F74H:BYTE
EPA4_TIME       EQU     01F72H:WORD
EPA4_CON        EQU     01F70H:BYTE
EPA3_TIME       EQU     01F6EH:WORD
EPA3_CON        EQU     01F6CH:WORD
EPA2_TIME       EQU     01F6AH:WORD
EPA2_CON        EQU     01F68H:WORD
EPA1_TIME       EQU     01F66H:WORD
EPA1_CON        EQU     01F64H:WORD
EPA0_TIME       EQU     01F62H:WORD
EPA0_CON        EQU     01F60H:BYTE

;*****************************************************************************
;
;    128-BYTE Window SFR's
;
;*****************************************************************************

P1_PIN_1F       EQU     0D6H:BYTE
P1_REG_1F       EQU     0D4H:BYTE
P1_DIR_1F       EQU     0D2H:BYTE
P1_MODE_1F      EQU     0D0H:BYTE

P6_PIN_1F       EQU     0D7H:BYTE
P6_REG_1F       EQU     0D5H:BYTE
P6_DIR_1F       EQU     0D3H:BYTE
P6_MODE_1F      EQU     0D1H:BYTE

P2_PIN_1F       EQU     0CFH:BYTE
P2_REG_1F       EQU     0CDH:BYTE
P2_DIR_1F       EQU     0CBH:BYTE
P2_MODE_1F      EQU     0C9H:BYTE

TIMER1_1F       EQU     09AH:WORD
TIMER2_1F       EQU     09EH:WORD
T1CONTROL_1F    EQU     098H:BYTE
T2CONTROL_1F    EQU     09CH:BYTE

SP_BAUD_1F      EQU     0BCH:WORD
SP_CON_1F       EQU     0BBH:BYTE
SP_STATUS_1F    EQU     0B9H:BYTE
SBUF_TX_1F      EQU     0BAH:BYTE
SBUF_RX_1F      EQU     0B8H:BYTE

EPAIPV_1F       EQU     0A8H:BYTE
EPA_PEND_1F     EQU     0A2H:WORD
EPA_PEND1_1F    EQU     0A6H:BYTE
EPA_MASK_1F     EQU     0A0H:WORD
EPA_MASK1_1F    EQU     0A4H:WORD ; BUG... must write to mask as a word

AD_TIME_1F      EQU     0AFH:BYTE
AD_TEST_1F      EQU     0AEH:BYTE
AD_COMMAND_1F   EQU     0ACH:WORD
AD_RESULT_1F    EQU     0AAH:WORD

SSIO_BAUD_1F    EQU     0B4H:BYTE
SSIO1_CON_1F    EQU     0B3H:BYTE
SSIO1_BUF_1F    EQU     0B2H:BYTE
SSIO0_CON_1F    EQU     0B1H:BYTE
SSIO0_BUF_1F    EQU     0B0H:BYTE

COMP1_TIME_1F   EQU     08EH:WORD
COMP1_CON_1F    EQU     08CH:BYTE
COMP0_TIME_1F   EQU     08AH:WORD
COMP0_CON_1F    EQU     088H:BYTE

EPA9_TIME_1F    EQU     086H:WORD
EPA9_CON_1F     EQU     084H:BYTE
EPA8_TIME_1F    EQU     082H:WORD
EPA8_CON_1F     EQU     080H:BYTE
EPA7_TIME_1E    EQU     0FEH:WORD
EPA7_CON_1E     EQU     0FCH:BYTE
EPA6_TIME_1E    EQU     0FAH:WORD
EPA6_CON_1E     EQU     0F8H:BYTE
EPA5_TIME_1E    EQU     0F6H:WORD
EPA5_CON_1E     EQU     0F4H:BYTE
EPA4_TIME_1E    EQU     0F2H:WORD
EPA4_CON_1E     EQU     0F0H:BYTE
EPA3_TIME_1E    EQU     0EEH:WORD
EPA3_CON_1E     EQU     0ECH:WORD
EPA2_TIME_1E    EQU     0EAH:WORD
EPA2_CON_1E     EQU     0E8H:WORD
EPA1_TIME_1E    EQU     0E6H:WORD
EPA1_CON_1E     EQU     0E4H:WORD
EPA0_TIME_1E    EQU     0E2H:WORD
EPA0_CON_1E     EQU     0E0H:BYTE

;*****************************************************************************
;
;    64-BYTE Window SFR's
;
;*****************************************************************************

P1_PIN_3F       EQU     0D6H:BYTE
P1_REG_3F       EQU     0D4H:BYTE
P1_DIR_3F       EQU     0D2H:BYTE
P1_MODE_3F      EQU     0D0H:BYTE

P6_PIN_3F       EQU     0D7H:BYTE
P6_REG_3F       EQU     0D5H:BYTE
P6_DIR_3F       EQU     0D3H:BYTE
P6_MODE_3F      EQU     0D1H:BYTE

P2_PIN_3F       EQU     0CFH:BYTE
P2_REG_3F       EQU     0CDH:BYTE
P2_DIR_3F       EQU     0CBH:BYTE
P2_MODE_3F      EQU     0C9H:BYTE

TIMER1_3E       EQU     0DAH:WORD
TIMER2_3E       EQU     0DEH:WORD
T1CONTROL_3E    EQU     0D8H:BYTE
T2CONTROL_3E    EQU     0DCH:BYTE

SP_BAUD_3E      EQU     0FCH:WORD
SP_CON_3E       EQU     0FBH:BYTE
SP_STATUS_3E    EQU     0F9H:BYTE
SBUF_TX_3E      EQU     0FAH:BYTE
SBUF_RX_3E      EQU     0F8H:BYTE

EPAIPV_3E       EQU     0E8H:BYTE
EPA_PEND_3E     EQU     0E2H:WORD
EPA_PEND1_3E    EQU     0E6H:BYTE
EPA_MASK_3E     EQU     0E0H:WORD
EPA_MASK1_3E    EQU     0E4H:WORD ; BUG... must write to mask as a word

AD_TIME_3E      EQU     0EFH:BYTE
AD_TEST_3E      EQU     0EEH:BYTE
AD_COMMAND_3E   EQU     0ECH:WORD
AD_RESULT_3E    EQU     0EAH:WORD

SSIO_BAUD_3E    EQU     0F4H:BYTE
SSIO1_CON_3E    EQU     0F3H:BYTE
SSIO1_BUF_3E    EQU     0F2H:BYTE
SSIO0_CON_3E    EQU     0F1H:BYTE
SSIO0_BUF_3E    EQU     0F0H:BYTE

COMP1_TIME_3E   EQU     0CEH:WORD
COMP1_CON_3E    EQU     0CCH:BYTE
COMP0_TIME_3E   EQU     0CAH:WORD
COMP0_CON_3E    EQU     0C8H:BYTE

EPA9_TIME_3E    EQU     0C6H:WORD
EPA9_CON_3E     EQU     0C4H:BYTE
EPA8_TIME_3E    EQU     0C2H:WORD
EPA8_CON_3E     EQU     0C0H:BYTE
EPA7_TIME_3D    EQU     0FEH:WORD
EPA7_CON_3D     EQU     0FCH:BYTE
EPA6_TIME_3D    EQU     0FAH:WORD
EPA6_CON_3D     EQU     0F8H:BYTE
EPA5_TIME_3D    EQU     0F6H:WORD
EPA5_CON_3D     EQU     0F4H:BYTE
EPA4_TIME_3D    EQU     0F2H:WORD
EPA4_CON_3D     EQU     0F0H:BYTE
EPA3_TIME_3D    EQU     0EEH:WORD
EPA3_CON_3D     EQU     0ECH:WORD
EPA2_TIME_3D    EQU     0EAH:WORD
EPA2_CON_3D     EQU     0E8H:WORD
EPA1_TIME_3D    EQU     0E6H:WORD
EPA1_CON_3D     EQU     0E4H:WORD
EPA0_TIME_3D    EQU     0E2H:WORD
EPA0_CON_3D     EQU     0E0H:BYTE

;*****************************************************************************
;
;    32-BYTE Window SFR's
;
;*****************************************************************************

P1_PIN_7E       EQU     0F6H:BYTE
P1_REG_7E       EQU     0F4H:BYTE
P1_DIR_7E       EQU     0F2H:BYTE
P1_MODE_7E      EQU     0F0H:BYTE

P6_PIN_7E       EQU     0F7H:BYTE
P6_REG_7E       EQU     0F5H:BYTE
P6_DIR_7E       EQU     0F3H:BYTE
P6_MODE_7E      EQU     0F1H:BYTE

P2_PIN_7E       EQU     0EFH:BYTE
P2_REG_7E       EQU     0EDH:BYTE
P2_DIR_7E       EQU     0EBH:BYTE
P2_MODE_7E      EQU     0E9H:BYTE

TIMER1_7C       EQU     0FAH:WORD
TIMER2_7C       EQU     0FEH:WORD
T1CONTROL_7C    EQU     0F8H:BYTE
T2CONTROL_7C    EQU     0FCH:BYTE

SP_BAUD_7D      EQU     0FCH:WORD
SP_CON_7D       EQU     0FBH:BYTE
SP_STATUS_7D    EQU     0F9H:BYTE
SBUF_TX_7D      EQU     0FAH:BYTE
SBUF_RX_7D      EQU     0F8H:BYTE

EPAIPV_7D       EQU     0E8H:BYTE
EPA_PEND_7D     EQU     0E2H:WORD
EPA_PEND1_7D    EQU     0E6H:BYTE
EPA_MASK_7D     EQU     0E0H:WORD
EPA_MASK1_7D    EQU     0E4H:WORD ; BUG... must write to mask as a word

AD_TIME_7D      EQU     0EFH:BYTE
AD_TEST_7D      EQU     0EEH:BYTE
AD_COMMAND_7D   EQU     0ECH:WORD
AD_RESULT_7D    EQU     0EAH:WORD

SSIO_BAUD_7D    EQU     0F4H:BYTE
SSIO1_CON_7D    EQU     0F3H:BYTE
SSIO1_BUF_7D    EQU     0F2H:BYTE
SSIO0_CON_7D    EQU     0F1H:BYTE
SSIO0_BUF_7D    EQU     0F0H:BYTE

COMP1_TIME_7C   EQU     0EEH:WORD
COMP1_CON_7C    EQU     0ECH:BYTE
COMP0_TIME_7C   EQU     0EAH:WORD
COMP0_CON_7C    EQU     0E8H:BYTE

EPA9_TIME_7C    EQU     0E6H:WORD
EPA9_CON_7C     EQU     0E4H:BYTE
EPA8_TIME_7C    EQU     0E2H:WORD
EPA8_CON_7C     EQU     0E0H:BYTE
EPA7_TIME_7B    EQU     0FEH:WORD
EPA7_CON_7B     EQU     0FCH:BYTE
EPA6_TIME_7B    EQU     0FAH:WORD
EPA6_CON_7B     EQU     0F8H:BYTE
EPA5_TIME_7B    EQU     0F6H:WORD
EPA5_CON_7B     EQU     0F4H:BYTE
EPA4_TIME_7B    EQU     0F2H:WORD
EPA4_CON_7B     EQU     0F0H:BYTE
EPA3_TIME_7B    EQU     0EEH:WORD
EPA3_CON_7B     EQU     0ECH:WORD
EPA2_TIME_7B    EQU     0EAH:WORD
EPA2_CON_7B     EQU     0E8H:WORD
EPA1_TIME_7B    EQU     0E6H:WORD
EPA1_CON_7B     EQU     0E4H:WORD
EPA0_TIME_7B    EQU     0E2H:WORD
EPA0_CON_7B     EQU     0E0H:BYTE

;*****************************************************************************
;
;    Core SFR's
;
;*****************************************************************************

zero_reg        EQU     00H:WORD
ff_reg          EQU     02H:WORD
ptssel          EQU     04H:WORD
ptssrv          EQU     06H:WORD
int_mask        EQU     08H:BYTE
int_pend        EQU     09H:BYTE
watchdog        EQU     0AH:BYTE
int_pend1       EQU     12H:BYTE
int_mask1       EQU     13H:BYTE
wsr             EQU     14H:BYTE
sp              EQU     18H:WORD

;**********************************************************************
;
;    Usefull bit macros
;
;**********************************************************************

SET_BIT        macro     regnum,bitnum
               ldb  tmpreg0, regnum[0]
               orb  tmpreg0,#( 1 SHL bitnum )
               stb  tmpreg0, regnum[0]
               endm

CLR_BIT        macro     regnum,bitnum
               ldb  tmpreg0, regnum[0]
               andb tmpreg0,  #not( 1 SHL bitnum )
               stb  tmpreg0, regnum[0]
               endm

SET_BITW       macro     regnum,bitnum
               ld   tmpreg0, regnum[0]
               or   tmpreg0,#( 1 SHL bitnum )
               st   tmpreg0, regnum[0]
               endm

CLR_BITW       macro     regnum,bitnum
               ld   tmpreg0, regnum[0]
               and  tmpreg0, #not( 1 SHL bitnum )
               st   tmpreg0, regnum[0]
               endm

SET_BIT_REG    macro     regnum,bitnum
               orb  regnum,#( 1 SHL bitnum )
               endm

CLR_BIT_REG    macro     regnum,bitnum
               andb regnum,#not( 1 SHL bitnum )
               endm

SET_BIT_REGW   macro     regnum,bitnum
               or   regnum,#( 1 SHL bitnum )
               endm

CLR_BIT_REGW   macro     regnum,bitnum
               and  regnum,#not( 1 SHL bitnum )
               endm

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -