📄 80c296sa.inc
字号:
ICB0_7E EQU 0E3H:BYTE
IDX1_LO_7E EQU 0E4H:WORD
IDX1_HI_7E EQU 0E6H:BYTE
ICB1_7E EQU 0E7H:BYTE
P1_PIN_7E EQU 0F6H:BYTE
P1_REG_7E EQU 0F4H:BYTE
P1_DIR_7E EQU 0F2H:BYTE
P1_MODE_7E EQU 0F0H:BYTE
P2_PIN_7E EQU 0F7H:BYTE
P2_REG_7E EQU 0F5H:BYTE
P2_DIR_7E EQU 0F3H:BYTE
P2_MODE_7E EQU 0F1H:BYTE
P3_PIN_7E EQU 0FEH:BYTE
P3_REG_7E EQU 0FCH:BYTE
P3_DIR_7E EQU 0FAH:BYTE
P3_MODE_7E EQU 0F8H:BYTE
P4_PIN_7E EQU 0FFH:BYTE
P4_REG_7E EQU 0FDH:BYTE
P4_DIR_7E EQU 0FBH:BYTE
P4_MODE_7E EQU 0F9H:BYTE
TIMER1_7C EQU 0F2H:WORD
TIMER2_7C EQU 0F6H:WORD
T1CONTROL_7C EQU 0F0H:BYTE
T2CONTROL_7C EQU 0F4H:BYTE
SP_BD_COUNT_7D EQU 0FEH:WORD
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
PWM0_CONTROL_7D EQU 0F0H:BYTE
PWM1_CONTROL_7D EQU 0F2H:BYTE
PWM2_CONTROL_7D EQU 0F4H:BYTE
CON_REG0_7D EQU 0F6H:BYTE
EPA_MASK_7C EQU 0FCH:BYTE
EPA_STAT_7C EQU 0FEH:BYTE
EPA3_TIME_7C EQU 0EEH:WORD
EPA3_CON_7C EQU 0ECH:WORD
EPA2_TIME_7C EQU 0EAH:WORD
EPA2_CON_7C EQU 0E8H:WORD
EPA1_TIME_7C EQU 0E6H:WORD
EPA1_CON_7C EQU 0E4H:WORD
EPA0_TIME_7C EQU 0E2H:WORD
EPA0_CON_7C EQU 0E0H:BYTE
ADDRCOM0_7A EQU 0E0H:WORD
ADDRMSK0_7A EQU 0E2H:WORD
BUSCON0_7A EQU 0E4H:BYTE
ADDRCOM1_7A EQU 0E8H:WORD
ADDRMSK1_7A EQU 0EAH:WORD
BUSCON1_7A EQU 0ECH:BYTE
ADDRCOM2_7A EQU 0F0H:WORD
ADDRMSK2_7A EQU 0F2H:WORD
BUSCON2_7A EQU 0F4H:BYTE
ADDRCOM3_7A EQU 0F8H:WORD
ADDRMSK3_7A EQU 0FAH:WORD
BUSCON3_7A EQU 0FCH:BYTE
ADDRCOM4_7B EQU 0E0H:WORD
ADDRMSK4_7B EQU 0E2H:WORD
BUSCON4_7B EQU 0E4H:BYTE
ADDRCOM5_7B EQU 0E8H:WORD
ADDRMSK5_7B EQU 0EAH:WORD
BUSCON5_7B EQU 0ECH:BYTE
;*****************************************************************************
;
; 64-BYTE Window SFR's (using the WSR1 register)
;
;*****************************************************************************
P1_PIN_3F_1 EQU 056H:BYTE
P1_REG_3F_1 EQU 054H:BYTE
P1_DIR_3F_1 EQU 052H:BYTE
P1_MODE_3F_1 EQU 050H:BYTE
P2_PIN_3F_1 EQU 057H:BYTE
P2_REG_3F_1 EQU 055H:BYTE
P2_DIR_3F_1 EQU 053H:BYTE
P2_MODE_3F_1 EQU 051H:BYTE
P3_PIN_3F_1 EQU 05EH:BYTE
P3_REG_3F_1 EQU 05CH:BYTE
P3_DIR_3F_1 EQU 05AH:BYTE
P3_MODE_3F_1 EQU 058H:BYTE
P4_PIN_3F_1 EQU 05FH:BYTE
P4_REG_3F_1 EQU 05DH:BYTE
P4_DIR_3F_1 EQU 05BH:BYTE
P4_MODE_3F_1 EQU 059H:BYTE
TIMER1_3E_1 EQU 052H:WORD
TIMER2_3E_1 EQU 056H:WORD
T1CONTROL_3E_1 EQU 050H:BYTE
T2CONTROL_3E_1 EQU 054H:BYTE
SP_BD_COUNT_3E_1 EQU 07EH:WORD
SP_BAUD_3E_1 EQU 07CH:WORD
SP_CON_3E_1 EQU 07BH:BYTE
SP_STATUS_3E_1 EQU 079H:BYTE
SBUF_TX_3E_1 EQU 07AH:BYTE
SBUF_RX_3E_1 EQU 078H:BYTE
PWM0_CONTROL_3E_1 EQU 070H:BYTE
PWM1_CONTROL_3E_1 EQU 072H:BYTE
PWM2_CONTROL_3E_1 EQU 074H:BYTE
CON_REG0_3E_1 EQU 076H:BYTE
EPA_MASK_3E_1 EQU 05CH:BYTE
EPA_STAT_3E_1 EQU 05EH:BYTE
EPA3_TIME_3E_1 EQU 04EH:WORD
EPA3_CON_3E_1 EQU 04CH:WORD
EPA2_TIME_3E_1 EQU 04AH:WORD
EPA2_CON_3E_1 EQU 048H:BYTE
EPA1_TIME_3E_1 EQU 046H:WORD
EPA1_CON_3E_1 EQU 044H:WORD
EPA0_TIME_3E_1 EQU 042H:WORD
EPA0_CON_3E_1 EQU 040H:BYTE
ADDRCOM0_3D_1 EQU 040H:WORD
ADDRMSK0_3D_1 EQU 042H:WORD
BUSCON0_3D_1 EQU 044H:BYTE
ADDRCOM1_3D_1 EQU 048H:WORD
ADDRMSK1_3D_1 EQU 04AH:WORD
BUSCON1_3D_1 EQU 04CH:BYTE
ADDRCOM2_3D_1 EQU 050H:WORD
ADDRMSK2_3D_1 EQU 052H:WORD
BUSCON2_3D_1 EQU 054H:BYTE
ADDRCOM3_3D_1 EQU 058H:WORD
ADDRMSK3_3D_1 EQU 05AH:WORD
BUSCON3_3D_1 EQU 05CH:BYTE
ADDRCOM4_3D_1 EQU 060H:WORD
ADDRMSK4_3D_1 EQU 062H:WORD
BUSCON4_3D_1 EQU 064H:BYTE
ADDRCOM5_3D_1 EQU 068H:WORD
ADDRMSK5_3D_1 EQU 06AH:WORD
BUSCON5_3D_1 EQU 06CH:BYTE
;*****************************************************************************
;
; 32-BYTE Window SFR's (using the WSR1 register)
;
;*****************************************************************************
P1_PIN_7E_1 EQU 076H:BYTE
P1_REG_7E_1 EQU 074H:BYTE
P1_DIR_7E_1 EQU 072H:BYTE
P1_MODE_7E_1 EQU 070H:BYTE
P2_PIN_7E_1 EQU 077H:BYTE
P2_REG_7E_1 EQU 075H:BYTE
P2_DIR_7E_1 EQU 073H:BYTE
P2_MODE_7E_1 EQU 071H:BYTE
P3_PIN_7E_1 EQU 07EH:BYTE
P3_REG_7E_1 EQU 07CH:BYTE
P3_DIR_7E_1 EQU 07AH:BYTE
P3_MODE_7E_1 EQU 078H:BYTE
P4_PIN_7E_1 EQU 07FH:BYTE
P4_REG_7E_1 EQU 07DH:BYTE
P4_DIR_7E_1 EQU 07BH:BYTE
P4_MODE_7E_1 EQU 079H:BYTE
TIMER1_7C_1 EQU 072H:WORD
TIMER2_7C_1 EQU 076H:WORD
T1CONTROL_7C_1 EQU 070H:BYTE
T2CONTROL_7C_1 EQU 074H:BYTE
SP_BD_COUNT_7D_1 EQU 07EH:WORD
SP_BAUD_7D_1 EQU 07CH:WORD
SP_CON_7D_1 EQU 07BH:BYTE
SP_STATUS_7D_1 EQU 079H:BYTE
SBUF_TX_7D_1 EQU 07AH:BYTE
SBUF_RX_7D_1 EQU 078H:BYTE
PWM0_CONTROL_7D_1 EQU 070H:BYTE
PWM1_CONTROL_7D_1 EQU 072H:BYTE
PWM2_CONTROL_7D_1 EQU 074H:BYTE
CON_REG0_7D_1 EQU 076H:BYTE
EPA_MASK_7C_1 EQU 07CH:BYTE
EPA_STAT_7C_1 EQU 07EH:BYTE
EPA3_TIME_7C_1 EQU 06EH:WORD
EPA3_CON_7C_1 EQU 06CH:WORD
EPA2_TIME_7C_1 EQU 06AH:WORD
EPA2_CON_7C_1 EQU 068H:WORD
EPA1_TIME_7C_1 EQU 066H:WORD
EPA1_CON_7C_1 EQU 064H:WORD
EPA0_TIME_7C_1 EQU 062H:WORD
EPA0_CON_7C_1 EQU 060H:BYTE
ADDRCOM0_7A_1 EQU 060H:WORD
ADDRMSK0_7A_1 EQU 062H:WORD
BUSCON0_7A_1 EQU 064H:BYTE
ADDRCOM1_7A_1 EQU 068H:WORD
ADDRMSK1_7A_1 EQU 06AH:WORD
BUSCON1_7A_1 EQU 06CH:BYTE
ADDRCOM2_7A_1 EQU 070H:WORD
ADDRMSK2_7A_1 EQU 072H:WORD
BUSCON2_7A_1 EQU 074H:BYTE
ADDRCOM3_7A_1 EQU 078H:WORD
ADDRMSK3_7A_1 EQU 07AH:WORD
BUSCON3_7A_1 EQU 07CH:BYTE
ADDRCOM4_7B_1 EQU 060H:WORD
ADDRMSK4_7B_1 EQU 062H:WORD
BUSCON4_7B_1 EQU 064H:BYTE
ADDRCOM5_7B_1 EQU 068H:WORD
ADDRMSK5_7B_1 EQU 06AH:WORD
BUSCON5_7B_1 EQU 06CH:BYTE
;*****************************************************************************
;
; Core SFR's
;
;*****************************************************************************
zero_reg EQU 00H:WORD
ones_reg EQU 02H:WORD
RPT_COUNT EQU 04H:BYTE
acc_04 EQU 06H:BYTE
int_mask EQU 08H:BYTE
int_pend EQU 09H:BYTE
acc_stat EQU 0BH:BYTE
acc_lo EQU 0CH:WORD
acc_hi EQU 0EH:WORD
ICX0 EQU 10H:WORD
int_pend1 EQU 12H:BYTE
int_mask1 EQU 13H:BYTE
wsr EQU 14H:BYTE
wsr1 EQU 15H:BYTE
ICX1 EQU 16H:WORD
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 + -