基于51单片机的篮球计分器毕业论文设计.docx
- 文档编号:10405909
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:23
- 大小:32.74KB
基于51单片机的篮球计分器毕业论文设计.docx
《基于51单片机的篮球计分器毕业论文设计.docx》由会员分享,可在线阅读,更多相关《基于51单片机的篮球计分器毕业论文设计.docx(23页珍藏版)》请在冰豆网上搜索。
基于51单片机的篮球计分器毕业论文设计
基于51单片机的篮球计分器毕业论文设计
摘要
体育比赛计时计分系统是对体育比赛过程中所产生的时间、比分等数据进行快速采集记录,加工处理,传递数据的信息系统。
它负责对比赛的结果和成绩信息进行采集处理、传输分配。
篮球比赛的计时计分系统由计时器、计分器等多种电子设备组成,根据目前高水平篮球比赛要求,完善的篮球比赛计时计分系统设备应能够与现场成绩处理、现场大屏幕、电视转播车等多种设备相联,以便实现高比赛现场感、表演娱乐观众等功能目标。
比赛具有的不可重复性,决定了篮球计时计分系统是一个实时性很强、可靠性要求极高的电子服务系统,所以计时计分设备是篮球比赛中不可缺少的电子设备。
单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。
目前已经成为测量控制应用系统中的优选机种和新电子产品的关键部位。
世界各大电气厂家,测控技术企业,机电行业,竞相把单片机应用于产品更新,作为实现数字化,智能化的核心部件。
篮球计时计分器就是以单片机为核心的计时计分系统,由计时器,计分器,综合控制器和24秒控制器等组成。
模块化设计系统,分为计时显示模块、计分显示模块、定时报警、按键控制键盘模块。
模块的程序结构简单、易于编写、任务明确、调试和修改。
程序可读性好,对程序的修改可局部进行,其他部分可保持不变。
编程后利用Keil软件来进行编译,将生成的HEX文件装入芯片中,采用Proteus软件仿真,检验功能是否正常,然后用Protel99画硬件的电路图。
本设计中系统硬件电路主要有以下几个部分:
单片机AT89C51、计时电路、计分电路、报警电路和按键开关。
本次设计用由AT89C51编程控制LED七段数码管作显示的球赛计时计分
系统。
该系统具有赛程定时设置、赛程时间暂停、及时刷新甲乙双方的成绩以及赛后成绩暂存等功能。
具有价格低廉、性能稳定、操作方便并且易于携带等特点,适用于各种公司学校等中小企业.
关键词:
AT89C51LED显示器计时计分器
第1章绪论....................................................................................................3
第2章系统方案说明..................................................................................4
§2.1系统设计方案.....................................................................................4
§2.1.1篮球赛计时计分器设计的现状...................................................4
§2.1.2系统总体设计方案......................................................................4
§2.2系统基本功能介绍..............................................................................5
第3章系统硬件电路设计.........................................................................7
§3.1篮球赛计时计分器电路工作过程............................7
§3.2系统硬件电路组成.........................................7
§3.2.1计时电路............................................7
§3.2.2计分电路...........................................15
§3.3器件选择及介绍..........................................19
§3.4AT89C51.................................................19
§3.4.1CD4511芯片介绍.....................................22
§3.4.2CD4094芯片的介绍...................................23
§3.4.374LS21芯片介绍.....................................24
第4章软件编程调试................................................................................25
§4.1总体程序设计............................................25
§4.2初始化程序设计..........................................26
§4.3计时系统程序设计........................................28
§4.4计分系统程序设计........................................29
第5章调试..................................................................................................29
§5.1系统调试................................................30
§5.1.1软件调试...........................................30
§5.1.2仿真调试...........................................30
结束语..............................................................................................................31
致谢..............................................................................................................31
参考文献...........................................................................................................33
第1章绪论
因为单片机的广泛使用,适用单片机来制作的电子产品就越来越多。
如用单片机控制LCD液晶显示器计时计分器,用单片机控制LED七段显示器计时计分器等。
根据课题要求,这里介绍一种篮球赛计时计分器的设计方法,即单片机带外围扩展来驱动数码管工作的电路。
电路的核心元件为单片机,用10个7段共阴极LED数码管作为显示器。
4个用于记录赛程时间,2个用于显示分钟,2个用于显示秒钟。
6个用于记录甲、乙两队的比赛分数,每队3个,显示分数范围可达0~999分,足够比赛中得分的现实的需求。
比赛前,将时间设置好,比赛开始时启动计时,直至倒计时到零为止。
计时范围达到0~99分钟,能满足实际赛程计时的需求。
为了配合计时器调整时间和计分器校正比分,设计了7个按键,3个用于启动和暂停赛程时间。
4个用于输入甲、乙两队的分数,另外,还设计了定时报警系统,即比赛时间到时,扬声器发出报警声提示比赛结束。
该系统具有赛程定时设置,赛程时间暂停,及时刷新甲、乙双方的成绩以及赛后成绩暂存等功能。
设计分为软件设计和硬件设计两部分。
主控芯片采用AT89C51,使用汇编语言编写软件程序,主体分为计时显示模块、计分显示模块、定时报警、按键控制模块。
编程后利用KeilC51软件来进行编译,再将生成的HEX文件装入芯片中,采用Proteus软件来仿真,检验功能是否能够正常实现,随后可用Protel99画出硬件电路图。
通过本次基于单片机的篮球赛计时计分器的设计,可以了解、熟悉有关单片机开发设计实例的过程,并加深对单片机的理解和应用以及掌握单片机与外围接口的方法和技巧。
第2章系统方案说明
§2.1系统设计方案
§2.1.1篮球赛计时计分器设计的现状
体育比赛计时计分系统是对体育比赛过程中所产生的时间,比分等数据信息进行快速采集记录、加工处理、传递和利用的系统。
根据运动项目的不同,比赛规则要求也不同,体育比赛的计时计分系统包括测量类、评分类、命中类、制胜类和得分类等多种类型。
篮球比赛是根据运动队员在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统。
篮球比赛的计时计分系统由计时器、计分器等多种电子设备组成的,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时计分系统设备应能与现场成绩处理、现场大屏幕、电视转播车等多种设备相联,以便实现激烈的比赛现场感和表演娱乐等功能目标。
现在,根据设计要求,介绍一下设计方案。
§2.1.2系统总体设计方案
根据课题要求,单片机带外围扩展,驱动数码管工作的电路,可提升学生对单片机接口电路的综合运用能力;计时电路主要由按键开关、单片机AT89C51、译码器及LED显示器构成。
当调时开关(十位)按下时产生一个低电平,对应调分(十位)控制端P2.0的LE输出高电平,表示可以向CD45ll的调分位(十位)发送数据,将要显示数据的代码经P1.0送到CD4511的A另—端,送完后将LE清零。
调时按键开关每按一次,数字自动加1。
直到调到需要设置的时间即可。
调时(个位)的操作方法与之相同。
时间设置完后,启动定时器。
如果比赛中暂停,按一下暂停键即可暂停计时。
球赛计时计分器系统图如1-1图所示。
图1-1系统构成图
§2.2系统基本功能介绍
本设计要实现的基本功能有:
赛程时间设置,赛程时间启/停设置,比分刷新控制,比分交换控制,计时计分显示,赛程结束报警。
以下对个功能进行介绍。
1、赛程时间设置
通过按键K5、K6来设置赛程时间。
篮球比赛的一节时间为12分钟,通过按K5按键,使LED数码管1显示“1”即可。
在按K6按键,设置比赛时间的个位数,即使数码管2显示“2”。
当比赛结束时,如果由于一些特殊原因要增加比赛时间,这时比赛时间的调整同样由K5、K6按键来设置,且方法和上面一样。
但一般情况下只需按下K6来设置即可。
因为加赛时间只有几分钟。
2、赛程时间启动/暂停设置
当时间设置完成后,比如设置赛程时间为45分钟,则在LED显示器上显示为4500,45表示分钟,00表示秒钟。
这时,如果裁判吹响开始的哨声时,则应立即按下按键K7,表示赛程开始,计时显示则由4500变成4459,4458?
?
一直计时直到计为0000时表示赛程结束。
按键K7为赛程启动和暂停控制。
3、
比分刷新控制由于在比赛中,两队的比分在不断变化,所以需要设置比分刷新控制,
该功能由按键K1~K4完成,具体如下:
K1按键:
甲队比分加1;
K2按键:
甲队比分减1;
K3按键:
乙队比分加1;
K4按键:
乙队比分减1。
4、比分交换控制
比分交换控制由计时电路图2-5中所示的K7键完成。
我们知道,因为比分交换是在上半场赛程结束后进行的,也就是说比分交换要受赛程时间控制,只有当上半场计时器指示为0000时,按K7键,则会自动交换甲、乙两队的比分。
如果上半场赛程时间没有到0000时,则此时按下K7键,只会暂停比赛,不能交换分数。
如果要继续比赛,再按一次K7即可。
因此,K7键完成三重功能,即:
启动,暂停,比分交换。
5、计时计分显示
计时计分显示器是采用七段共阴极LED显示器来显示的。
其中计分是用6个LED显示器。
计时采用4个LED显示器;显示格式为000000和0000。
6、
程结束报警当赛程时间或24s计时结束时,系统会自动发出10s报警声提示。
第3章系统硬件电路设计
§3.1篮球赛计时计分器电路工作过程
篮球计时器计分器的工作过程:
比赛之前,接通电源,系统自动复位,计分电路与计时电路中的共阴极数码管分别显示为000000和0000;然后我们按照计时电路图2-5中的K5键来设置比赛时间的十位数,再按下K6键,设置比赛时间的个位数字,使数码管2显示“0”即可。
一般比赛时间为40分钟,所示只需要按下K5键显示“4”,按下K6键显示“0”即可。
时间设置好时,等待赛程开始,裁判吹响哨声时,启动计时,这时计时电路便开始工作,计时采用倒计时方式,20分钟变到0分钟时候表示上半场结束。
上半场结束时,蜂鸣器会发出10秒钟响声,通知上半场结束,这时按下K7键,便完成了甲、乙两队的分数交换。
在整个赛程中,两队比分一直在变动,我们通过计分电路图2-9中的K1~K4键完成此功能,K1和K2键完成甲队加分、减分,K3和K4键完成乙队加分、减分。
按键每按一下,表示加上或者减去1分。
由于加分、减分我们采用中断完成,且加、减分的中断优先权小于计时电路中的中断优先权,所以不会对计时电路造成影响。
按下K7键,即可以暂停计时,暂停时间到时,再按下K7键继续计时,直至上半场赛程结束,蜂鸣器会发出10秒的响声。
下半场的流程和上半场一致。
§3.2系统硬件电路组成
§3.2.1计时电路
1.显示器及其接口
显示器是最普遍的输出设备,种类繁多,单片机中最常用的是发光二极管显示器(LED)和液晶显示器(LCD)。
这两种显示器结构简单,价格便宜,因而得到广泛的应用。
下面介绍发光二极管显示器(LED)的结构、工作原理及其接口电路。
(1)LED结构与原理
图3-1为典型的数码管。
图3-17段LED数码管
图3-2共阴极与共阳极LED显示器
如图3-1,LED显示器又称为数码管,LED数码管显示器是由若干个发光二极管组成的,当发光二极管导通时,相应的点或线段发光,将这些发光二极管排成一定的图形,控制不同组合的二极管导通,就可以显示出不同的字形和符号。
单片机系统中常用的LED显示器为七段显示器,再加上一个小数点,因此也可以把它称之为八段数码管显示器。
其机构形式有共阴极和共阳极两种。
共阴极是把所有组成八段数码管的发光二极管的阴极连在一起,通常接地,通过控制每一只发光二极管的阳极电平来使其发光或熄灭,阳极为高电平则发光,阳极为低电平则熄灭;共阳极是把组成八段数码管的所有发光二极管的阳极连起来,通常为高电平(如+5V),通过控制每一只发光二极管的阴极电平的高低来使其发光或是熄灭,阴极为低电平发光,为高电平则熄灭。
表3-1列出了共阳极与共阴极LED显示器显示数字、字母与显示代码之间的对应关系。
表3-1代码对应表
(2)LED显示器显示方式
点亮LED显示器有两种方式:
一是静态显示;二是动态显示。
在本次设计中,采用的是静态显示。
静态显示,就是每一个显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。
这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU的开销小。
这种电路的优点在于:
在同一时间可以显示不同的字符;但缺点就是占用端口资源较多。
从图3-3可以看出,每位LED显示器需要单独占用8根端口线,因此,在数据较多的时候,往往不采用这种设计,而是采用动态显示方式。
本设计采用的便是此种显示方式。
图3-3静态显示图
图3-4动态显示图
由于所有的段选码连在一起,所以同一瞬间只能显示同一种字符。
但如果要显示不同字符,则要由位选码来控制。
(如果LED为共阴极则P2.0~~P2.3输出为高电平,如果LED为共阳极则P2.0~~P2.3输出为低电平。
)
例如,现在要显示“5678”四个数字,则首先应该将“5”的显示代码(共阴LED显示器的显示代码为6DH,共阳LED显示器的显示代码为92H)由P1.0送出,然后P2.0~~P2.3输出相应位码(LED为共阴则P2.0~~P2.3输出1000,LED为共阳则P2.0~~P2.3输出0111)时,则可以看到在数码管1上显示的数字为“5”。
再将显示的数字“5”延时5~10ms,以造成视觉暂留效果;同时代码由P1.0送出。
用同样的方法将其余3个数字“678”送数码管2,3,4显示,于是最后则可以在4位LED显示器上看到“5678”四个数字。
为了使显示效果更加稳定,可以使每个数码管所显示的数字不断的重复,但其中重复频率达到了一定的程度的时候,加之人眼睛本身的视觉暂留效果的作用,便可以看到相当稳定的“5678”四个数字。
如表3-2,即为模拟以上的过程表(以共阴LED设置显示代码,共阳型与
此相反)。
表3-2模拟过程表
2.报警器
(1)报警器的分类
蜂鸣器有两类3大品种。
一类是压电式,一类是电磁式,电磁式又有两大品种,铁振膜式和动圈式,我们选择的是电磁式。
所有蜂鸣器都有两种类型:
纯蜂鸣器和带驱动的蜂鸣器,蜂鸣器都是用音频信号驱动的,都是交流驱动。
(2)报警器的工作原理
报警器的种类很多,本次设计采用的是电磁式蜂鸣器作为报警器。
电磁式蜂鸣器由振荡器、电磁线圈、磁铁、震动膜片以及外壳等组成。
接通电源后,振荡器产生的音频信号通过电磁线圈,使得电磁线圈产生了一个磁场。
振动膜片在电磁线圈和磁铁的相互作用下,周期性的振动发声。
3.计时电路的工作原理图
如图3-5所示。
图3-5计时电路原理图
4.计时电路的工作原理
计时电路主要由开关K5~~K7,单片机AT89C51,译码器以及LED显示器构成。
其工作过程如下:
当比赛准备开始的时候,当调时(十位)开关K5按下时,产生一个低电平;立即数00H取出,同时对应调分(十位)控制端P2.0的LE输出高电平,表示此时可以向调分(十位)的CD4511发送数据,但CD4511的输出端将不会有输出,因为LE=1时,CD4511锁存。
这时,只要将要显示数据的代码经过P1口的P1.0送到CD4511的输入端A~~D端,送完后,将LE清零。
这时便可以将要显示数据的代码经过CD4511译码后,从输出端a~g输出,送LED显示器显示即可。
调时按键开关每按一次,数字自动加1,直到调到需要设置的时间即可。
调时(个位)的操作方法与上面一样。
时间设置完成后,启动定时器T0开始定时计数。
计时采用倒计时,比如:
设置的时间为45分钟,则在LED上显示“4500”四位数。
定时T0计数60秒后中断返回,继续定时计数下一个60秒;同时则在4位LED显示器上显示“4459”四位数,表示时间已过去1秒钟,即为44分59秒。
这样一直持续下去,直到变为“0000”时表示赛程结束。
如果比赛中,裁判叫暂停,则只要按一下K7键,即可暂停计时。
5.振荡电路
本次设计要使用到AT89C51单片机的时钟振荡功能。
AT89C51中有一个用于构成内部震荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入和输出端。
这个放大器与作为反馈元件的片外石英晶体[6]或者陶瓷谐振器一同构成自激振荡器。
振荡电路如图3-6所示。
如图3-6,外接石英晶体或者陶瓷谐振器以及电容C1,C2接在放大器的反馈电路中构成并联谐振电路。
谐振器本身对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度以及温度的稳定性,如果使用石英晶体,推荐使用30pF,而建议若使用陶瓷谐振器选择40pF。
我们也可以使用外部时钟,采用外部时钟电路如图3-7所示。
在外接时钟的情况下,外部时钟脉冲接到XTAL1端,即内部时钟脉冲的输入端,XTAL2则悬空。
由于外部时钟信号是通过一个两分频触发器后作为内部时钟信号的,所以对外部时钟信号的占
空比没有特殊要求,但最小的高电平持续时间和最大的低电平持续时间应符合技术条件以及本次设计所采用硬件的要求。
图3-6时钟振荡电路
图3-7外部时钟电路
晶振电路:
51单片机最小系统晶可以采用6MHz或者11.0592MHz,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。
典型的晶振取11.0592MHz(因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的合)/12MHz(产生精确的uS级时歇,方便定时操作),本设计使用的晶振为12MHz。
§3.2.2计分电路
8051系列单片机除了有4个8位并行口外,还有一个能同时进行串行发送和接收的全双工串行通信口。
它能同时发送和接收数据,还能作为同步移位寄存器使用。
球赛计分电路正是利用了8051单片机串行口可以外接串行输入并行输出移位寄存作用为输出口来实现球赛比分刷新显示的。
1.串行接口工作原理
MCS-51系列单片机片内有一个串行I/O端口,通过引脚RXD(P3.0)和TXD(P3.1)可与外设电路进行全双工的串行异步通信。
8051的串行端口有4种基本工作方式,通过编程设置,可以使其工作在任一种方式。
其中,方式0主要用于外接移位寄存器,以扩展单片机的I/O电路;方式1多用于双机之间或者与外设电路的通信;方式2,3除有方式l的功能外,还可用作多机通信,以构成分布式多微机系统。
串行端口有两个控制寄存器(SCON和PCON),用来设置工作方式、发送或接收的状态、特征位、数据传送的波特率(每秒传送的位数)以及作为中断标志等。
串行端口有一个数据寄存器SBUF(在特殊功能寄存器中的字节地址为99H),该寄存器为发送和接收所共同。
发送时,只写不读;接收时,只读不写。
在一定条件下,向SBUF写入数据就启动了发送过程;读SBUF就启动了接收过程。
串行通信的波特率可以程控设定。
在不同工作方式中,由时钟振荡频率的分频可由定时器T1的溢出率确定,使用十分方便灵活。
表3-3为寄存器SCON内容定义表,表2-4为寄存器PCON位地址
表3-3SCON各位内容定义
表3-4PCON位地址
本次设计的计分电路中,我们使用集成电路CD4094。
CD4094是8位移位寄存器,它主要完成串行输入,并行输出8位数据的功能,是典型的串行/并行转换芯片。
其中引脚分布图将在后面图2-9介绍。
其中2脚DATA为串行数据输入脚;3脚CLOCK为时钟脉冲输入;4、5、6、7、14、1、3、12、11脚为并行8位数据输出,前7脚与LED显示器的a~g引脚相连,11脚置空;8脚接地;16脚接电源5V。
2.比分校正控制电路
本次设计中的比分校正控制电路由四输入与门74LS21和4个按键组成,其中K1、K2键接74LS21的9、10脚,完成甲队加、减分控制;K3、K4键接74LS21的12、13脚,完成乙队加、减分控制。
有关74LS21集成电路的引脚分布及内部原理构造如图3-8所示。
图3-874LS21引脚图
74LS21芯片的主要引脚说明:
7脚接地14脚为电源脚3.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 篮球 计分 毕业论文 设计