单片机课程设计-篮球赛计时计分器_第1页
单片机课程设计-篮球赛计时计分器_第2页
单片机课程设计-篮球赛计时计分器_第3页
单片机课程设计-篮球赛计时计分器_第4页
单片机课程设计-篮球赛计时计分器_第5页
已阅读5页,还剩3页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机课程设计-----篮球赛计时计分器一、概述本计时计分器由计时部分、计分部分组成,外部控制由一个3ⅹ3的键盘和开关K0、K1实现。其中由K0可进入暂停的中断子程序,由K1可进入加减分和交换分数的中断子程序。键盘的控制按键分布如下:乙方+1乙方-1交换甲方+1甲方-1继续启动调分十位调分个位二、设计任务1、能记录整个赛程的比赛时间,并能修改时间、暂停比赛时间。2、能随时刷新甲、乙两队的比分。3、中场交换比赛场地时,能交换甲、乙两队比分的位置。4、比赛开始后,由一个发光二极管点亮来指示,当比赛暂停或结束时,此发光二极管熄灭,比赛继续时又重新点亮。三、方案论证1、整个电路的显示可用静态显示或动态显示,由于静态显示浪费资源,所以选择了动态扫描显示。2、数码显示时从十六进制到七段码的转换可通过专门的芯片CD4511来实现,也可由软件来实现,由于此电路用6位数码管,用硬件实现电路连接比较复杂,所以选择了用软件来实现。3、记分部分可由串口逐位输出,再经过一个串并转换芯片CD4094接到数码管a-g上,也可由并口直接输出。由于采用动态扫描方式,串口输出显示不易实现,所以选择了用8255并口输出。4、外部控制可由开关的“0”、“1四、所需器件及电路连接1、所需器件8255芯片一块,MCS51单片机芯片一块,发光二极管一个,3ⅹ3键盘一个,开关两个,数码管六个。2、电路连接P3.2—K0,P3.3—K1,P1.0--发光二极管,PA口—a到g,PB口—扫描口,PC0-2—键盘行key1-key3。五、流程图六、实际制作和调试1、程序清单*********************************************************************40H单元存放计时分钟十位,41H单元存放计时分钟个位,42H单元存放计时秒钟十位,43H单元存放计时秒钟个位,44H单元存放甲队的得分,45H单元存放乙队的得分,有键按下时50H单元存放键值。R4存放TR0溢出次数。*********************************************************************ORG0000HAJMPLK1ORG0003H;外部中断0(P32)LJMPPAUSEORG000BH;T0中断LJMPCTCOORG0013H;外部中断1(P33)LJMPFENORG0100H;主程序LK1:MOVDPTR,#8003H ;初始化MOVA,#81HMOVX@DPTR,AMOVTMOD,#01HMOVTL0,#0B0HMOVTH0,#3CHMOVSP,#60HSETBEASETBET0SETBEX0SETBEX1CLRIT0CLRIT1MOV44H,#00HMOV45H,#00HMOV40H,#00HMOV41H,#00HMOV50H,#00HCLRP1.0MOV42H,#05HMOV43H,#09HMP:LCALLSHOWLK3:LCALLSHOWLCALLKEYMOVA,50HCJNEA,#02H,LK6 ;调分十位键没按下时转LK6MOV50H,#00H;调分十位LCALLSHOWINC40HMOVA,40HCJNEA,#0AH,LK3MOV40H,#00HAJMPLK3LK6:LCALLSHOWLCALLKEYMOVA,50HCJNEA,#03H,LK5;调分个位键没按下时转LK5MOV50H,#00H;调分个位LCALLSHOWINC41HMOVA,41HCJNEA,#0AH,LK6MOV41H,#00HAJMPLK6LK5:LCALLSHOWLCALLKEYMOVA,50HCJNEA,#01H,LK3 ;启动键没按下时转LK3MOV50H,#00H ;启动SETBTR0MOVR4,#0AHSETBP1.0SCAN:ACALLSHOW ;不断调用显示,等待AJMPSCANKEY:ACALLKS1 ;键盘扫描子程序,最后将键值存入50HJNZA1 ;单元NI:ACALLSHOWAJMPKEYA1:ACALLSHOWACALLSHOWACALLKS1JNZA2AJMPNIA2:MOVR2,#1FHMOVR6,#00HA4:MOVDPTR,#8001HMOVA,R2MOVX@DPTR,AINCDPLMOVXA,@DPTRJBACC.0,LONEMOVA,#01HAJMPLKPLONE:JBACC.1,TWOMOVA,#04HAJMPLKPTWO:JBACC.2,NEXT1MOVA,#07HLKP:ADDA,R6PUSHACCA3:ACALLSHOW ;判断键是否释放ACALLKS1JNZA3POPACCMOV50H,ARETNEXT1:INCR6MOVA,R2JNBACC.3,KNDRRAMOVR2,AAJMPA4KND:AJMPKEYKS1:MOVDPTR,#8001HMOVA,#00HMOVX@DPTR,AINCDPLMOVXA,@DPTRCPLAANLA,#07HRET ;键扫描程序结束SHOW:MOVR1,#45H ;显示子程序MOVR3,#06HMOVR2,#01HLD0:MOVDPTR,#8001HMOVA,#0MOVX@DPTR,AMOVDPTR,#DSEG0MOVA,@R1MOVCA,@A+DPTRMOVDPTR,#8000HMOVX@DPTR,AMOVDPTR,#8001HMOVA,R2MOVX@DPTR,AMOVA,R2RLAMOVR2,ADECR1DJNZR3,LD0RETDSEG0:DB3FH,06H,5BH,4FH,66H,6DHDSEG1:DB7DH,07H,7FH,6FH,77H,7CHDSEG2:DB39H,5EH,79H,71HCTCO:LCALLSHOW ;TR0中断程序DJNZR4,NEXTMOVR4,#0AH ;每中断十次后计时器DEC43H ;减1LCALLSHOWMOVA,43HCJNEA,#00H,NEXTMOV43H,#0AHMOVA,42HCJNEA,#00H,LP3MOV42H,#05HMOVA,41HCJNEA,#00H,LP2MOV41H,#09HMOVA,40HCJNEA,#00H,LP1CLRP1.0CLRTR0AJMPPPPLP3:DEC42HAJMPNEXTLP1:DEC40HAJMPNEXTLP2:DEC41HNEXT:MOVTL0,#0B0HMOVTH0,#3CHPPP:RETIPAUSE:CLRTR0CLRP1.0LCALLKEYMOVA,50HCJNEA,#06H,PAUSESETBTR0SETBP1.0RETIFEN:LCALLKEYMOVA,50HAAA:CJNEA,#04H,JIA0 ;当按键键值为04H时甲方MOV50H,#00H ;+1INC44HAJMPIIIJIA0:CJNEA,#05H,YI1 ;当按键键值为05H时甲方MOV50H,#00H ;-1DEC44HAJMPIIIYI1:CJNEA,#07H,YI0 ;当按键键值为07H时乙方MOV50H,#00H ;+1INC45HAJMPIIIYI0:CJNEA,#08H,CHANGE ;当按键键值为08H时乙方MOV50H,#00H ;-1DEC45HAJMPIIICHANGE:CJNEA,#09H,AAA ;甲乙交换分数MOV50H,#00HKP12:MOVA,44HXCHA,45HMOV44H,AACALLSHOWIII:RETI2、整个实验过程中出现的问题及解决方法⑴由于开关的重复触发,导致在调试过程中程序无法正常运行,改用键盘代替开关来解决重复触发的问题。⑵由于实验箱上只有六个数码管,其中四个显示倒计时的时间,所以甲乙双方的分数分别只用了一位,即分数最大只能显示到15。⑶外部中断0用沿触发方式进入加减分程序时,按键两次后(即加或减两次)后才能返回,改用电平触发方式后解决了这个问题。七、实验结果运行程序后,按调分十位、调分个位键可设定比赛计时时间。启动之后,计时电路会进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论