📄 function.asm.bak
字号:
;***********************************************************************
;F: File Name: function.asm.
;F: Build Date: 2006/11/3.
;F:
;F:
;F:
;***********************************************************************
;*****************************************************************
;F: Function Name: F_ClrAllRAM.
;F:
;F:
;F:
;F:
;******************************************************************
F_ClrAllRAM:
lds R_WrkReg1,0;
mvl R_WrkReg1;
mvh R_WrkReg1;
mvu R_WrkReg1;
L_LoopClr:
lds R_WrkReg1,0;
sta# @HL;
cphl 0ffh;
jmp L_LoopClr;
rts;
;******************************************************************
;F: Function Name: F_InitalPort.
;F:
;F:
;F:
;F:
;F:
;*******************************************************************
F_InitalPort:
lds R_WrkReg1,D_RFLED;
lcp R_RFLEDBuf,R_WrkReg1;
lds R_WrkReg1,D_LowBatLED;
lcp R_LowBatLEDBuf,R_WrkReg1;
lds R_WrkReg1,0;
opa R_WrkReg1;
spa 1111b;
lds R_WrkReg1,D_CSn;
opa R_WrkReg1;
sta R_PortA;
lds R_WrkReg1,0;
opb R_WrkReg1;
spb 0000b;
opc R_WrkReg1;
spc 10000b;
opd R_WrkReg1;
spd 10000b;
;======================================
;======================================
nop;
nop;
nop;
ipd R_WrkReg1;
sta R_AddrCode;
tmsx 001111111b; 15.625ms interrupt.
sf 80h; Enable the re-load function.
sie* D_Tmr1IntEnable+D_PreIntEnable;
rts;
;*********************************************************************
;F: Function Name: F_ScanKey.
;F:
;F:
;F:
;F:
;*********************************************************************
F_ScanKey:
subi R_KeyStep,D_DelStep;
jz L_DelStepPro;
subi R_KeyStep,D_WaitStep;
jz L_WaitStepPro;
subi R_KeyStep,D_RelaseStep;
jz L_RelaseStepPro;
L_ChkStepPro:
ipc R_IntWrk;
jz L_ScanKeyRet;
lds R_KeyStep,D_DelStep;
jmp L_ScanKeyRet;
;=============================================
;=============================================
L_DelStepPro:
lds R_KeyStep,D_WaitStep;
ipc R_IntWrk;
jb0 L_K1Is;
jb1 L_K2Is;
jb2 L_K3Is;
jb3 L_K4Is;
jmp L_ErrKey;
L_K1Is:
lds R_KeyVal,1;
jmp L_ScanKeyRet;
L_K2Is:
lds R_KeyVal,2;
jmp L_ScanKeyRet;
L_K3Is:
lds R_KeyVal,4;
jmp L_ScanKeyRet;
L_K4Is:
lds R_KeyVal,8;
jmp L_ScanKeyRet;
;=============================================
;=============================================
L_WaitStepPro:
ipc R_IntWrk;
jnz L_ScanKeyRet;
lds R_KeyStep,D_RelaseStep;
jmp L_ScanKeyRet;
;=============================================
;=============================================
L_RelaseStepPro:
ipc R_IntWrk;
jz L_ErrKey;
lds R_KeyStep,D_WaitStep;
jmp L_ScanKeyRet;
L_ErrKey:
lds R_KeyStep,0;
L_ScanKeyRet:
rts;
;**********************************************************************
;F: Function Name: F_ChkLowBatter.
;F:
;F:
;F:
;F:
;**********************************************************************
F_ChkLowBatter:
ipb R_WrkReg1;
jb2 L_NoLowBat;
L_LowBatIs:
lds R_WrkReg1,0
lcp R_LowBatLEDBuf,R_WrkReg1;
rts;
L_NoLowBat:
lds R_WrkReg1,D_LowBatLED;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -