📄 1.asm
字号:
ORG 0000H
LJMP START
ORG 0003H
LJMP TOINT
ORG 1000H
START: SETB IE.0
SETB IP.0
CLR TCON.0
ENTER: CLR EA
MOV R4 , #60
MOV P1 , #11110011B
CLR F0
SETB EA
LOOP1: ACALL DELAY
DJNZ R4 , PA1
AJMP LL1
PA1: MOV C , P1.6
JNC LOOP1
LL1: MOV P1 , #11110101B
ACALL DELAY
CLR EA
MOV R5 , #45
MOV P1 , #11011110B
SETB F0
SETB EA
LOOP2: ACALL DELAY
DJNZ R5 , PB1
AJMP LL2
PB1: MOV C , P1.7
JNC LOOP2
MOV C , P1.6
JC LOOP2
LL2: MOV P1 , #11101110B
ACALL DELAY
AJMP ENTER
DELAY: MOV R1 , #14H
MM1: MOV R2 , #0C8H
MM2: MOV R3 , #0FAH
MM3: DJNZ R3 , MM3
DJNZ R2 , MM2
DJNZ R1 , MM1
RET
;中断服务程序
TOINT: PUSH P1
MOV C , F0
JNC PA
SETB P1.5
CLR P1.4
ACALL DELAY
MOV P1 , #11110110B
SJMP LOOP
PA: SETB P1.2
CLR P1.1
ACALL DELAY
MOV P1 , #11110110B
LOOP: MOV C , P3.2
JNC LOOP
MOV C , F0
MOV P1 , #11110011B
LB: MOV P1 , #11011110B
POP P1
RETI
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -