题目:AT89C51单片机P1口接8个按键(button),P2口接1个共阴极数码显示管,当有键按下时,数码显示管显示按键的序号
本文引用地址:https://www.eepw.com.cn/article/201611/320747.htm电路图:

源码如下:
org 00h
sjmp start
org 30h
start:
mov P2,#00h
start1:
mov r1,#00h
mov dptr,#table
next:
mov a,p1
cpl a
jz next
mov r5,#1
acall delay
mov a,p1
cpl a
jz next
clr c
shift:
rrc a
jc display
inc r1
sjmp shift
display:
mov a,r1
movc a,@a+dptr
mov p2,a
again:
mov a,p1
cpl a
jnz again
sjmp start1
delay:mov r6,#50
d1: mov r7,#100
djnz r7,$
djnz r6,d1
djnz r5,delay
ret
table:db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h
end
评论