📄 645464.txt
字号:
六位数码管显示控制
时间: 2008-4-9
/*p2口定义为数据口*/
org 0000h
buf1 equ 30h/*定义数据缓冲区*/
buf2 equ 31h
buf3 equ 32h
buf4 equ 33h
buf5 equ 34h
buf6 equ 35h
ajmp main /*转主程序*/
org 0030h
main: acall ini
loop: acall disp /*调用显示子程序*/
acall keyon
ajmp loop
ini: mov 40h,#00h
mov 41h,#01h
tab1: db 01h,02h,04h,08h,16h
db 32
/*数据显示子程序,显示数据存放在BUF1-BUF6中,其数据形式为BCD码,存放在低四位*/
disp: mov a,buf6
add a,#50h/*数据位值和数据段值合并存于累加器*/
mov p2,a/*送十万位数据*/
acall delay
mov a,buf5
add a,#40h
mov p2,a/*送万位数据*/
acall delay
mov a,buf4
add a,#30h
mov p2,a /*送千位数据*/
acall delay
mov a,buf3
add a,#20h
mov p2,a/*送百位数据*/
acall delay
mov a,buf2
add a,#10h
mov p2,a /*送十位数据*/
acall delay
mov a,buf1
add a,#00h
mov p2,a/*送个位数据*/
acall delay
ret
delay: mov r7,#06h/*3ms*/
dl1: mov r6,#0fah
djnz r6,$
djnz r7,dl1
ret
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -