篮球比赛计时计分器的设计
黄凯
(师学院机电与控制工程学院, 435002)
摘要:篮球比赛计时计分器是为了解决篮球比赛时计分与计时准确方便,灵活适用的问题。本毕业设计采用单片机AT89C52为核心,设计出篮球计分计时系统,可以实现单节比赛12分钟倒计时、24秒进攻时间倒计时、开始/暂停倒计时、改变节次、单节结束报警、两队比分分别加减分等显示效果。 本系统利用LCD12864液晶显示器作为显示器件,显示节次、12分钟倒计时、24秒倒计时、主客队双方比分,通过单片机最小系统来控制计时器和计数器工作,单节比赛结束时LED发光二极管闪烁报警。
该设计采用LCD12864液晶显示器,因为其微功耗、小体积、使用灵活等诸多优点在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用,通过仿真基本上实现了上述功能,操作简单,性能稳定,符合一般篮球计分器的工作要求。
关键词:篮球比赛 单片机 LCD液晶显示器 发光二极管
..页脚.
.
篮球比赛计时计分器的设计
黄凯(指导教师,)
1 选题背景
1.1篮球背景知识的介绍
篮球比赛在中国越来越被人们关注,同时也被更多青少年所喜爱。篮球赛记时计分器是对比赛过程中所产生的时间、比分等数据进行快速采集记录、加工处理、传递利用的工具。根据不同运动项目的不同比赛规则要求,篮球赛记时计分器包括评分类、命中类、制胜类、得分类等多种类型。篮球比赛是根据运动队在比赛时间里得分多少来决定胜负的。因此,篮球比赛的记时计分器是一种得分类型的工具。篮球比赛的记时计分器由计时器、计分器等多种电子设备组成。
同时,根据目前高水平蓝球比赛要求,完善的蓝球比赛计时计分系统设备应该能够与现场成绩处理、现场大屏幕、电视转播车等多种设备相联,以
..页脚.
.
便实现提高比赛现场感、表演娱乐观众等功能。 1.2单片机背景知识的介绍
单片机是一种集成在电路芯片,是采用超大规模集成电路技术,把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。按照历史性、本质性、普遍性要求,嵌入式系统应定义为:“嵌入到对象体系中的专用计算机系统”,可分软件部分和硬件部分,而当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在单片机上。所以,以MCU为核心,就是各种各样的单片机,是嵌入式硬件部分的实现方式之一,它主要是因为把处理器和存储器等部件集成在一块芯片上。
进入21世纪,伴随着电子,信息通信技术的应用与普及开发,人们对电子技术的要求也越来越高。目前嵌入式单片机渗透到我们生活的各个领域,按照历史性、本质性、普遍性要求,嵌入式系统应定义为:嵌入到对象体系中的专用计算机系统”。对于嵌入式即可分软件部分和硬件部分。以MCU为核心,就是各种各样的单片机,是嵌入式硬件部分的实现方式之一,它主要是因为把处理器和存储器等部件集成在一块芯片上。在探索单片机的发展道路时,有过两种模式,即“Σ模式”与“创新模式”。“Σ模式”将通用计算机系统中的基本单元进行裁剪后,集成在一个芯片上,构成单片微型计算机;“创新模式”则完全按嵌入式应用要求设计全新的,满足嵌入式应用要求的体系结构、微处理器、指令系统、总线方式、管理模式等。
Intel公司的MCS-48、MCS-51就是按照创新模式发展起来的单片形态
..页脚.
.
的嵌入式系统。MCS-51是在MCS-48探索基础上,进行全面完善的嵌入式系统,成为单片嵌入式系统的典型结构体系。体育比赛计时计分器是对体育比赛过程中所产生的时间、比分等数据进行快速采集记录、加工处理、传递利用的工具。篮球比赛的计时计分器是一种得分类型的工具。它由计时器等、计分器等多种电子设备组成。虽然篮球比赛中很早就开始研究应用了电子计分器,但通常都是利用模拟电子器件、数字电子器件或是模拟、数字混合组成的,其稳定性和高准确度计分仍存在一些问题。以单片机为核心的篮球比赛计分器,计分准确,具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特的优点。 1.3毕业设计任务书的要求
设计并制作一个用于赛场的篮球比赛计时计分器。 要求:
(1)能记录整个赛程的比赛时间,并能修改比赛时间、暂停比赛时间; (2)能随时刷新甲、乙两队在整个赛程中的比分; (3)中场交换比赛场地时,能交换甲、乙两队比分的位置; (4)比赛时间结束时,能发出报警指令。
要求掌握单片机的工作原理,篮球比赛计时计分器硬件电路及软件的设计与调试方法。①设计单片机控制的篮球比赛计时计分器的硬件电路;②设计单片机控制的篮球比赛计时计分器软件部分;③调试硬件电路与软件;④画硬件电路原理图,写论文。 1.4毕业设计的实现方案
篮球比赛计时计分器是为了解决篮球比赛时计分与计时准确的问题。此装置
..页脚.
.
利用单片机AT89C52完成了计时和计分的功能。该设计将介绍系统硬件与软件的设计过程,采用该装置可根据实际情况进行比分修改和时间的准确显示,具有低功耗,可靠性,安全性以及低成本等特点。
考虑到篮球体育运动中队比赛的要求与本专业所学习的嵌入式单片机的知识的应用,可以很好的将比赛的计时与计分体现出来,所以在本次设计中我们利用单片机的知识来解决此次课题的研究与实践。
2 系统方案论证以及硬件的选择
2.1系统的总体方案论证
篮球比赛计分器采用单片机控制系统,显示模块可以用二极数码光或者是
LCD液晶显示屏来显示比赛得分以及比赛时间的倒计时。比赛中的加减分以及时间的调整等控制可以由单片机外接按键控制电路来实现。最后本设计中还需要一个报警电路,在比赛时间结束后通过一个蜂鸣器进行提示报警,另外在报警电路中可以再添加一个LED灯进行闪烁报警,这样能够更加的醒目。通过几个模块就可以完成相应的计分器控制和显示功能的协调。
在本设计基于单片机的篮球计时计分器中,显示器作为显示设备,显示比赛中两队的比分以及单节比赛的倒计时,考虑到篮球比赛的特殊性,在显示中本人另外添加了一个24秒进攻时间的倒计时。在比赛过程中由控制按键随时可以对比赛的两队比分进行刷新、对比赛时间作出调整以及开始/暂停比赛倒计时。在比赛结束时会有蜂鸣器的蜂鸣报警,同时伴随着LED灯的闪烁。中场时可以显示比赛两队位置的交换。在本设计中,经查阅篮球比赛资料,一场比赛分四节,
..页脚.
.
以12分钟作为单机比赛的倒计时时间,24秒作为比赛的一次进攻倒计时时间。硬件设计各模块大体设计如下图2-1所示。
时钟电路 AT89C52 控制器 键盘控制电路 显示电路 LED及蜂鸣器报警 复位电路
图2-1
2.1.1显示方案的选择
方案一:采用数码管LED显示,LED显示器是由发光二极管构成的LED数码管、LED点阵显示器等。LED发光器件一般常用的有两类:数码管和点阵。 方案二:采用液晶电路来显示,LCD是工业字符型液晶,具有显示效果清晰、显示容多式多样的特点。
对以上两个方案加以比较,可以发现LED虽然使用简单,但是显示容有限,显示效果不是很直观,硬件连接电路较为复杂,而且稳定性不高;而LCD液晶显示屏连接线路简单,显示容丰富,易于硬件电路实现,可靠性较好。 综上所述:显示模块采用第二种方案,本设计采用LCD液晶显示屏来实现本设计的显示功能。
..页脚.
.
2.1.2计时方案的选择
方案一:采用芯片74LS192(十进制同步加/减计数器)、NE555(秒脉冲
发生器)以及辅助电路等组成。设计中秒脉冲发生器是采用555集成电路组成的多谐振荡器构成,通过计算来产生比较准确的1秒脉冲。译码显示电路用CD4511和共阴极七段LED数码管组成,报警电路在实验中用发光二极管代替。 该方案能较准确的显示比赛时间和比分,但是有众多的不足。例如:电路中用到的芯片较多,无法简化设计方案。
方案二:采用计时芯片,针对计算机系统对计时芯片的要求,各大芯片厂家推出了键时钟/倒计时/正计时各种芯片,可采用自动控制计时芯片,通过触发控制电路使计时器自动地计时,达到预定时间后芯片重新开始计时(实现倒计时功能);也可以通过触发控制电路使计时器不计时,达到预定时间后芯片重新开始计时(实现暂停功能),不需要程序干预。计算机可通过中断或查询方式读取计时器数据,实现计时的暂停的功能,并进行显示,计时功能的实现就无需占用CPU的时间,程序简单,控制精度高,因此在工业控制系统中多采用这一类专用芯片来实现计时功能。
方案三:软件控制,利用AT89S52部的定时器/计数器进行中断定时,配合软件延时实现计时。该方案节省硬件成本,并且可综合运用定时器/计数器、中断以及程序设计的知识,因此本系统采用方案三软件方法来实现计时。 2.2硬件的选择
根据以上方案的选择,本设计在硬件方面有了初步的确定。在单片机方面,本设计中打算选用89C52单片机,其容量比89C51大一倍。在LCD液晶显示屏方
..页脚.
.
面,考虑到本设计中需要多行显示(一行显示比赛时间,一行显示比赛分数,另外本设计中可能还需要一行作为24秒进攻时间倒计时的显示),所以可以选择市场较为普遍的1602或者12864LCD液晶显示屏。最后由于报警电路的需要,还要选用一个蜂鸣报警器以及一个LED二极管。 本设计选用原件清单如下: 单片机AT89C52 12864LCD液晶显示屏 蜂鸣报警器 LED二极管灯 滑动变阻器
电容、电阻、三极管若干
3 系统硬件的设计
3.1系统总体设计
本设计中,系统采用ATMEL公司AT89S52单片机为控制核心,由倒计时模块、比分显示模块、人机接口模块、报警模块等部分组成。其中比赛时间倒计时和24秒进攻倒计时分别采用单片机AT89S52的定时器1和定时器2实现;人机接口模块由键盘和LCD1602液晶组成,可实现比赛时间、24秒倒计时设置和显示、比分显示和比赛节数显示等功能。
..页脚.
.
本设计采用切换试按键的控制方式,通过一个模式按键对比赛两队分数、比赛时间的分秒位进行切换,通过一个加键、一个减键对切换到的位子数据进行加减。另外单独设置一个开始/暂停按键控制比赛的开机与暂停。最后本设计中还有一个24秒的进攻时间倒计时清零键控制对其清零。
设计中接通电源,系统进行复位(本系统中复位为系统断电再接通),蜂鸣报警器蜂鸣、LED二极管闪烁显示第一节比赛开始,进行12分倒计时,单节比赛倒计时完成自动进入下节比赛(中途可暂停),当第二节比比赛倒计时完成进入第三节比赛时两队比分位置自动进行交换。比赛中途可以随时对两队比分、比赛时间进行人为调整。 3.2硬件设计原理简介
3.2.1控制单片机AT89C52的简介
AT89S52是一个低的功率,高性能8位微控制器芯片包含8K字节的ISP(在系统编程)可以被反复擦除1000次的Flash只读程序存,器件采用ATMEL公司的高密度,非易失性挥发性记忆体技术,兼容标准MCS-51指令集与80C51引脚结构,集成了通用8位中央处理器和ISP Flash存储单元芯片,功能强大的单片机AT89S52为许多嵌入式控制应用的解决方案,以提供符合成本效益的。设计AT89S52 DIP40封装引脚结构如图3-1所示。 ,除8K字节FLASH芯片的程序存储器,256字节的随机存取数据存储器(RAM),32个外部双向输入/输出(I / O)端口,8个中断源,3个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片时钟振荡器。
..页脚.
.
图3-1
AT89S52单片机引脚说明如下: Vcc:电源端,接+5 V VSS:接地端子。
XTAL1:当使用外部TTL时钟输入端为外部时钟时,此引脚连接到外部晶体和微调电容器,片上振荡器反相放大器输入的一端。
XTAL2的另一端连接到一个外部晶体和微调电容器,片上振荡器反相放大器的输出端,该引脚必须敞开时,使用外部TTL时钟。
,ALE地址锁存使能ALE信号:P0口输出的地址锁存器输出的低8位地址锁存器控制系统扩展,使复用的数据和低地址。此外,ALE在第六晶体频率的固定频率输出的正脉冲,作为外部时钟或外部定时脉冲使用。 PSEN:PSEN是外部程序存储器的读选通,低电平有效。
访问程序存储器控制信号EA:当CPU执行片上程序存储器指令,但是当PC值超过0FFFH时,将自动转向执行片外程序存储器指令。当为低电平时,CPU只执行片外程序存储器指令。
的复位信号RST:此信号是高有效,在输入侧,以保持两个机器周期的高电平,在复位后的操作就可以完成。
..页脚.
.
P0端口(P0.0-P0.7):漏极开路的8位准双向I / O端口的8条地址线和8条数据线复用的端口的端口必须连接到外部使用的上拉电阻。外部程序存储器被访问时,它的低8位的存储器地址线。
P1口(P1.0-P1.7):这是一个部上拉电阻的8个准双向I / O口,用作输入,应该写第一个部锁存器。
P2口(P2.0-P2.7):一个部上拉电阻的8准双向I / O端口,输入端口,同样需要先写的部锁存器1。访问外部程序存储器,高八位地址线的存。 P3口(P3.0-P3.7):P3口部上拉电阻的8个准双向I / O口,P3口的通用I / O端口使用,它也有第二针功能,具体如表3-1所示。
口线 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 特殊功能 RXD TXD INT0 INT1 T0 T1 WR RD 表3-1
3.2.2液晶显示模块1602LCD显示屏简介
显示器是最常用的输出设备,其种类繁多,但在单片机系统设计中最常用的是发光二极管显示器(LED)和液晶显示器(LCD)两种。由于这两种显示器结构简单,价格便宜,接口容易实现,因而得到广泛的应用。
发光二极管LED,组成的显示屏,每个点都是一个或多个发光二极管,通过
信号名称 串行输入口 串行输出口 外部中断0输入口 外部中断1输入口 定时器/计数器0外部输入定时器/计数器1外部输入写选通输出口 读选通输出口 ..页脚.
.
控制电路控制二极管的亮与灭来控制点的发光,从而使整个大屏幕显示图案。 液晶显示器LCD最常见的就是TFT类型的,它是由光源,液晶光栅,和控制芯片组成,他的光源是常亮的白色强光,当光线通过液晶光栅(液晶屏)的时候,通过电压改变液晶颗粒滤光方向,从而改变每个点的颜色和强度来显示图案。 液晶显示器分很多种类,按显示方式可分为段式,行点阵式和全点阵式。段式与数码管类似,行点阵式一般是英文字符,全点阵式可显示任何信息, 如汉字、图形、图表等。 两者之间的区别:
(1)二极本身发光, 液晶本身不发光,只是透射光。
(2)二极管体积大,图像质量一般,适合作室外大屏幕,价格较低。液晶成本较高,面积无法做得很大,但图像质量很好,适合做显示器。 (3)二极管耗电大,液晶耗电小。 (4)二极管图像刷新率低,液晶的高。
二者的档次相差比较大,一般来讲在一些图像简单,对成本控制较严格的场合,用二极管,比如商场、银行等服务部门的电子提示窗,街道、百货公司外面的广告宣传窗;而液晶一般都是作计算机显示器、电视、手持设备等对图像质量要求高的场合。
本设计采用LCD1602实现显示功能, 1602是16字符*2行的字符型LCD显示器,它由32个字符点阵块组成,每个字符点阵块由5×7或5×10个点阵组成,可以显示ASCII码表中的所有可视的字符。它置了字符产生器ROM(CGROM)、字符产生器RAM(CGRAM)和显示数据RAM(DDRAM)。1602液晶显示器以其微功耗、体积小、显示容丰富、超薄轻巧的诸多优点,在
..页脚.
.
袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。 LCD1602引脚及功能如下表3-2
编号 1 2 3 4 符号 VSS VDD VL RS 引脚说明 电源地 电源正极 液晶显示偏压信号 编号 符号 9 10 11 D2 D3 D4 D5 引脚说明 Data I/O Data I/O Data I/O Data I/O 数据/命令选择端12 (H/L) 5 6 7 8 R/W E D0 D1 读/写选择端(H/L) 使能信号 Data I/O Data I/O 13 14 15 16 D6 D7 BLA BLK Data I/O Data I/O 背光源正极 背光源负极 表3-2
1、2 组电源,一组是模块的电源,一组是背光板的电源,均为5V 供电。 2、VL是调节对比度的引脚调节此脚上的电压可以改变黑白对比度。 3、RS是很多液晶上都有的引脚,是命令/数据选择引脚,脚电平为高时表示将进行数据操作,为低时表示进行命令操作。
4、R/W也是很多液晶上都有的引脚,是读写选择端,该脚电平为高是表示要对液晶进行读操作,为低时表示要进行写操作。
5、E 同样很多液晶模块有此引脚,通常在总线上信号稳定后给一正脉冲通知把数据读走,在此脚为高电平的时候总线不允许变化。
..页脚.
.
6、D0—D7 8位双向并行总线,用来传送命令和数据。 7、BLA是背光源正极,BLK是背光源负极。 如下图3-2为Proteus仿真效果图:
图3-2
3.2.3系统复位电路
单片机复位电路的作用在上电或复位过程中控制CPU的复位状态:这段时间让CPU保持复位状态,而不是一上电或刚复位完毕就工作,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。无论用户使用哪种类型的单片机,总要涉及到单片机复位电路的设计。而单片机复位电路设计的好坏,直接影响到整个系统工作的可靠性。许多用户在设计完单片机系统,并在实验室调试成功后,在现场却出现了“死机”、“程序走飞”等现象,这主要是单片机的复位电路设计不可靠引起的。
单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位。
..页脚.
.
本系统采用上电复位的复位方式,AT89C51的上电复位电路如图3-3所示,只要在RST复位输入引脚上接一电容至VCC端,下接一个电阻到地即可。对于CMOS型单片机,由于在RST端部有一个下拉电阻,故可将外部电阻去掉,而将外接电容减至1µF。上电复位的工作过程是在加电时,复位电路通过电 容加给RST端一个短暂的高电平信号,此高电平信号随着VCC对电容的充电过程而逐渐回落,即RST端的高电平持续时间取决于电容的充电时间。为了保证系统能够可靠地复位,RST端的高电平信号必须维持足够长的时间。上电时,VCC的上升时间约为10ms,而振荡器的起振时间取决于振荡频率,如晶振频率为10MHz,起振时间为1ms;晶振频率为1MHz,起振时间则为10ms。在图2的复位电路中,当VCC掉电时,必然会使RST端电压迅速下降到0V以下,但是,由于部电路的限制作用,这个负电压将不会对器件产生损害。另外,在复位期间,端口引脚处于随机状态,复位后,系统将端口置为全“l”态。如果系统在上电时得不到有效的复位,则程序计数器PC将得不到一个合适的初值,因此,CPU可能会从一个未被定义的位置开始执行程序。
图3-3
3.2.4系统时钟电路
时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。
..页脚.
.
在一个单片机应用系统中,时钟是保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢。根据不同需要可以采用不同频率的晶振,这里采用12MHZ的晶振,另外有两个30pF的电容,两晶振引脚分别连到XTAL1和XTAL2振荡脉冲输入输出引脚。具体连接图如图3-4所示:
图3-4
时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。一个单片机应用系统中的时钟保护系统工作正常,主要由晶体振荡器和外围电路,基准振荡定时信号的晶振频率的大小决定的SCM系统的速度。根据不同的需求,选择不同频率的晶振,两个的晶体引脚分别连接到XTAL1和XTAL2振荡脉冲的输入和输出引脚可用于一个外部晶体或陶瓷谐振器,电容器C1,C2构成的谐振电路,在微控制器的部放大器的反馈电路。谐振器的外部的电容器C1,C2,虽然不是很严格的要求,但电容的大小会稍微影响的稳定的振荡频率的振荡器工作的水平之后,启动的难易程度的稳定性,以及的温度,如果使用石英晶体,它是推荐使用30pF的,使用陶瓷谐振器建议选择40PF。 3.2.5系统按键接口原理
..页脚.
.
键盘往往分成编码键盘和非编码键盘,编码键盘由按键和键处理电路组成,直接为计算机提供经过编码的按键键码;而非编码键盘则只提供按键,其余由计算机自己处理。非编码键盘结构简单,可自由裁量设计,非常适用于单片应用系统。
1.按键特性与抖动处理
按键是一种机械弹性开关,当键按下时闭合,松开时断开。因为有机械的接触,在触点闭合或断开的瞬间会出现电压抖动。为了避免键输入错误,必须进行键抖动的处理。去抖动由硬件和软件两种方法:硬件方法就是在键盘中附加去抖动电路消除抖动;而软件方法则是采用时间延迟以躲避抖动,待触点状方法处理。
2.键盘接口及功能
非编码键盘是所用按键组成的集合。为了保证键盘的正确输入,键接口必备以下功能:
(1)键扫描与识别,判断有无键按下以及按键位置,键扫描与识别是通过“行扫描”与“列状态”的配合来确定是否有键按下以及所在行、列的位置。所谓行扫描就是一次给每条行线送低电平,而其余各行线送高电平,并检测对每一行扫描时所产生的列状态。键盘扫描有下列三种方式:
程控扫描方式:只有单片机空闲时才调用扫描程序响应用户键入请求。
..页脚.
.
定时扫描方式:单片机定时调用扫描程序对键盘进行扫描,即时响应用户键入请求。
中断扫描方式:与中断请求电路配合,当有键按下时产生中断请求,由单片机响应并执行中断服务程序扫描键盘。 (2)去键抖动
消除按键抖动带来的误输入。检测键关闭后,延时10ms后再检测一次,两次检测相同再进一步进行键处理。 (3)键编码
生成易于处理的键码。由于键位码比较零乱,因此接下来的工作是根据需要把反映闭合键和键位置的键位码换乘反映键功能的键码。有了键码,才好通过散转指令把程序执行到闭合键所对应的服务程序上去。键码既可以根据键位码查询表求得,也可以根据键码编排规律计算得到。 (4)等待键释放
为了保证键一次闭合仅进行一次处理,编键码之后,再以延时扫描的方法等待键释放。键释放后键处理工作完成。本设计中proteus仿真按键控制电路如下图3-5所示:
..页脚.
.
图3-5
3.2.6报警电路的设计
系统通过P1口控制设计的红色发光二极管以及蜂鸣报警器显示报警。前三季度结束时的红色发光二极管闪烁,自动开始下一节比赛,而发光二极管停止闪烁并熄灭。比赛结束后发光二极管闪烁并伴随蜂鸣报警持续一小段时间。具体连接电路图如图3-6所示。
DS25V330
P2.0R4图3-6
3.3章节总结
本章设计了以8位单片机AT89C52为核心的篮球计时计分器硬件平台方案,并搭建了相应的I/O口控制按键电路、显示电路、鸣笛警示等外围电路,实现一个简易的篮球赛计分屏硬件部分的设计。
..页脚.
.
4 系统软件的设计
本系统是利用单片机的定时功能来进行时间处理,实现计时显示功能,
利用单片机的计数功能来进行分数处理,实现计分显示功能,对时间和分数进行处理的过程中,要通过中断来控制实现,当有按键按下时,计分器就会有相应的加分减分处理,然后通过数码管显示器动态扫描并显示出来。通过发声的原理和规律,利用单片机的I/O口输出高低电平,产生矩形波,外接喇叭就会发出一定频率的声音,从而实现鸣笛功能。 3.1软件设计的原理
篮球比赛计分计时器其实就是一个计数器,本课程设计就是利用单片机中的定时/计数器来实现其计时的功能,利用按键实现其计分的功能。 51单片机部有两个16位可编程的定时器/计数器,分别称为定时器/计数器0和定时器/计数器1,它们具有四种工作方式,其控制字和状态均在相应的特殊功能寄存器中,通过对控制寄存器的编程,就可方便地选择适当的工作方式。特殊控制器有工作方式控制寄存器(TMOD),定时/计数器控制寄存器(TCON),中断允许控制寄存器IE。
定时/计数器的核心是的16位加法计数器,定时器T0的加法计数器用特殊功能寄存器TH0、TL0表示,TH0表示加法计数器的高8位,TL0表示加法计数器的低8位。TH1和TL1则分别表示定时/计数器T1的高8位和低8位。它们均是8位寄存器,在特殊功能寄存器中占地址8AH-8DH。它们用于存放定时或计数的初始值。此外,部还有一个8位的工作方式寄存器TMOD和一个8位的
..页脚.
.
控制寄存器TCON,用于选择和控制定时/计数器的工作。这些寄存器可根据需要由程序读写。
当然16位加法计数器的输入端每输入一个脉冲,16位加法计数器的值自动加1,当计数器的计数值超过加法计数器字长所能表示的二进制数的围而向第17位进位,即计数溢出时,置位定时中断请求标志,向CPU申请中断。本次课程设计程序是用C语言编写的,因为设计的功能较为简单,所以程序中只用到一个主程序就实现了其功能。 4.2系统软件的设计
本系统软件采用模块化设计方法。在软件程序的设计方面我们采用C语言进行编写,整个系统由初始化模块、倒计时模块、液晶显示模块以及键盘模块组成程序流程图如图4-1所示:
图4-1
..页脚.
.
4.2.1系统主程序设计
在主程序循环中,主要工作是对LCD液晶屏的初始化和扫描是否有键按下,若有键按下则要确认是哪个键按下并做相应的处理,并做同步显示处理。 void main() {
// uchar i;
lcd_init();//液晶初始化
// jieshu(); // miaobiao();
while(1) {
keyscan2(); if(s4==0) {TR0=0;} if(fen==0&&miao==0) { }
di(); shan();
..页脚.
.
}
4.2.2液晶显示刷分子函数
液晶显示控制分为写数据控制和写命令控制,写数据与写命令分时操作。由于液晶写数据和写命令子函数中都存在延时操作,且液晶写数据命令必须紧跟相应的写命令子函数后执行,所以分数刷新显示函数及下面的定时器中断后的时间刷新显示函数都应放在中断函数外执行,避免正在执行写命令操作时发生中断跳转,从而影响后面的写数据操作。
void lcd_write_sfm(uchar add,uchar date) {
uchar shi,ge; shi=date/10; ge=date%10; lcd_pos(3,add); write_data(0x30+shi); write_data(0x30+ge); }
..页脚.
.
}
void lcd_write_jie(uchar add,uint jie) { }
void lcd_write_afen(uchar add,uint fen1) { }
..页脚.
lcd_pos(2,add); write_data(0x30+jie);
uchar shi,ge; shi=fen1/10; ge=fen1%10; lcd_pos(0,add); write_data(0x30+shi); write_data(0x30+ge);
.
void lcd_write_bfen(uchar add,uint fen2) {
uchar shi,ge; shi=fen2/10; ge=fen2%10; lcd_pos(1,add); write_data(0x30+shi); write_data(0x30+ge);
4.2.3 T0中断程序 void time_0() interrupt 1 {
TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++; if(count==37) {
miao++; count=0;
..页脚.
.
// //// yici++;
if(yici==24) yici=0; if(miao==60) {
{
..页脚.
miao=0; fen++; if(fen==12) { fen=0; count=0; jie++;
lcd_write_jie(1,jie);
if(jie==3)
lcd_pos(0,0); i=0;
while(table5[i]!='\\0')
.
{ }
write_data(table5[i]); i++; delay(10);
lcd_pos(1,4); i=0;
while(table6[i]!='\\0') { }
lcd_write_bfen (4,afen); lcd_pos(0,3);
lcd_write_afen (3,bfen);
write_data(table6[i]); i++; delay(10);
..页脚.
.
}
}
lcd_pos(1,4);
}
}
lcd_write_sfm(2,11-fen); }
lcd_write_sfm(4,59-miao);
4.2.4报警电路软件设计思路
我们知道,声音的产生是一种音频振动的效果。振动的频率越高,则为高音;振动的频率越低,则为低音。声音的频率围为20Hz-200kHz之间,人类耳朵比较容易辨识的声音频率围是200Hz-20kHz,一般音响电路是用正旋波信号驱动喇叭,从而产生悦耳的音乐;在数字电路里,则是用数字脉冲信号驱动喇叭,从而产生声音。若要AT89C51产生声音,可利用程序来控制单片机某个I/O口的“高”电平或者“低”电平,则在该I/O口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”、“低”电平的持续时间,就能改变输出频率,从而改变音调。
..页脚.
.
若要构成音乐,光有音调是不够的,还需要节拍,让音乐具有旋律(固定的律动),而且可以调节各个音的快慢速度。“节拍”,即Beat,简单说就是打拍子,就像我们听音乐不自主的随之拍手或其他动作。若1拍为0.4s,则1/4 拍为0.1s,其他节拍都是它的倍数,只要设定延时时间即可。至于1拍多少s,并没有严格规定,就像人的心跳一样,大部分人的心跳是每分钟72下,有些人快一点,有些人慢一点,只要听的悦耳就好。节拍也是用延时子程序或者定时器中断来实现的。如1/4 拍一次延时0.1s,1拍延时4次0.1s。 4.3章节总结
本章对嵌入式篮球计分屏的软件部分进行了详细设计并详细介绍了本次设计所涉及到的原理,包括单片机的定时/计数原理和声音的产生原理,单片机的定时/计数功能可以实现比赛双方的计分和计时功能,利用发音原理可以实现本设计的鸣笛警示功能。
通过第二、三章的设计,再结合本章的软件部分的设计,本次设计的核心部分基本完成。接下来我们可以利用本专业电气工程机器自动化学到的应用软件Proteus和Keil C对本设计做一个大体检验。具体要先熟悉两款软件的使用方法,首先根据系统硬件的设计在Proteus软件中选择器件做好电子连接仿真图,然后根据系统软件设计方案在Keil C中编辑出系统程序,继而就可以进行系统的整体仿真。
5 系统调试
..页脚.
.
在本设计中的系统调试主要运用Proteus与Keil C两款软件对系统整体运行进行调试。在写好源程序,画出原理图之后,在电脑上进行软件仿真。 5.1Proteus简介及其运用
Proteus软件是一种低投资的电子设计自动化软件,提供可仿真数字和模拟、交流和直流等数千种元器件和多达30多个元件库。Proteus软件提供多种现实存在的虚拟仪器仪表。此外,Proteus还提供图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗,尽可能减少仪器对测量结果的影响,Proteus软件提供丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。提供Schematic Drawing、SPICE仿真与PCB设计功能,同时可以仿真单片机和周边设备,可以仿真51系列、AVR、PIC等常用的MCU,并提供周边设备的仿真,例如373、led、示波器等。Proteus提供了大量的元件库,有RAM、ROM、键盘、马达、LED、LCD、AD/DA、部分SPI器件、部分IIC器件,编译方面支持Keil和MPLAB等编译器。 该软件的特点:
1. 全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。
2.具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS-232动态仿真、C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
..页脚.
.
3. 目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。
4. 支持大量的存储器和外围芯片。总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真51、AVR、PIC。
将系统原理图在Proteus环境下画好,然后运用Proteus进行仿真,观察其功能实现情况。
5.2 Keil C简介及其运用
软件调试主要是运用Keil和Proteus完成。在写好源程序,画出原理图之后,在电脑上进行软件仿真。 Keil的使用简介:
先建一个新的工程,选择处理器,这里选择AT89S52;接下来可以新建一个文档用来编辑程序,编辑完存为.asm(汇编源文件)或 .h(C语言头文件)或.c(C语言实现文件)即可;接下来把保存的.asm, .c或.h文件加入到工程里即可。然后进行工程配置。点击Project菜单下的Options for Target ‘Target 1’。 在弹出对话框的Target 项里输入晶振为12M,然后勾上Use On-chip ROM。在Output项里勾上Create HEX File。最后编译程序,keil会自动为你生成.hex文件。
5.3 Proteus与Keil C联调及仿真
用两款软件画好系统原理图、编辑好源程序。在Protues中进行电路仿真时,先绘制好原理图,再调入由Keil C已编译好的目标代码文件*.HEX,随后便可在
..页脚.
.
Protues的原理图中模拟的实物运行状态和过程,进行观察从而改良自己的设计方案。
Proteus仿真运行结果如图5-1所示:
图5-1
Keil C仿真运行结果如图5-2所示:
..页脚.
.
图5-2
..页脚.
.
6 总结与展望
6.1毕业设计总结
毕业设计到此告一段落了,通过本次设计,使我重温了大学中学习过的很多知识,尤其是对于单片机工作原理、功能应用有了更深的了解、更进一步的认识,进一步了解单片机的编程语言设计。
在本次设计的过程中,我发现很多的问题,给我的感觉就是下手很难,很不顺手,看似很简单的电路,要动手把它给设计出来,是很难的一件事,主要原因是我们没有经常动手设计过电路。另外单片机系统的知识似懂非懂,而且很多知识当时弄明白了,现在要用的时候又不记得,造成我用了大量的时间去查阅各种资料和程序命令,因此整个过程时间安排不合理。由于设计的计划没有安排好,设计的时间极为仓促,尤其是在硬件调试的过程中出现了很大的问题。另外资料的查找也是一大难题,这就要求我们在以后的学习中,应该注意到这一点,更重要的是我们要学会把从书本中学到的知识和实际的电路联系起来,这不论是对我们以后的就业还是学习,都会起到很大的促进和帮助。
..页脚.
.
在利用单片机设计LCD液晶显示屏的整个设计过程中,从电路的设计,元器件的采购,电路的调试,程序的编写以及最后的电路板的制作,我都亲自参与了设计与制作,这对我对于理论和实际相结合有了新的认识。 6.2毕业设计展望
在本次毕业设计中,由于对篮球比赛整个过程缺乏透彻性的研究,导致设计出来的实物在很多功能上有美中不足的地方。好比如说篮球比赛中在整场比赛结束的时候会出现比分打平的现象,那么在这个时候就需要进行一场加时赛,而在设计中并没有考虑到这种情况,这是设计之前没有对篮球这项运动做充分的研究导致的结果。同样告诉我一个道理,在以后的人生中做任何事情都需要做好事前的充分准备。
篮球在如今的世界中,已经成为了人们熟知的体育运动,著名的NBA篮球体育赛事更是风靡中国。随着篮球比赛的水平不断的提高,而篮球比赛计时计分器的精确计时,多功能显示也显得尤为重要。在今后的篮球比赛赛事中其在比赛中的地位也会越来越高,其计时功能将会跟精确,在具体的应用中其显示功能将会是全方位、无死角的显示方式。期望在未来的篮球比赛计时计分器中会加上一些音频的功能,可以做到对比赛球员做一些鼓励以及一些防守进攻的提示。本设计方便了人们在比赛时的计时计分工作,在某种程度上也促进了篮球赛的开展,既有利于发展篮球这项体育运动,又有利于增强人们的体质。另外参与篮球运动的人多了,也有利于篮球运动员的选拔,期望会对我们的篮球事业也具有促进作用。 6.3致谢
..页脚.
.
本次毕业设计是在师学院机电与控制工程学院教授的指导和帮助下完成的,在此衷心的感谢教授对我的细心指导。在论文的设计过程中我遇到了很多困难,很多时候感觉自己都要坚持不下去了,经过教授耐心的指导和鼓励,我最终坚持了下来。教授那诲人不倦、为人师表的品格很令我敬佩。整个论文设计下来,我从中学会了很多。论文设计过程中遇到很多不会的东西,教授以及本班同学都耐心的指点我,鼓励让我自己去分析并解决问题,我最大的收获就是从中学会了如何去正确的面对困难并学会去解决问题。从这里看,教授教会我的不仅仅是如何去做一篇毕业设计,而且教会了我最重要的解决问题的方法。再次衷心的感谢教授的指导,使我受益终生。
另外感谢我的母校师学院,感谢所有教过我的老师,所有人和所有这些事都是我最珍惜的。也谢谢帮助我的各位同学,希望所有的我要感谢的人都身体健康,事事顺心。
..页脚.
.
7 参考文献
[1]江世明主编.基于Proteus的单片机应用技术》[M].北京:电子工业出版社,2009
[2]群芳,士军,黄建主编.单片微型计算机与接口技术(第二版)[M].北京:电子工业出版社, 2007.12
[3]周澜景,丽娜主编.基于Proteus的电路及单片机系统设计与仿真[M].北京:航空航天大学出版社,2006
[1]徐惠民,安德宁.单片微型计算机原理、接口及应用.第二版[M].北京:北京邮电大学出版社.2000.
[2]建忠.单片机原理及应用[M].:电子科技大学出版社.2007.
[3]汉才.单片机原理及其接口技术学习辅导与实践教程[M] .北京:清华大学出版社.2003.
[4]夏路易,石宗义.电路原理图与电路板设计教程[M].北京:北京希望电子出版社.2002.
..页脚.
.
[5]刚,林凌.新概念单片机教程[M].天津:天津大学出版社.2003. [6]崔华,蔡炎光.单片机实用技术[M].北京:清华大学出版社.2005.
[7]毅刚,彭喜源,谭晓昀.MCS52单片机应用设计[M].:工业大学出版社.2004. [8]何立民.单片机应用系统设计[J].单片机与嵌入式系统应用.1990. [9]马忠梅.单片机的C语言应用程序设计[M].北京:北京航空航天大学出版社.2005.
[10]迎辉,贡雪梅.单片机实训教程[M].北京:北京大学出版社.2006. [11]彭介华.电子技术课程设计指导[M].北京:高等教育出版社.1997.
..页脚.
因篇幅问题不能全部显示,请点此查看更多更全内容