📄 59秒计时器的设计.asm
字号:
ORG 00H
START:MOV TMOD,#10H
MOV TH0,#3CH
MOV TL0,#0B0H
MOV DPTR,#TABLE
MOV R0,#20
SETB TR0
LP1: JBC TF0,LP2
AJMP LP1
LP2: MOV A,R4 ;加一子程序
CJNE A,#59,ADD1 ;当前值是否为59
MOV R4,#00H
AJMP JP1
ADD1: ADD A,#01H
MOV R4,A
JP1:ACALL DISP
AJMP START
RET
DISP: MOV A,R4
MOV B,#10
DIV AB ;当前值除以十
MOV 20H,A ;商送十位
MOV 21H,B ;余数送个位
DISP1: MOV A,20H ;十位显示
MOVC A,@A+DPTR
MOV P1,A
CLR P2.0
SETB P2.1
LCALL DELAY
DISP2: MOV A,21H ;个位显示
MOVC A,@A+DPTR
MOV P1,A
CLR P2.1
SETB P2.0
LCALL DELAY
DELAY: MOV R7,#05H
DELA: MOV R6,#28H
DEL: MOV R5,#8AH
DJNZ R5,$
DJNZ R6,DEL
DJNZ R7,DELA
RET
TABLE:DB 0c0H,0f9H,0a4H,0b0H,99H ;共阳极0~9显示代码
DB 92H,82H,0f8H,80H,90H
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -