📄 0000dao9999.asm.asm
字号:
ORG 0000H
AJMP main
ORG 000BH
LJMP int
ORG 0030H
main:
mov 70h, #00 ;定时器初始化9999
mov 71h, #00
mov 72h, #00
mov 73h, #00
mov r4, #20 ;定时1s寄存
mov tmod, #01h
mov tl0, #0b0h
mov th0, #3ch
setb et0
setb tr0
setb ea
lll: lcall display ;显示等待
ajmp lll
int:
djnz r4, out ;定时1s时间未到继续
mov r4, #20 ;定时是时间到
inc 70h
mov a, 70h
cjne a, #10, out
tt0: inc 71h
mov 70h, #00h
mov a, 71h
cjne a, #10, out
tt1:
inc 72h
mov 71h, #00h
mov a, 72h
cjne a, #10, out
tt2:
inc 73h
mov 72h, #00h
mov a, 72h
cjne a, #10, out
ljmp main
out:
mov tl0, #0b0h
mov th0, #3ch
reti
display:
mov dptr, #table ;查表显示
mov r1, #70h
MOV R2, #0EFH
MOV R5, #4
TT:
mov a, @r1
movc a , @a+dptr
mov p0, a
mov p2, r2
acall delay
inc r1
mov a, r2
rl a
mov r2, a
djnz r5, TT
ret
delay:
mov r6, #4
loop1: mov r7, #250
djnz r7, $
djnz r6, loop1
ret
table:
db 0c0h, 0f9h, 0a4h, 0b0h, 99h, 92h, 82h, 0f8h, 80h, 90h
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -