?? key.asm
字號:
ORG 0000H
LJMP MAIN
ORG 0100H
TABLE:
DB 7AH,60H,5DH,75H,66H,37H,3FH,70H,7FH,77H
KEY0: PUSH PSW
CLR RS1
SETB RS1
CLR A
MOV R4,#00H
KEY1: LCALL KAP
JNZ KP1
LJMP KEY1
KP1: LCALL DELAY
LCALL KAP
JNZ KP2
LJMP KEY0
KP2: MOV R2,#0FEH
MOV R3,#00H
KP4: MOV P1,R2
MOV A,P1
JB ACC.4,L1
MOV A,#01H
LJMP KP5
L1: JB ACC.5,L2
MOV A,#02H
LJMP KP5
L2: JB ACC.6,L3
MOV A,#03H
LJMP KP5
L3: JB ACC.7,KP6
MOV A,#04H
KP5: ADD A,R4
PUSH ACC
KP3: LCALL DELAY
LCALL KAP
JNZ KP3
POP ACC
LJMP RETK0
KP6: INC R4
INC R4
INC R4
INC R4
MOV A,R2
JNB ACC.3,KEY0
RL A
CJNE A,#0EFH,KP7
MOV A,#00H
LJMP RETK0
KP7: MOV R2,A
LJMP KP4
RETK0:POP PSW
RET
KAP: MOV P1,#0FH
MOV A,P1
CPL A
ANL A,#0FH
RET
DELAY: MOV R6,#01AH ;延時
DL: MOV R7,#0FFH
DL0: DJNZ R7,DL0
DJNZ R6,DL
RET
MAIN:
MOV SP,#30H
MOV IE,#00H
MAIN1:
SETB P3.3
MOV DPTR,#0000H
MOV R2,#08H
MAIN0:
LCALL KEY0
JZ MAIN0
PUSH DPH
PUSH DPL
MOV DPTR,#TABLE
MOVC A,@A+DPTR
POP DPL
POP DPH
MOVX @DPTR,A
INC DPL
DJNZ R2,MAIN0
LJMP MAIN1
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -