📄 一线 接口的显示器.txt
字号:
Sdat bit p1.0 ;定义输出口线
org 0000h
jmp Start
org 0100h
Start:
mov sp,#60h
mov r3,#4 ;设定显示位计数器初值
mov tmod ,#10h ;设定定时器1,16位
setb tr1
mov 20h,#0 ;显示计数器高位
mov 21h,#0 ;显示计数器低位
Main:
call Display
djnz r3,Do_Something
mov r3,#4
call INC_BCD ;显示一轮后计数加一
Do_Something:
;
;
;
call Delay_4ms
jmp Main
Delay_4ms:
jnb tf1,$ ;等到4MS计时结束
mov th1,#((65536-4000)/256)
mov tl1,#((65536-4000) mod 256)
clr tf1
ret
INC_BCD: ;四位BCD码加一子程序
mov a,21h
add a,#1
da a
mov 21h,a
mov a,20h
addc a,#0
da a
mov 20h,a
ret
Display:
setb c
clr a
mov r0,3
rlc a
djnz r0,$-1
mov r1,#13
LpDsp: clr Sdat
mov r0,#2
djnz r0,$
mov Sdat,c
mov r0,#24
cjne r1,#8,Dly50
cjne r3,#4,$+6
mov a,20h
swap a
cjne r3,#3,$+5
mov a,20h
cjne r3,#2,$+6
mov a,21h
swap a
cjne r3,#1,$+5
mov a,21h
anl a,#00001111b
mov dptr,#Table
movc a,@a+dptr
mov r0,#16
Dly50: djnz r0,$
setb Sdat
mov r0,#22
djnz r0,$
rrc a
djnz r1,LpDsp
ret
Table:
DB 00101000B ;0
DB 11101011B ;1
DB 00110010B ;2
DB 10100010B ;3
DB 11100001B ;4
DB 10100100B ;5
DB 00100100B ;6
DB 11101010B ;7
DB 00100000B ;8
DB 10100000B ;9
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -