基于AT89C51的无线比赛计分系统汇编.docx
《基于AT89C51的无线比赛计分系统汇编.docx》由会员分享,可在线阅读,更多相关《基于AT89C51的无线比赛计分系统汇编.docx(44页珍藏版)》请在冰豆网上搜索。
![基于AT89C51的无线比赛计分系统汇编.docx](https://file1.bdocx.com/fileroot1/2023-7/6/ef7fcef0-ca8d-4d0b-b0fd-378184379fd7/ef7fcef0-ca8d-4d0b-b0fd-378184379fd71.gif)
基于AT89C51的无线比赛计分系统汇编
基于AT89C51单片机的无线比赛计分系统
学生姓名:
学生学号:
院(系):
电气信息工程学院
年级专业:
电子信息工程
指导教师:
助理指导教师:
二〇一五年五月
摘要
伴随着信息传播技术的发展,NBA在年轻人中越来越流行。
在我们校园的每一个角落都能发现篮球比赛的身影。
篮球赛计分器是为了解决篮球比赛时计分与计时准确的问题。
此装置利用单片机AT89C51完成了计时和计分的功能。
本文详细地介绍了系统硬件与软件的设计过程,设计由AT89C51编程控制LCD1602液晶显示的球赛计时计分系统。
该系统具有赛程定时设置,赛程时间暂停,及时刷新甲、乙双方的成绩等功能。
它具有价格低廉,性能稳定,操作方便并且易于携带等特点。
广泛适合各类学校或者小型团体作为赛程计时计分。
随着社会和科技的发展,采用人工统计记录篮球比分分数显然已经不能满足赛事的要求。
因此,许多电子记录分数的器件便应运而生。
本设计采用AT89c51单片机作为控制芯片,采用NRF2401无线数传模块作为通讯模块,操作员只需要使用手上的操作终端设备即可显示对A、B两队比分的加1分、加2分、加3分、减一分、计数清零等操作,并把操作结果显示到无线接收端1602液晶上显示出来。
同时还可以无线开始、暂停比赛、计时参数设置等。
本课题让篮球计分系统功能更加完整和人性化。
关键词:
At89c51,LCD1602,篮球,计分系统;
Abstract
Withthedevelopmentofinformationandcommunicationtechnologies,NBAismoreandmorepopularwithyoungpeople.Youcanseebasketballgameanywhereinourschool.Timescoringbasketballgameistosolvethegameofbasketballwiththetimepointswhentheissueofaccuracy.ThisdeviceiscompletedusingAT89C51single-chiptimingandscoringfunctions.Thisarticledescribesindetailthesystemhardwareandsoftwaredesignprocess,designbyAT89C51programmingcontrolforLEDSeven-SegmentLEDdisplaysubsystemofthegametime.Thesystemissetupwiththeschedulefromtimetotime,scheduletimetopause,refreshintimeA,B,andafterthetwosidesachievedatemporarysuccessfunctions.Itisinexpensive,stableperformance,easytooperateandeasytocarryandsoon.Awiderangesuitableforalltypesofschoolsorsmallgroupsastime-pointsrace.
Withthedevelopmentofsocietyandtechnology,theartificialstatisticalrecordsofbasketballscoresobviouslycannotmeettherequirementsofcompetition.Therefore,thedeviceinmanyelectronicrecordscorescameintobeing.
ThisdesignusesSTC12C89c52microcontrollerasthecontrolchip,usingNRF2401wirelessdatatransmissionmoduleasthecommunicationmodule,theoperatoronlyneedtousetheterminalequipmentcanbeinthehandsoftheAandBshowedthatbothteamsscoreplus1points,2points,3points,minusone,countresetoperation,andtheoperationresultstothewirelessreceivingterminal1602LCDdisplay.Atthesametimealsocanstart,pausethegame,wirelesstimingparametersetting.Thispapermakesabasketballscoringsystemfunctionmorecompleteandhumanization.
Keywords:
STC89c51,LCD1602,basketball,scoringsystem;
目录
摘要I
AbstractII
1绪论1
1.1课题研究的背景及意义1
1.2课题研究的目的和意义1
1.3设计的主要目标任务2
2系统方案论证3
2.1系统设计原理3
2.2.1主控制芯片的选择4
2.2.2显示模块的选择5
2.2.3电源电路的选择5
2.2.4键盘输入电路的选泽6
2.2.5数据通信模块的选择6
3系统的硬件设计8
3.1单片机最小系统设计8
3.2LCD1602液晶显示电路设计8
3.3蜂鸣器电路设计14
3.4无线数据收发电路设计14
3.5键盘电路设计15
3.5.1按键介绍15
3.5.2键盘的原理及电路设计15
3.6电源及滤波电路设计16
4系统的软件设计18
4.1主程序流程图18
4.2液晶显示程序的设计20
4.3矩阵键盘扫描21
4.4蜂鸣器报警子程序设计22
5系统调试23
5.1硬件焊接与调试23
5.2系统软件调试23
结语25
参考文献26
附录一:
电路图27
附录二:
程序源代码28
附录三:
发送端实物图35
附录四:
接收端实物图36
致谢37
1绪论
1.1课题研究的背景及意义
由于体育比赛对人类愈来愈重要,体育比赛计分系统是快速采集记录体育比赛过程之中所产生的比分和时间等数据,传递利用,加工处理的信息系统。
然而不同比赛项目决定比赛规则不同,这就要求体育比赛计时计分系统种类不同,在当今社会,体育比赛的计时计分系统就包括测量类,评分类,命中类,得分类和制胜类等多种类型。
一个好的记分器对球赛公平很重要,正规的篮球比赛的决胜方式是源于运动球队在规定的比赛时间里遵守比赛规则得分多少,因此,篮球比赛的计分系统是一种得分类型的系统。
篮球比赛的计时系统由计时器等多种电子设备组成,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现高比赛现场感,表演娱乐观众等功能目标。
单片机把我们带入了智能化的电子领域,许多繁琐的系统若由单片机进行设计,便能收到电路更简单、功能更齐全的良好效果。
若把经典的电子系统当作一个僵死的电子系统,那么智能化的现代电子系统则是一个具有“生命”的电子系统。
而随着技术的进步,单片机与串口通信的结合更多地应用到各个电子系统中已成一种趋势。
但是,单片机并不像传统数字电路或模拟电路那样直观,原因是除了“硬件”之外,还存在一个“软件”的因素。
正是这个“软件”因素的存在,使得许多初学者怎么也弄不懂单片机的工作过程,怎么也不明白为什么将几个数送来送去,就能控制一盏灯亮/灭,就能控制一个电机变速。
众所周知,单片机具有集成度高,功能强,通用性好的特点,而且它具有重量轻,能耗低,体积小,可靠性高,价格便宜,抗干扰能力强和使用方便等独特的优点,单片机对于电子信息工程专业的学生很重要,基于单片机的强大,单片机迅速得到了推广应用,目前已经成为新电子产品的关键部位和测量控制应用系统中的优选机种。
世界各大测控技术企业,机电行业,电气厂家,竞相把单片机应用于产品更新,作为实现智能化,数字化的核心部件。
1.2课题研究的目的和意义
单片机的应用是具有高度现实意义的。
单片机极高的可靠性,微型性和智能性(我们只要编写不同的程序后就能够完成不同的控制工作),单片机已成为工业控制领域中普遍采用的智能化控制工具,已经深深地渗入到我们的日常生活当中。
通过此次基于单片机设计的篮球计时计分系统,我们可以更清楚详细地了解单片机程序设计的基本指令功能、编程步骤和技巧来掌握单片机编程,并对MCS-51单片机的结构和原理进行进一步掌握,以及对基于单片机开发应用的相关芯片的工作原理进一步深究,并且可以在将来的工作和学习中加以应用,还加深了对单片机的理解和应用以及掌握单片机与外围接口的一些方法和技巧,这主要表现在以下一些方面:
(1) 篮球赛计时计分系统包含了8051系列单片机的最小应用系统的构成,同时在此基础上扩展了一些使用性强的外围接口。
(2) 可以了解到液晶显示器的结构、工作原理以及这种显示器的接口实例与
具体连接与编程方法。
(3) 怎样利用串行口来扩展显示接口等。
1.3设计的主要目标任务
本设计采用AT89c51单片机作为控制芯片,采用NRF2401无线数传模块作为通讯模块,操作员只需要使用手上的操作终端设备即可显示对A、B两队比分的加1分、加2分、加3分、减一分、计数清零等操作,并把操作结果在无线接收端1602液晶上显示出来。
同时还可以无线开始、暂停比赛、计时参数设置等。
本课题让篮球计分系统功能更加完整和人性化。
本设计初步预定主要任务有:
(1)LCD1602液晶显示电路设计。
(2)键盘电路及驱动程序设计。
(3)蜂鸣器提示音电路设计。
(4)NRF2401无线发射接收电路及程序设计。
(5)倒计时程序设计。
2系统方案论证
2.1系统设计原理
本设计采用AT89c51单片机作为控制芯片,采用NRF2401无线数传模块作为通讯模块,操作员只需要使用手上的操作终端设备即可显示对A、B两队比分的加1分、加2分、加3分、减一分、计数清零等操作,并把操作结果在无线接收端1602液晶上显示出来。
同时还可以无线开始、暂停比赛、计时参数设置等。
本课题让篮球计分系统功能更加完整和人性化。
系统框图如下图:
2.1.1无线发射系统结构框图
无线发射系统由:
键盘模块、51单片机最小系统、电源模块、NRF2401无线发射模块、LED状态指示灯模块构成,系统框图如图2.1.1所示:
图2.1.1无线发射系统结构框图
无线发射系统工作的原理:
单片机扫描键盘的键值参数,经单片机处理转换后通过NRF2401无线发射模块发射出去。
2.1.2无线接收系统结构框图
无线接收线系统由:
单片机最小系统、电源模块、1602液晶显示模块、NRF2401无线接收模块等构成。
系统框图如图2.1.2所示:
图2.1.2无线接收系统结构框图
无线接收系统工作的原理:
无线接收系统本身可以通过NRF2401无线接收模块接收发射系统发射的数据信息,实现对于AB两队比分的加减操作,同时可以控制记分器的计时、清零等操作。
2.2硬件方案的选择
2.2.1主控制芯片的选择
方案一:
采用ARM7微处理器作为控制器。
ARM7引系列处理器是英国ARM公司设计的主流嵌入式处理器ARM7内核是0.9MIPS/MHz的三级流水线和冯·诺伊曼结构;ARM9内核是5级流水线,提供1.1MIPS/MHz的哈佛结构。
ARM7没有MMU,ARM720T是MMU的,ARM9主要包括ARM9TDMI和ARM9E-S等系列ARM9是有MMU的,ARM940T只有Memoryprotectionunit.不是一个完整的MMU。
ARM7是典型的微处理器,体积小、处理能力强、功耗低,但价格昂贵,会照成产品成本增加。
方案二:
采用AT89C51单片机作为为控制
目前所有兼容Intel8031指令系统的单片机的统称是AT89C51单片机。
Intel的8031单片机是该系列单片机的始祖,后来随着Flashrom技术的发展,8031单片机成为目前应用最广泛的8位单片机之一,取得了长远的进展,ATMEL公司的AT89系列是其代表型号,被广泛应用于工业测控系统之中。
目前51系列的兼容机型很多公司都有推出,在目前乃至今后很长的一段时间内将占有大量市场。
51单片机是基础入门的一个单片机,还是应用最广泛的一种。
需要注意的是52系列的单片机一般不具备自编程能力。
51成本低廉,使用方便,适合与本系统的温度检测与控制。
综上分析,我们采用了第二个方案,即采用AT89C51单片机作为主控制芯片。
2.2.2显示模块的选择
方案一:
采用LCD1602液晶显示。
LCD128X64是一种具有2线或3线串行、4位/8位并行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块简单、灵活的接口方式和方便的操作指令,可构成全中文人机交互图形界面。
可以显示8×4行16×16点阵的汉字.图形显示也可相应被完成,低电压低功耗是其又一显著特点。
由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论显示程序或硬件电路结构都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
因此本系统采用1602液晶作为显示方案。
方案二:
采用LED点阵屏作为显示器件。
LED点阵模块指的是利用封装8*8的模块组合点元板形成模块,而LED模组应用中一般指两类产品:
一种是用插灯或表贴封装做成的单元板,常用户外门头单红屏、户外全彩屏,室内全彩屏等;另外,用做夜间装饰的发光字串也被称为LED模组。
LED点阵指用封装8*8的模块,再组合成单元板,这样的单元板称为点阵点元板,一般用于室内单色,双色显示屏用。
LED点阵显示模块可显示汉字、图形、动画及英文字符等;显示方式有静态、横向滚动、垂直滚动和翻页显示等。
单块模块控制驱动12块(最多可控制24块)8X8点阵,共16X48点阵(或32X48点阵),是单块MAX7219(或PS7219、HD7279、ZLG7289及8279等类似LED显示驱动模块)的12倍(或24倍)!
可采用“级联”的方式组成任意点阵大显示屏。
显示效果好,但是功耗高,成本高,安装麻烦,故不采用此方法。
综上分析,我们采用了第一个方案,即用LCD1602液晶显示信息。
2.2.3电源电路的选择
方案一:
采用USB供电
电脑的电源是通过电脑适配器将220VAC转换成了12VDC直流,电脑USB接口可以提供稳定的5V直流电压。
完全能够满足5V单片机系统的供电需要,并且电源稳定、即插即用,功耗低使用非常方便。
方案二:
自制直流稳压电源模块。
将插线板电源经过变压、整流、滤波、稳压后输出。
为系统提供稳定可靠的电源。
自制电源会增加硬件成本,同时高压转抵押也带来不稳定等因素,因此不采用此方法。
由于自制电源电路各个环节均能达到很好的要求,同时自由度很大,能满足系统的所有要求,且成本低廉,因此我们选择了方案一。
2.2.4键盘输入电路的选泽
方案一:
采用独立按键电路输入
独立按键结构简单使用它方便,只需要单片机IO口和地跨接即可,当按下按键时候单片机IO口电压被拉低,单片机就可以检测到此电压的变化,一次来判断是否有按键按下。
但缺点是占用较多的IO口资源。
本系统需要几个按键,因此此方法可行。
方案二:
采用4*4矩阵键盘模块。
为了解决键盘中按键数量较多的情况,减少I/O口的占用是有效措施,通常采取的办法是将按键排列成矩阵形式,如图1所示。
在矩阵式键盘中,通过一个按键加以连接每条水平线和垂直线的交叉处。
这样,4*4=16个按键就可以被一个端口(如P1口)构成,比键盘直接用端口线多出了一倍,并且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。
由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。
综上,我们选择方案一。
2.2.5数据通信模块的选择
方案一:
采用PT2262/PT2272传输数据信息
PT2262/PT2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/PT2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。
编码芯片PT2262发出的编码信号由:
地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。
当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,因此315MHz的高频发射电路不工作,按键被按下时,PT2262得电工作,经调制的串行数据信号被其第17脚输出,当17脚为高电平期间,315MHz的高频发射电路起振,等幅高频信号随之被发射,当17脚为低平期间,315MHz的高频发射电路停止振荡,所以PT2262的17脚输出的数字信号完全控制高频发射电路,因此对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。
PT2262/2272虽然是属于无线发射和接受芯片。
但属于硬解码。
不利于传输大量数据,因此不适合本系统设计。
方案二:
采用NRF2401无线模块传输数据。
NRF2401芯片,这种单片射频收发芯片,工作频段为2.4~2.5GHzISM,内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,程序可配置输出功率和通信频道。
芯片能耗十分低,以-5dBm的功率发射时,10.5mA是其工作电流,18mA是其接收时的工作电流,多种低功率工作模式,更方便的节能设计。
基于DuoCeiverTM技术,nRF2401可以使用同一天线,可以同时接收两个不同频道的数据。
nRF2401适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控开锁、遥控玩具等。
NRF2401通常用来传输大量的数据信息。
且数据传输距离远。
综上,NRF2401具有良好的数据传输能力。
我们选择方案二。
3系统的硬件设计
本设计采用AT89C51单片机作为控制芯片,通过独立按键实现对A\B两队比分的加1分、2分、3分,减1分,倒计时开始、暂停,清零等公能。
同时系统还通过蜂鸣器实现比赛24秒倒计时警告。
3.1单片机最小系统设计
单片机最小系统是整个系统的核心控制部分,以AT89C51单片机为核心,配以外围电路:
时钟电路、上点复位电路、电源电路构成。
主要完成数据的采集处理和转换。
MCS-51系列单片机是美国Intel公司在1980年继MCS--48系列8位单片机之后推出的高档8位单片机,此单片机凭其稳定的性能、高性价比以及良好的兼容,在各个领域得到了最为广泛的应用,也是我国目前应用最广的单片机系列。
在性能和功能方面,MCS--51单片机大大优于MCS--48单片机。
MCS-51系列有多种机型可供用户选择。
3.1.1单片机内部结构
MCS--51系列单片机最早的典型代表为8051,87581,8031,由于其型号和生产厂商的不同,在片内存储器容量、中断系统、外围功能模块、最高时钟频率以及处理器速度等方面有很大的不同,但它们的指令系统完全兼容,硬件系统的基本结构也相同。
MCS--51的典型产品有8031,8051,8751.8051内部有4KBROM,8071内部有4KBEPROM,8031片内无ROM;初此之外,三者的内部结构及引脚完全相同。
在单片机芯片的内部,其基本结构的构成是通用CPU加上外围芯片的模式,内部主要由9个部件通过单一总线连接而成。
内部总体结构如图3.1所示,从图中可以看出,这9个主要部件是:
1个8位的中央处理器(包括ALU,ACC,TMP1,TMP2,B寄存器,PSW及相应的定时和控制逻辑),4KB/8KB程序寄存器(ROM/EPROM),128B/256B的数据寄存器(RAM),32条I/O接口线(图中P0.0~P0.7,P1.0~P1.7,P2.0~P2.7,P3.0~P3.7),中断控制逻辑(具有5个中断源,2个中断优先级),定时器控制逻辑(具有2个可编程定时器/计数器),串行接口控制逻辑(具有可工作于多处理机通信,I/O接口扩展或全双工通用异步接收发送器的串行接口),21个专用寄存器(包括程序计数器PC、堆栈指针寄存器SP、程序状态字存器PSW、数据指针寄存器DPTR等)以及片内振荡器和时钟电路(由OSC及相关电路组成)。
3.1.2复位电路
单片机的复位分为上电自动复位和按钮手动复位两种。
上电复位电路:
由22uf电解电容和10K电阻构成。
原理是瞬间上电,电容充电,电流最大,电容相当于短路,RST端为高电平,自动复位;电容两端的电压达到电源电压时,电容充电电流为零,电容相当于开路,RST端为低电平,程序正常运行。
按键手动复位电路:
电路由按键、10K电阻、1K电阻、22uf构成。
原理是首先经过上电复位,当按键被按下时,RST直接与VCC相连,为高电平形成复位,同时短路的电解电容放电;按键松开时,由于VCC的作用,电容被充电,充电电流在电阻上,RST电平不变,仍然是复位,充电完成后,电容相当于开路,RST为低电平,正常工作。
这里我们采用上电复位来实现,电路图如图3.1.2所示:
图3.1.2复位电路
3.1.3时钟电路设计
时钟电路用于产生单片机所需要的时钟信号,单片机在时钟信号的控制下各部件之间同步协调工作。
根据产生的方式不同,分为内部和外部两种时钟电路。
在MCS-51芯片内部有一个高增益反相放大器用于构成振荡器,芯片引脚XTAL1为其输入端,芯片引脚XTAL2为其输出端。
而在芯片的外部,XTAL1和XTAL2之间跨接微调电容和晶体振荡器,从而构成一个稳定的自激振荡器,在引脚XTAL1和XTAL2上输出3V左右的正弦波,这就是单片机的振荡电路,如图3.1.3所示。
图3.1.3系统时钟电路
通常,电容C1和C2取30pf左右,主要作用是帮助振荡器起振,晶体的振荡频率范围是1.2~12MHz。
晶体振荡频率高,则系统的时钟频率也高,单片机运行速度也就快。
在通常应用情况下,MCS-51使用振荡频率为6MHz或12MHz。
在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,应当引入唯一的公用外部脉冲信号作为各单片机的振荡脉冲。
这是,外部的脉冲信号时经过XTAL2引脚注入,其连接如图3.5所示,由于XTAL2端逻辑电