📄 clk2.asm
字号:
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP T10
ORG 0300H
MAIN: MOV 20H,#00H
mOV 21H,#00H
mov 22h,#00h
MOV 23H,#00H
MOV 25H,#00H
MOV IP,#02H
MOV IE,#82H
MOV TMOD,#01H
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0
MOV SP,#40H
NEXT: LCALL DISP
LCALL KEY
JZ NEXT
LCALL ANKEY
SJMP NEXT
NOP
NOP
NOP
T10: PUSH ACC
PUSH PSW
MOV TL0,#0B4H
MOV TH0,#3CH
INC 20H
MOV A,20H
CJNE A,#0AH,RETI1
MOV 20H,#00H
MOV A,21H
ADD A,#01H
DA A
MOV 21H,A
CJNE A,#60H,RETI1
MOV 21H,#00H
MOV A,22H
ADD A,#01H
DA A
MOV 22H,A
CJNE A,#60H,RETI1
MOV 22H,#00H
MOV A,23H
ADD A,#01H
DA A
MOV 23H,A
CJNE A,#24H,RETI1
MOV 23H,#00H
RETI1: POP PSW
POP ACC
RETI
NOP
NOP
DISP: ANL 2FH,#10H
MOV A,21H
ANL A,#0FH
ORL A,2FH
MOV 2FH,A
MOV A,21H
ANL A,#0F0H
SWAP A
MOV 2EH,A
ANL 2DH,#10H
MOV A,22H
ANL A,#0FH
ORL A,2DH
MOV 2DH,A
MOV A,22H
ANL A,#0F0H
SWAP A
MOV 2CH,A
ANL 2BH,#10H
MOV A,23H
ANL A,#0FH
ORL A,2BH
MOV 2BH,A
MOV A,23H
ANL A,#0F0H
SWAP A
MOV 2AH,A
MOV R0,#2FH
MOV R3,#06H
MOV A,#20H
LOOP1: MOV B,A
MOV p2,a
MOV DPTR,#TABLE
MOV A,@R0
MOVC A,@A+DPTR
CPL A
MOV p0,A
MOV R2,#80H
DJNZ R2,$
DEC R0
MOV A,B
RR A
DJNZ R3,LOOP1
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH
DB 7DH,07H,7FH,6FH,00,00,00,00,00,00
DB 0BFH,86H,0DBH,0CFH,0E6H,0EDH,0FDH,87H
DB 0FFH,0EFH,00,00,00,00,00,00
NOP
NOP
KEY: MOV P3,#0FFH
MOV A,P3
CPL A
ANL A,#0FH
JZ RETX
LCALL DISP
LCALL DISP
MOV A,P3
CPL A
ANL A,#0FH
JZ RETX
MOV R6,A
LOOP2: LCALL DISP
MOV A,P3
CPL A
ANL A,#0FH
JNZ LOOP2
MOV A,R6
RETX: RET
NOP
NOP
ANKEY: CLR EA
LX: MOV A,R6
JB ACC.0,L1
JB ACC.1,L2
JB ACC.2,L3
JNB ACC.3,L12
JB 2BH.4,L6
JB 2DH.4,L8
JB 2FH.4,L9
L12: LCALL DISP
LCALL DISP
LCALL KEY
JZ L12
LJMP LX
L2: MOV 25H,#00H
CLR 2BH.4
CLR 2DH.4
CLR 2FH.4
SETB EA
RET
L3: JB 2BH.4,L61
JB 2DH.4,L81
JB 2FH.4,L91
AJMP L12
L1: MOV A,25H
JZ LB1
JB ACC.0,LB2
JB ACC.1,LB3
JNB ACC.2,L12
LB1: MOV 25H,#01H
SETB 2BH.4
CLR 2DH.4
CLR 2FH.4
AJMP L12
LB3: MOV 25H,#04H
SETB 2FH.4
CLR 2DH.4
CLR 2BH.4
AJMP L12
LB2: MOV 25H,#02H
SETB 2DH.4
CLR 2BH.4
CLR 2FH.4
AJMP L12
L61: AJMP L611
L81: AJMP L811
L91: AJMP L911
L6: MOV A,23H
ADD A,#01H
DA A
MOV 23H,A
CJNE A,#24H,L15
L15: JC L112
MOV 23H,#00H
L112: AJMP L12
L8: MOV A,22H
ADD A,#01H
DA A
MOV 22H,A
CJNE A,#60H,L16
L16: JC L112
MOV 22H,#00H
AJMP L12
L9: MOV A,21H
ADD A,#01H
DA A
MOV 21H,A
CJNE A,#60H,L17
L17: JC L112
MOV 21H,#00H
AJMP L12
L611: MOV A,23H
ADD A,#99H
DA A
MOV 23H,A
CJNE A,#99H,L112
MOV 23H,#23H
AJMP L12
L811: MOV A,22H
ADD A,#99H
DA A
MOV 22H,A
CJNE A,#99H,L112
MOV 22H,#59H
AJMP L12
L911: MOV A,21H
ADD A,#99H
DA A
MOV 21H,A
CJNE A,#99H,L112
MOV 21H,#59H
AJMP L12
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -