参考下面电路:
篮球比赛中,得分可分为1分、2分、3分三种情况,为防止出见加分错误要另设一减分开关。根据这样的设计要求,结合数码管的显示以及51单片机中计数器的工作实现方式、接口应用、中断控制等可设计出程序流程图如下所示:
部分程序如下:
数码管的显示,在TAB中加入数码管显示数字时对应的16进制数
MOV DPTR,#TAB
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H
DB 92H,82H,0F8H,80H,90H
数码管显示程序:
MOV A,R0
MOV B,#10
DIV AB
MOVC A,@A+DPTR
MOV P1,A
MOV A,B
MOVC A,@A+DPTR
MOV P3,A
由于需要四个开关,取出A中的低四位来接开关,用ANL命令实现。其程序如下:
MOV A,P0
ANL A,#0FH
CJNE A,#0FH,KEY1
SJMP START
四个开关加1、加2、加3、减1,直接通过加法在累加器中实现,以开关1为例,程序如下:
MOV R1,#1
MOV A,R0
ADD A,R1
MOV R0,A
手打不易,如有帮助请采纳,或点击右上角的满意,谢谢!!
追问谢谢,那个计时记分的数码管还少了吧,请问你有完整的图和程序吗
追答如果分数能超过100份,你可以设计三位数字显示,不过貌似在中国用不到。
这只是给你一个思路,具体的还要自己做!
另外,你这点悬赏太少了,整个设计很大的,200分都没人给你做!