基于单片机at89c51控制的篮球计分器课程设计报告内容摘要:

ED 的运行状态(输赢状态),如图 所示。 宁波技师学院电气系 流水灯 课程设计 9 9 按钮加分电路 图 按钮加分电路 注 :此电路可以选择甲、乙的加分,如图 所示。 宁波技师学院电气系 流水灯 课程设计 10 10 三 软件设计 主程序流程图 开始总分寄存器 R0 清 0七段数码管首送地址 D P T R读取 P 0 口的值 取出低 4 位是否有键按下 按键区抖动再次读取 P 0 口的值 取出低 4 位 是否真有键按下 哪个键按下的。 加 1 分 加 2 分 加 3 分 清零S1 S2 S3 S4 等待按键释放将总分转换为 B C D 码再将 B C D 码转换为七段码经 P 1 口和 P 3 口输出显示NNS T A R T 宁波技师学院电气系 流水灯 课程设计 11 11 图 流程图 注 :篮球计分程序根据流程图所写,根 据按钮是否按下跳起来判断是否执行下一条令,从而使 LED 指示灯与数码管显示出值。 宁波技师学院电气系 流水灯 课程设计 12 12 程序图。 篮球记分器 ORG 0000H JMP LOOP3。 主程序 ORG 0003H JMP KAI。 外部中断 0:判断输赢 ORG 0013H JMP JIAO。 外部中断 1:比分交换 LOOP3: SETB EA。 中断开启 SETB EX0 SETB IT0 SETB EX1 SETB IT1 MOV P0,0FFH。 赋初值 MOV P1,0FFH MOV P2,00H MOV P3,0CH MOV A,00H MOV R5,00H MOV R1,00H MOV R2,00H MOV R3,00H MOV R4,00H MOV R6,00H CLR CY LOOP2: MOV DPTR,TABLE1。 比分显示 开始扫描 LCALL DAY1。 扫描左移 MOV A,R1。 左边比分十位数值传送到 P2 口 宁波技师学院电气系 流水灯 课程设计 13 13 MOVC A,@A+DPTR MOV P2,A LCALL DAY2。 延时扫描时 间 LCALL DAY1。 扫描左移 MOV DPTR,TABLE2。 左边比分个位数值传送到 P2 口 MOV A,R2 MOVC A,@A+DPTR MOV P2,A LCALL DAY2。 延时扫描时间 LCALL DAY1。 扫描左移 MOV DPTR,TABLE3 MOV A,R3 MOVC A,@A+DPTR MOV P2,A LCALL DAY2。 延时扫描时间 LCALL DAY1。 扫描左移 MOV DPTR,TABLE4 MOV A,R4 MOVC A,@A+DPTR MOV P2,A LCALL DAY2。 延时扫描时间 LCALL DAY1。 扫描左移 MOV DPTR,TABLE5。 右边比分十位数值传送到 P2 口 MOV A,R5 MOVC A,@A+DPTR MOV P2,A LCALL DAY2。 延时扫描时间 LCALL DAY1。 扫描左移 MOV DPTR,TABLE6。 右边比分个位数值传送到 P2 口 MOV A,R6 宁波技师学院电气系 流水灯 课程设计 14 14 MOVC A,@A+DPTR MOV P2,A LCALL DAY2。 延时扫描时间 MOV P1,0FFH CLR CY JNB ,LOOP20。 判断左边有没有加 1 分键按下 LCALL DAY JB ,$。 去抖动 LCALL DAY JB ,$ MOV A,01。 左边加 1 分并判断分数有没有超过十分 ADD A,R2 MOV R2,A MOV B,10 DIV AB MOV R2,B MOV B,R1。 左边个位数值超过 10 分, 十位数加上原来的十位数值传到 R1 ADD A,B MOV R1,A JMP LOOP2 LOOP20: JNB ,LOOP21。 判断左边。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。