ImageVerifierCode 换一换
格式:DOCX , 页数:46 ,大小:288.72KB ,
资源ID:12688845      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12688845.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的篮球赛计时计分器.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于单片机的篮球赛计时计分器.docx

1、基于单片机的篮球赛计时计分器编号 毕 业 实 践 报 告题 目 基于单片机的篮球赛计时计分器设计 学生姓名 姜韬 学 号 07110414 专 业 通信技术 班 级 071104 指导教师 刘佳 2010年 5 月第二章 设计的总体方案.62.2 器件选择.62.3 基本功能介绍.72.3.2 赛程时间启动/停止设置.72.3.3 比分交换控制.72.3.4 比分刷新控制.72.3.5 24s显示控制 .72.3.6 计时计分显示.82.3.7 计时结束后报警.8第三章 硬件部分设计.93.2 计时电路设计.93.2.1显示器及其接口.93.2.2 定时器/计数器.153.2.3 报警电路.1

2、83.2.4 计时电路.193.3 计分电路设计.193.3.1 串行接口.193.3.2比分校正控制电路.233.3.3 计分电路.233.4 计时计分器的工作过程.24第四章 系统的软件设计264.1 主程序.274.1.1 主程序流程图.274.1.2 主程序.284.2 中断程序设计.32第五章 系统调试.34结束语.35致谢 36参考文献37附录38基于单片机的篮球赛计时计分器设计摘要随着单片机在各个领域的广泛应用,许多用单片机作控制的球赛计时计分器也应运产生,如用单片机控制LCD液晶显示器的计时计分器,用单片机控制LED七段显示器的计时计分器等等。本设计的篮球赛计时计分器以AT89

3、C51单片机为核心元件,利用它内部的计数器T0完成比赛的计时,通过7段共阴LED来显示比分和时间。计时部分采用CD4511(七段BCD码译码器)进行硬件译码;计分部分采用CD4094(8位移位存贮总线寄存器)进行串行口扩展显示器接口,并利用74LS21(双四输入与门)来实现比分的刷新功能。报警部分采用蜂鸣器为音响器件。该计时计分器具有以下功能:1、计时:赛程时间设置、赛程时间启/停设置、24s倒计时控制;2、计分:比分刷新控制;3、报警。且价格低廉、操作简单、携带方便,适合与学校和小团体作为赛程计时计分工具。关键词: 篮球;AT89C51;计时计分器第一章 绪论1.1 引言体育比赛计时计分器是

4、对体育比赛过程中所产生的时间、比分等数据进行快速采集记录、加工处理、传递利用的工具。根据不同运动项目的不同比赛规则要求,体育比赛计时计分器包括测量类、评分类、命中类、制胜类、得分类等多种类型。篮球比赛是根据运动队在规定比赛时间里得分多少来决定胜负的。因此,篮球比赛的计时计分器是一种得分类型的工具。篮球比赛的计时计分器由计时器、计分器等多种电子设备组成。单片机是微型计算机发展的一个重要分支,它以其独特的结构和性能,越来越普遍地应用到国民经济建设的各个领域,而且采用AT89S51单片机设计,能使仪表向数字化、智能化、多功能化、柔性化方向发展,使监测、处理、控制等功能一体化,重量大大减轻,便于携带和

5、使用,具有很高的性价比。本设计是一种由AT89C51编程控制LED七段数码显示管作显示的篮球赛计时计分器。它不仅可以很好地实现开启、暂停、复位等功能,同时还具有24s显示的功能。具有价格低廉、性能稳定、操作方便且易携带等特点。广泛适用于各类学校和小团体作为比赛计时计分工具使用。1.2 选题的背景和意义篮球比赛在中国越来越被人们关注,同时也被更多青少年所喜爱。本设计除了具有赛程时间计时、调整及暂停和比赛计分的功能,还具有24s倒计时的功能。且价格低廉、操作方便且便于携带,适合于学校和小团体作为赛程计时计分工具。 从另一方面说,本设计方便了人们比赛时的计时计分工作,在某种程度上也促进了篮球赛的开展

6、,既有利于发展篮球这项体育运动,又有利于增强人们的体质。另外参与篮球运动的人多了,也利于篮球运动员的选拔,对我国的篮球事业也具有促进作用。此外,该计时计分器经过少许修改,即去掉24s计时功能后,同样也适用于其他球类比赛的计时。第二章 设计的总体方案2.1 系统构成框图基于单片机的篮球比赛计时计分器的系统构成框图如图1所示。图1 篮球比赛计时计分器系统构成框图本系统采用AT89C51作为设计的核心原件。利用七段共阴LED数码管作为显示器件。其中,计分电路中共接入6个7段共阴LED显示器用于记录参赛两队的分数,每对3个LED显示器,显示范围可达0999分。比分是通过按键来人工控制加分,为了避免人工

7、操作时失误错加分,故增加了两个用于减分的按键。比分显示时采用静态显示,即6个LED显示器在同一瞬间可以显示不同的字符。计时电路中共接6个LED显示器。其中4个用于记录赛程时间,即2个用于显示分钟,2个用于显示秒钟。赛程时间采用倒计时方式,即比赛前将时间设置好,比赛开始时启动计时,直至计时到零为止,比赛暂停时停止计时,比赛重新开始时计时继续,计时范围可达099分钟。另外2个LED显示器用于24s计时,即采用倒计时,比赛开始启动计时,计时到零或控球发生改变时重新计时开始由24s倒计时,如此循环,直至比赛结束。当有暂停同样停止计时,重新开始时继续计时。其次,为了配合计时器和计分器的校正、调整时间和比

8、分,设计中接入了8个按键。其中四个用于输入参赛两对的分数;另外四个用于完成设置、调整、启动、暂停、交换和24s重新计时功能。此外,系统中还有一个按键,用于手动复位。再次,本设计中还设计的定时报警系统,即赛程时间结束或24s结束时,立即通过蜂鸣器发出警报声提示。2.2 器件选择本设计中主要选取了以下器件:单片机:AT89C51七段BCD译码器:CD4511并行/串行转换芯片:CD4094四输入与门:74LS21显示器件:7段共阴LED显示器按键:欧姆龙按键2.3 基本功能介绍2.3.1 赛程时间设置通过按键S5、S6来设置赛程时间。篮球比赛的一节时间为12分钟,通过按S5按键,是LED显示器1显

9、示“1”即可。在按S6按键,设置比赛时间的个位数,即使LED显示器2显示“2”。当比赛结束是,如果由于一些特殊原因要增加比赛时间,这时比赛时间的调整同样由S5、S6按键来设置,且方法和上面一样。但一般情况下只需按下S6设置即可。因为加赛时间通常只有几分钟。2.3.2 赛程时间启动/停止设置当时间设置好之后,比如每节时间为12分钟,则LED显示器14上分别显示1200,12表示分钟,00表示秒钟。这时,如果裁判吹响开始哨声,则立即按下S7按键,即比赛开始,计时显示由1200变成1159,1158,1157一直到0000时为止,即表示比赛结束。在比赛过程中,遇到换人、暂停等时按下S7按键时间停止计

10、时,显示器上的数值保持不变。当比赛继续进行时,应立即按下S7按键,继续进行计时。2.3.3 比分交换控制比分交换也由S7按键控制完成。我们知道,因为比分交换是在每节比赛结束后进行的,也就是说比分交换受赛程时间控制,只有当一节比赛结束,即计时器显示0000时,按S7按键才会自动交换两队的比分。如果一节比赛没有结束,则按下S7按键只会暂停比赛,不能交换比分。因此,S7按键由三重功能,即:启动、暂停和交换比分。2.3.4比分刷新控制由于在比赛中,两队的比分时不断变化,所以需要设置比分刷新控制装置。该功能由按键S1S4完成:S1按键:甲队比分加1S2按键:甲队比分减1S3按键:乙队比分加1S4按键:乙

11、队比分减12.3.5 24s显示控制24s值在程序中设置,由LED显示器56显示,即LED显示器56显示24。比赛开始时按下S7按键24s随赛程时间一起计时,即计时显示由24变成23、22、21直到00。然后在由24s开始重新计时。比赛过程中,当进攻的一方改变时,应立即按下S8按键,即使24s重新计时。2.3.6 计时计分显示计时计分显示器是采用七段共阴LED显示器显示。其中计分个六个LED显示器,赛程时间四个LED,24s两个LED显示器。显示器显示格式分别为:000 000和00 00以及00。2.3.7 计时结束后报警当赛程时间或24s计时结束是,系统会自动发出10s报警声提示。第三章

12、硬件部分设计硬件部分的设计是整个设计中的一个重要部分。在进行硬件部分设计时,首先要确定元器件,并且知道这些器件的工作原理和功能。然后才可以进行设计。本设计的硬件电路包含两部分:计时电路、计分电路。硬件部分的设计除了硬件电路的设计,还包括SCH和PCB图的绘制。由于本次设计我主要负责的是软件部分的设计,硬件参与的不多,所以硬件部分有些功能就一带而过,在这里就不详细介绍了。3.1 AT89C51单片机本设计采用AT89C51单片机为核心元件。AT89C51是一个低电压,高性能CMOS8位单片机,它有4K字节的可反复擦写的只读存储器(PENROMFalsh Programmable and Eras

13、able Read Only Memory)和128字节的存取数据存储器(RAM),这种器件采用ATMEL公司的高密度、不容易丢失存储技术生产,并且能够与MCS-51系列的单片机兼容。片内含有8位中央处理器和闪烁存储单元。3.1.1 AT89C51功能特性AT89C51采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令和引脚相兼容。目前许多嵌入控制系统使用了这种芯片。它的主要性能特点如下:与MCS-51 兼容4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz128B8位内部RAM三级程序存储器锁定5个中断源 两个16位定时器

14、/计数器32可编程I/O线可编程串行通道低功耗的闲置和掉电模式3.2计时电路设计3.2.1显示器及其接口显示器是最常用的输出设备,其种类繁多,但是在单片机系统设计中常用的是发光二极管显示器(LED)和液晶显示器(LCD)两种。由于这两种显示器结构简单,价格便宜,接口容易实现,因而得到了广泛的应用。1 、LED结构和原理LED 显示器又称为数码管,它主要由八段发光二极管组成,如图2(a)所示图2(a)中,ag为数字或字符显示段,h段位小数点段(本设计采用的是七段数码管,即没有h段)。通过ag为7个发光二极管的不同组合,可以显示09和AF共16个数字和字母。例如,当a、b、g、e、d段亮时,显示数

15、字“2”,当a、f、e、g段亮时,则显示字母“F”。LED可以分为共阴极和共阳极两种结构,如图2(b)和(c)所示其中图(b)为共阴极结构。即把8个发光二极管阴极连在一起。这时如果需要点亮ag中的任何一盏灯,则只需要在相应端输入高电平即可;输入低电平则静止。比如我们现在要显示数字“3”则只要在对应的a、b、c、d、g段送入高电平,在其他段送入低电平即可,点亮为“3”。图(c)则是共阳极结构。其显示端输入低电平有效,高电平截止。表1列出了共阴极和共阳极LED显示器显示数字、字母与显示代码之间的对应关系。表1显示器显示数字、字母与显示代码之间的对应关系显示字符共阴极段码共阳极段码显示字符共阴极段码

16、共阳极段码03FHC096FH90H106HF9A77H88H25BHA4B7CH83H34FHB0C39HC6H466H99HD5EHA1H56DH92HE79H86H67DH82HF71H8EH707HF8P73H8CH87FH80H“灭”00HFFH2、 LED显示器显示方式点亮LED显示器有两种方式:一是静态显示;二是动态显示。(本设计采用静态显示。)所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定地导通或截止。4位静态LED显示电路每位可以单独显示。只要在显示的那位的段上保持段选码电平,该位就能保持显示相应的字符。这种电路的优点是:在同一瞬间可以显示不同的字符,但是缺点

17、就是占用端口资源较多。每位LED显示器需要单独占用8根端口线。因此,在数据较多的时候往往不采用此设计,而是采用动态显示方式。所谓动态显示,就是将要显示的多位LED显示器采用一个8位的段选端口,然后采用动态扫描方式一位一位地轮流点亮各位显示器。在此电路中,单片机P1口用于控制4位LED的段选码;P2口的P2.0P2.3用于控制4位LED位选码。由于所有段选码连在一起,所以同一瞬间只能显示同一种字符。但是要显示不同字符,则要借助位选口来控制。(如果LED为共阴则P2.0P2.3输出高电平,为共阳则P2.0P2.3输出为低电平。)例如,现在要显示“1234”四个数字,则首先应该将“1”的显示代码(共

18、阴LED显示代码为6DH,共阳LED显示代码为92H)由P1.0送出。然后P2.0P2.3输出相应位码(共阴LED时P2.0P2.3输出1000,共阳LED时P2.0P2.3输出0111)时,则可以看到第一个数码管(从左起)上显示“1”。再将显示的数字“1” 延时510ms,以造成视觉暂留效果;同时代码由P1.0送出。用同样的方法将其余3个数字显示“234”送数码管2、3、4显示,最后则可以在4位LED上看到“1234”四个数字。为了使显示效果稳定,可以使每个数码管实现的数字不断重复,当重复频率达到一定程度时,加之人眼的“留光”效应,便可以看到稳定的“1234”四个数字。3、LED显示器接口实

19、例由LED显示器的结构及其工作原理可知,要想在LED上显示数据或字母,则首先要把待显示的数据或字母转换成LED的七位显示代码,这样才可以显示相应的数据或字母。通过实现这种转换的方法由两种:一、专用硬件译码器;二、软件译码器。(本设计采用硬件译码器CD4511实现。)一、硬件译码显示接口即采用专用带驱动器的LED段译码器,如CD4511,MC14495,74LS164等。1BCD七段十进制译码器显示接口:在本设计中,由于只要求LED显示器显示09十个数字,因此我选用了CD4511为LED显示器的译码芯片,图3.2.4所示为CD4511引脚分布图。CD4511BCD锁存/七段译码/驱动,是常用的七

20、段BCD码译码器,它可以实现对BCD码的译码,但不对大于9的二进制数译码。其中,AD为BCD码输入端;ag是7段码输出端;为试灯脚;为消隐(灭灯);和接高电平(电源);LE端为选通脚,接低电平有效。当=0时LED数码管显示全亮笔端“8”,可以检查数码管质量好坏,有无笔端残缺现象。显示数“6”时,a=“0”;显示数“9”时,d=“0”。当=0时强迫显示器消隐;当LE=0时选通,LE=1时锁存。使用时,只要将CD4511的输入端与微机系统的输出端口的某4个数据位相连,而CD4511的输出直接与LED的ag相连,便可实现对BCD的显示。图4所示为对1位BCD码的显示。表2为CD4511的逻辑功能表。

21、 输入输出显示数字D C B A a b c d e f g 0 1 1 1 1 1 1 1B01 0 0 0 0 0 0 00110 0 0 01 1 1 1 1 1 000110 0 0 10 1 1 0 0 0 010110 0 1 01 1 0 1 1 0 120110 0 1 11 1 1 1 0 0 130110 1 0 00 1 1 0 0 1 140110 1 0 11 0 1 1 0 1 150110 1 1 00 0 1 1 1 1 160110 1 1 11 1 1 0 0 0 070111 0 0 01 1 1 1 1 1 180111 0 0 11 1 1 0 0 1

22、 190111 0 1 00 0 0 0 0 0 00111 0 1 10 0 0 0 0 0 00111 1 0 00 0 0 0 0 0 00111 1 0 10 0 0 0 0 0 00111 1 1 00 0 0 0 0 0 00111 1 1 10 0 0 0 0 0 0011 2表2 CD4511的逻辑功能表BCD七段十六进制译码器显示接口:如果手边找不到CD4511译码芯片,还可以用BCD七段十六进制译码驱动芯片MC14495代替。MC14495为Motorola公司生产的CMOSBCD七段十六进制译码驱动芯片,它具有锁存、译码驱动等功能。它与CD4511主要区别是:它能对大于9

23、的二进制数译码。即它可以用字母A,B,C,D,E,F来显示二进制数10,11,12,13,14,15,同时还有译码器输入大于等于10时的指示段(h+1)。当输入数据大于等于10时,h+1端输出“1”电平。另外,还有输入数据15时,电路输出端VCR为0电平(其他输入状态时为高阻)的功能。电路内部还有一个290的限流电阻。LE为选通端,电路中的锁存器在LE=0时输入数据,在LE=1时锁存数据。MC14495引脚图如图5所示。表3为MC14495的真值表。从表中可以看出,当数据大于等于10时,h+1端输高电平。表3 MC14495的真值表输入输出显示字符D C B Aa b c d e f g h+

24、10 0 0 01 1 1 1 1 1 0 000 0 0 10 1 1 0 0 0 0 010 0 1 01 1 0 1 1 0 1 020 0 1 11 1 1 1 0 0 1 030 1 0 00 1 1 0 0 1 1 040 1 0 11 0 1 1 0 1 1 050 1 1 00 0 1 1 1 1 1 060 1 1 11 1 1 0 0 0 0 071 0 0 01 1 1 1 1 1 1 081 0 0 11 1 1 1 0 1 1 091 0 1 01 1 1 0 1 1 1 1A1 0 1 10 0 1 1 1 1 1 1B1 1 0 01 0 0 1 1 1 0 1C

25、1 1 0 10 1 1 1 1 0 1 1D1 1 1 01 0 0 1 1 1 1 1E1 1 1 11 0 0 0 1 1 1 1F二、软件译码如图6所示,这种电路在软件设计时,在数据段定义09十个数字。在程序中利用查表指令MOVC指令进行软件译码。现假设用共阴极LED来显示数据,则可以用以下一段程序实现09十个数字的显示。sbit P1_0 = 0x90;sbit P1_1 = 0x91;sbit P1_2 = 0x92;sbit P1_3 = 0x93;sbit P1_4 = 0x94;sbit P1_5 = 0x95;sbit P1_6 = 0x96;sbit P1_7 = 0x97;3.2.2 定时器/计数器定时器/计数器是AT89C51单片机中的主要模块之一。AT89C51单片机内部有两个16位定时器/计数器,分别是定时器/计数器0(T0)和定时器/计数器1(T1)。(本设计中的计时就是用定时器T0计时的。)1、定时器/计数器一般结构和工作原理定时器由一个N位计数器、计数时钟源控制电路、状

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2