新闻中心

EEPW首页>嵌入式系统>设计应用> 数码显示管显示按键序号 89c51单片机编程实例

数码显示管显示按键序号 89c51单片机编程实例

作者: 时间:2016-11-24 来源:网络 收藏

题目:AT89C51单片机P1口接8个按键(button),P2口接1个共阴极数码显示管,当有键按下时,数码显示管显示按键的序号

本文引用地址://m.amcfsurvey.com/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
jznext
mov r5,#1
acall delay
mov a,p1
cpl a
jznext
clr c
shift:

rrc a
jcdisplay
inc r1
sjmp shift
display:
mov a,r1
movc a,@a+dptr
mov p2,a
again:

mov a,p1
cpl a
jnzagain
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



评论


技术专区

关闭