hw006篮球比赛计时器.docx
- 文档编号:7629513
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:29
- 大小:179.78KB
hw006篮球比赛计时器.docx
《hw006篮球比赛计时器.docx》由会员分享,可在线阅读,更多相关《hw006篮球比赛计时器.docx(29页珍藏版)》请在冰豆网上搜索。
hw006篮球比赛计时器
摘要
本文主要介绍:
篮球比赛计时器。
本文首先介绍单片机的相关知识,对单片机进行相应的研究,并将其与74HC595串行显示电路配合使用。
本电路主要核心是AT89S51,利用软件和硬件的结合实现开机自动置节计数器为第一节,节计时器为12分00秒,24秒违例为24秒。
用数字显示篮球比赛当时节数,每节时间及24秒的倒计时,采用单片机串行显示。
最后,本文会详细叙述此电路的安装与调试,并对调试过程中出现的问题做简要说明。
关键词AT89S52单片机;74HC595;XXX
Abstract
Abstractthisarticlemainlyintroduced:
Basketballgametimer.Thisarticlefirstintroducedthatmonolithicintegratedcircuit'srelatedknowledge,conductsthecorrespondingresearchtothemonolithicintegratedcircuit,anditsand74HC595serialdisplaycircuitcoordinationuse.ThiselectriccircuitmaincoreisAT89S51,realizesusingthesoftwareandhardware'sunionstartingsetsatthefestivalcounterforfirst,thefestivaltimeris12minute00secondautomatically,24secondcaseofbreachingtherulesis24seconds.Withthedigitaldemonstrationbasketballgameatthattimethepitchnumber,eachtimeand24secondcountdown,usedthemonolithicintegratedcircuitserialdemonstration.Finally,thisarticlewillnarratethiselectriccircuit'sinstallmentandthedebuggingindetail,andtowilldebugthequestionwhichintheprocesswillappeartogivethebriefing。
keywords89S52monolithicintegratedcircuit;74HC595;XXX
目录
摘要I
AbstractII
第1章绪论1
1.1课题背景1
1.2设计简介2
第2章系统电路的设计方案3
2.1系统设计方案的提出3
2.2方案的确定3
2.3本章小结3
第3章电路设计原理及芯片介绍4
3.1键盘控制及显示电路设计的原理及要求4
3.1.1电路的设计原理与功能要求4
3.1.2电路的总设计框图4
3.2总电路选用芯片简介4
3.2.1控制芯片AT89S524
3.3LED显示原理介绍11
3.4键盘控制原理介绍14
3.4.1键盘的工作原理14
3.4.2独立式键盘17
3.5本章小结20
第4章键盘控制及显示硬件电路实现21
4.1LED显示电路设计21
4.2独立按键键盘的电路设计22
4.3硬件的焊接23
4.3.1硬件的焊接23
4.3.2电路板的检查和故障排除24
4.4本章小结24
第5章键盘控制及显示电路软件设计26
5.1软件设计的基本工具26
5.1.1汇编语言的简介26
5.1.2汇编语言的指令系统与程序26
5.1.3keilC51开发软件简介28
5.2独立式键盘软件设计28
5.2.1软件设计流程图29
5.3键盘控制及显示电路设计软件实现总流程图29
5.3.1总流程图29
5.4本章小结30
结论31
致谢32
参考文献33
附录1外文资料34
附录2电路原理图37
附录3汇编源程序38
附录4元件清单45
第1章绪论
1.1课题背景
在电子技术飞速发展的今天,电子产品的人性化和智能化已经非常成熟,其发展前景仍然不可估量。
如今的人们需求的是一种能给自己带来方便的电子产品,当然最好是人性化和智能化的,如何能做到智能化呢?
单片机的引入就是一个很好的例子。
单片机又称单片微型计算机,也称为微控制器,是微型计算机的一个重要分支,单片机是20世纪70年代中期发展起来的一种大规模集成电路芯片,是集CPU,RAM,ROM,I/O接口和中断系统于同一硅片上的器件。
单片机的诞生标志着计算机正式形成了通过计算机系统和嵌入式计算机系统两个分支。
目前单片机已渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
在我们身边,由单片机作为主控制器的全自动洗衣机、高档电风扇、电子厨具、变频空调、遥控彩电、录像机、VCD/DVD机、组合音响、电子琴等。
单片机已在广阔的计算机应用领域中表现得淋漓尽致,出尽了风头。
从家用消费类电器到复印机、打印机、扫描仪、传真机等办公自动化产品;从智能仪表、工业测控装置到CT、MRI、γ刀等医疗设备;从数码相机、摄录一体机到航天技术、导航设备、现代军事装备;从形形色色的电子货币如电话卡、水电气卡到身份识别卡、门禁控制卡、档案管理卡及相关读/写卡机等等都有单片机在里面扮演重要角色。
因此,单片机已成为电子类工作者必须掌握的专业技术之一。
单片机就是一个微型中央处理器,通过编程即能完成很多智能化的工作,因此它的出现给电子技术智能化和微型化起到了很大的推动作用。
随着人们生活水平的提高,社会经济的发展,人们开始考虑精神生活的享受,并开始注重身体素质的提高。
开始举办一些小型的篮球比赛。
这就需要裁判有一个公正的判罚,以保证比赛的顺利进行。
这就需要有一个专门计时的工具。
所以我就设计了一个篮球比赛计时器。
设计简单,耗费少,容易制作。
可用于街头篮球比赛和校园篮球比赛。
花很少的钱就可以得到一个实用的篮球比赛计时器。
本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。
本次设计的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还对单片机的接口技术,中断技术,存储方式和控制方式作更深层次的了解。
此次设计更进一步了解基本电路的设计流程,提高自己的设计理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。
1.2设计简介
篮球比赛中除了有总时间倒计时外,为了加快比赛的节奏,新的规则还要求进攻方在24秒内有一次投篮动作,否则视为违例。
根据要求,以AT89S52单片机为核心,设计篮球比赛计时控制器。
篮球比赛上下半场四节制,每节12分钟,要求能随时暂停,启动后继续计时,一节比赛结束后可清零。
按篮球比赛规则,进攻方有24秒为例计时。
“分”“秒”显示用LED数码管。
用开关控制计时器的启动/暂停。
该篮球比赛计时器的设计,可对比赛总时间和各方每次控球时间计时。
该计时器采用按键操作、LED显示,非常实用。
此计时器在程序参数稍加修改后也可作为其他球类比赛的计时器。
主控芯片为AT89S52,采用12MHz晶振,P0.0-P0.7作键盘输入。
A1为12分钟暂停键;A2为启动12分钟计时键,,24秒计时开始;A3为24S复位开启键(投篮或交换控球时按下此键);A4为24秒计时停止键(没有违例);A5为总计时和24秒计时同时启动键;A6为总计时和24S计时同时停止键。
电路采用静态显示,一起点亮各位数码管,同时显示不同的字符。
点亮各位数码管锁存输出。
显示器的第一位显示计时节数,3至6位显示计时的分,最后2位显示24秒。
用T0定时器中断进行24秒处理,12分钟计时用T1定时器中断计时。
同时电路通过键盘扫描,根据键值转相应键处理。
第2章系统电路的设计方案
2.1系统设计方案的提出
本设计是基于89S52单片机的键盘控制及显示电路设计,从系统的设计功能上看,系统可分为两大部分,即键盘输入控制部分和显示部分,对于每一个部分都有不同的设计方案,起初我拟订了下面两种方案:
第一种方案:
键盘控制采用矩阵扫描键盘,可以用普通按键构成4×4矩阵键盘,直接接到89S52单片机的P0口,高四位作为行,低四位作为列,通过软件完成键盘的扫描和定位。
显示部分采用动态显示,采用移位寄存器74LS164和译码器74LS138通过显示驱动程序驱动七段数码管显示。
此方案成本低,所用到的两个外围芯片价格都很低廉,而且单片机的I/O口占用较少,可以节约单片机接口资源。
第二种方案:
键盘控制采用独立是式键盘,每个按键的“接零端”均接地,每个按键的“测试端”各接一条输入线,通过检测输入线的电平状态就可以很容易地判断哪个键被按下了,这种方法操作速度高而且软件结构很简单。
这种方法比较适合按键较少或操作速度较高的场合。
显示部分采用静态显示方法,所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的接口用于笔划段字形代码。
这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU的开销小。
2.2方案的确定
本设计要求按键较多,且本次设计只是对所学知识的一次实践,设计要求简单,容易实现,成本低。
比较以上两中设计方案,第二种成本低,占用单片机资源少,且容易实现,这样的设计比较适合本次设计,故选用第二种设计方案。
2.3本章小结
本章主对所选方案进行比较,并最终确定选用那种方案。
第3章电路设计原理及芯片介绍
3.1键盘控制及显示电路设计的原理及要求
3.1.1电路的设计原理与功能要求
本设计采用AT89S52单片机芯片作为中央处理芯片,采用AT89S52的P0口构成独立8键键盘,采用AT89S52串行口静态显示,选用74HC595作为LED驱动芯片。
本电路设计有以下功能及要求:
(1)篮球比赛计时器全场时间为48分钟,共四节,每节12分钟和24秒违例。
要求开机自动置节计数器为第一节,节计时器为12分00秒,24秒违例为24秒。
(2)用数字显示篮球比赛当时节数,每节时间及24秒的倒计时,采用单片机串行显示。
(3)能随时用按纽开关控制比赛的启动/暂停,启动后开始比赛,暂停期间不计时,重新启动后继续计时。
3.1.2电路的总设计框图
根据设计任务与要求,可初步将系统分为五大功能模块:
主电路、开关启/停控制电路、显示电路、音响电路和+5V稳压电源。
进一步细说,主电路选用89S52作为中央处理器;开关启/停控制电路由八个按键组成;显示电路由八位七段数码管和74HC595组成;音响电路用ULN2003驱动蜂鸣器;+5V稳压电路采用7805稳压块把电源电压稳定在+5V。
原理框图如图3-1所示。
图3-1篮球比赛计时器的原理框图
3.2总电路选用芯片简介
3.2.1控制芯片AT89S52
AT89S52功能特性描述:
表3.5段码与字形码的关系
字形
D7
dp
D6
g
D5
f
D4
e
D3
d
D2
c
D1
b
D0
a
段码
0
1
1
0
0
0
0
0
0
03H
1
1
1
1
1
1
0
0
1
9FH
2
1
0
1
0
0
1
0
0
45H
3
1
0
1
1
0
0
0
0
0DH
4
1
0
0
1
1
0
0
1
99H
5
1
0
0
1
0
0
1
0
29H
6
1
0
0
0
0
0
1
0
21H
7
1
1
1
1
1
0
0
0
1FH
8
1
0
0
0
0
0
0
0
01H
9
1
0
0
1
0
0
0
0
09H
A
1
0
0
0
1
0
0
0
11H
B
1
0
0
0
0
0
1
0
41H
C
1
1
0
0
0
1
1
0
63H
D
1
0
1
0
0
0
0
1
85H
E
1
0
0
0
0
1
1
0
61H
F
1
0
0
0
1
1
1
0
71H
静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。
这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)或接正电源(共阳极)。
每个数码管的8个字段分别与一个8位I/O口地址相连,I/O口只要有段码输出,相应字符即显示出来,并保持不变,直到I/O口输出新的段码。
采用静态显示方式,较小的电流即可获得较高的亮度,且占用CPU时间少,编程简单,显示便于监测和控制,但其占用的口线多,硬件电路复杂,成本高,只适合于显示位数较少的场合。
动态扫描显示方式:
其工作原理是将多个显示器的段码同名端连在一起,位码分别控制,利用眼睛的余辉暂留效应,分别进行显示。
只要保证一定的显示频率,看起来的效果和一直显示是一样的,但在电路上却简化了很多,降低了成本。
比如要做四位LED显示,静态显示方式则需要4块74LS164作为静态显示接口,如用动态扫描显示则只需一块即可。
通常也用8155芯片作为动态扫描显示接口的扩展,扩展电路在此就不做叙述了,本设计采用的是串行口动态扫描方式。
动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。
通常,各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的位选线(公共阴极或阳极)由另外的I/O口线控制。
动态方式显示时,各数码管分时轮流选通,要使其稳定显示,必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码。
依此规律循环,即可使各位数码管显示将要显示的字符。
虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人以同时显示的感觉。
3.4键盘控制原理介绍
3.4.1键盘的工作原理
(1)键盘的分类
按键按结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气式按键,磁感应按键等。
前者造价低,后者寿命长。
目前,微机系统中最常见的是触点式开关按键。
按键按照接口原理可分为编码键盘与非编码键盘两类,这两类键盘的主要区别是识别键符及给出相应键码的方法。
编码键盘主要是用硬件来实现对键的识别,非编码键盘主要是由软件来实现键盘的定义与识别。
全编码键盘能够由硬件逻辑自动提供与键对应的编码,此外,一般还具有去抖动和多键、窜键保护电路。
这种键盘使用方便,但需要较多的硬件,价格较贵,一般的单片机应用系统较少采用。
非编码键盘只简单地提供行和列的矩阵,其它工作均由软件完成。
由于其经济实用,较多地应用于单片机系统中。
本设计采用非编码键盘接口。
(2)按键输入原理
在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外,其它按键都是以开关状态来设置控制功能或输入数据的。
当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能,键信息输入是与软件结构密切相关的过程。
对于一组键或一个键盘,总有一个接口电路与CPU相连。
CPU可以采用查询或中断方式了解有无将键输入,并检查是哪一个键按下,将该键号送入累加器ACC,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程序。
(3)按键结构与特点
机键盘通常使用机械触点式按键开关,其主要功能是把机械上的通断转换成为电气上的逻辑关系。
也就是说,它能提供标准的TTL逻辑电平,以便与通用数字系统的逻辑电平相容。
机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。
其抖动过程如图3.10抖动时间的长短与开关的机械特性有关,一般为510ms。
在触点抖动期间检测按键的通与断状态,可能导致判断出错,即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的。
为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施。
这一点可从硬件、软件两方面予以考虑。
在键数较少时,可采用硬件去抖,而当键数较多时,采用软件去抖。
在硬件上可采用在键输出端加R-S触发器(双稳态触发器)或单稳态触发器构成去抖动电路。
图3.11是一种由R-S触发器构成的去抖动电路,当触发器一旦翻转,触点抖动不会对其产生任何影响。
图3-9键触点的机械抖动
图3-10双稳态去抖电路
电路工作过程如下:
按键未按下时,a=0,b=1,输出Q=1。
按键按下时,因按键的机械弹性作用的影响,使按键产生抖动。
当开关没有稳定到达b端时,因与非门2输出为0反馈到与非门1的输入端,封锁了与非门1,双稳态电路的状态不会改变,输出保持为1,输出Q不会产生抖动的波形。
当开关稳定到达b端时,因a=1,b=0,使Q=0,双稳态电路状态发生翻转。
当释放按键时,在开关未稳定到达a端时,因Q=0,封锁了与非门2,双稳态电路的状态不变,输出Q保持不变,消除了后沿的抖动波形。
当开关稳定到达a端时,因a=0,b=0,使Q=1,双稳态电路状态发生翻转,输出Q重新返回原状态。
由此可见,键盘输出经双稳态电路之后,输出已变为规范的矩形方波。
软件上采取的措施是:
在检测到有按键按下时,执行一个10ms左右(具体时间应视所使用的按键进行调整)的延时程序后,再确认该键电平是否仍保持闭合状态电平,若仍保持闭合状态电平,则确认该键处于闭合状态。
同理,在检测到该键释放后,也应采用相同的步骤进行确认,从而可消除抖动的影响。
(4)按键编码
一组按键或键盘都要通过I/O口线查询按键的开关状态。
根据键盘结构的不同,采用不同的编码。
无论有无编码,以及采用什么编码,最后都要转换成为与累加器中数值相对应的键值,以实现按键功能程序的跳转。
(5)编制键盘程序
一个完善的键盘控制程序应具备以下功能:
检测有无按键按下,并采取硬件或软件措施,消除键盘按键机械触点抖动的影响。
有可靠的逻辑处理办法。
每次只处理一个按键,其间对任何按键的操作对系统不产生影响,且无论一次按键时间有多长,系统仅执行一次按键功能程序。
准确输出按键值(或键号),以满足跳转指令要求。
3.4.2独立式键盘
独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。
独立式按键的典型应用如图3.11所示。
独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,不宜采用。
图3-11独立式按键电路
独立式按键的软件常采用查询式结构。
先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。
此程序比较简单,在此不做编写,本设计采用的是矩阵扫描键盘。
3.4.3矩阵式键盘
单片机系统中,若使用按键较多时,通常采用矩阵式(也称行列式)键盘。
本设计采用的就是矩阵式键盘。
(1)矩阵式键盘的结构及原理
矩阵式键盘由行线和列线组成,按键位于行、列线的交叉点上,其结构如图3.13所示。
由图可知,一个4×4的行、列结构可以构成一个含有16个按键的键盘,显然,在按键数量较多时,矩阵式键盘较之独立式按键键盘要节省很多I/O口。
矩阵式键盘中,行、列线分别连接到按键开关的两端,行线通过上拉电阻接到+5V上。
当无键按下时,行线处于高电平状态;当有键按下时,行、列线将导通,此时,行线电平将由与此行线相连的列线电平决定。
这是识别按键是否按下的关键。
然而,矩阵键盘中的行线、列线和多个键相连,各按键按下与否均影响该键所在行线和列线的电平,各按键间将相互影响,因此,必须将行线、列线信号配合起来作适当处理,才能确定闭合键的位置。
(2)矩阵式键盘按键识别按键的方法很多,扫描法识别按键的过程.
图3-12矩阵键盘
按键按下时,与此键相连的行线与列线导通,行线在无键按下时处在高电
平显然,如果让所有的列线也处在高电平,那么,按键按下与否不会引起行电平的变化,因此,必须使所有列线处在低电平。
只有这样,当有键按下时,该键所在的行电平才会由高电平变为键盘的编码.
(3)对于独立式按键键盘,因按键数量少,可根据实际需要灵活编码。
对于矩阵式键盘,按键的位置由行号和列号惟一确定,因此可分别对行号和列号进行二进制编码,然后将两值合成一个字节,高4位是行号,低4位是列号。
如图3.12中的8号键,它位于第2行,第0列,因此,其键盘编码应为20H。
采用上述编码对于不同行的键离散性较大,不利于散转指令对按键进行处理。
因此,可采用依次排列键号的方式对按排进行编码。
以图3.12中的4×4键盘为例,可将键号编码为:
01H、02H、03H、…、0EH、0FH、10H等16个键号。
编码相互转换可通过计算或查表的方法实现。
(4)键盘的工作方式
对键盘的响应取决于键盘的工作方式,键盘的工作方式应根据实际应用系统中CPU的工作状况而定,其选取的原则是既要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时间。
通常,键盘的工作方式有三种,即编程扫描、定时扫描和中断扫描。
(5)编程扫描方式
编程扫描方式是利用CPU完成其它工作的空余时间,调用键盘扫描子程序来响应键盘输入的要求。
在低电平。
CPU根据行电平的变化,便能判定相应的行有键按下。
8号键按下时,第2行一定为低电平。
然而,第2行为低电平时,能否肯定是8号键按下呢?
回答是否定的,因为9、10、11号键按下,同样会使第2行为低电平。
为进一步确定具体键,不能使所有列线在同一时刻都处在低电平,可在某一时刻只让一条列线处于低电平,其余列线均处于高电平,另一时刻,让下一列处在低电平,依此循环,这种依次轮流每次选通一列的工作方式称为键盘扫描。
采用键盘扫描后,再来观察8号键按下时的工作过程,当第0列处于低电平时,第2行处于低电平,而第1、2、3列处于低电平时,第2行却处在高电平,由此可判定按下的键应是第2行与第0列的交叉点,即8号执行键功能程序时,CPU不再响应键输入要求,直到CPU重新扫描键盘为止。
键盘扫描程序一般应包括以下内容:
判别有无键按下;
键盘扫描取得闭合键的行、列值;
用计算法或查表法得到键值;
判断闭合键是否释放,如没释放则继续等待;
将闭合键键号保存,同时转去执行该闭合键的功能。
(6)定时扫描方式
定时扫描方式就是每隔一段时间对键盘扫描一次,它利用单片机内部的定时器产生一定时间(例如10ms)的定时,当定时时间到就产生定时器溢出中断。
CPU响应中断后对键盘进行扫描,并在有键按下时识别出该键,再执行该键的功能程序。
定时扫描方式的硬件电路与编程扫描方式相同。
(7)中断扫描方式
种键盘扫描方式时,无论是否按键,CPU都要定时扫描键盘,而单片机应
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- hw006 篮球比赛计时器 篮球比赛 计时器
![提示](https://static.bdocx.com/images/bang_tan.gif)