lcd1602篮球比赛计时计分器论文学士学位论文.docx
《lcd1602篮球比赛计时计分器论文学士学位论文.docx》由会员分享,可在线阅读,更多相关《lcd1602篮球比赛计时计分器论文学士学位论文.docx(30页珍藏版)》请在冰豆网上搜索。
lcd1602篮球比赛计时计分器论文学士学位论文
本科毕业设计
题目LCD1602篮球比赛计时计分器
学院管理科学与工程学院
专业电子信息工程
摘要
本课题设计采用单片机AT89C51为核心,设计出篮球计分计时系统,可以实现单节比赛12分钟倒计时、24秒进攻时间倒计时、开始/暂停倒计时、改变节次、单节结束报警、两队比分分别加1分、加2分、加3分等各种显示效果。
本系统利用LCD1602液晶显示器作为显示器件,显示节次、12分钟倒计时、24秒倒计时、主客队双方比分,通过3*3矩阵键盘来控制计时器和计数器工作,单节比赛结束时LED发光二极管闪烁报警。
该设计采用LCD1602液晶显示器,因为其微功耗、小体积、使用灵活等诸多优点在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用,通过仿真基本上实现了上述功能,操作简单,性能稳定,符合一般篮球计分器的工作要求。
关键词:
AT89C51;矩阵键盘;LCD1602;计数器;计时器
Abstract
ThisdesignprojectusingAT89C51microcontrollerasthecore,designbasketballscoringtimingsystem,countdowntoasinglegameof12minutes,24secondsshotclockcountdown,start/pauseandchangethesection,asingleendalarm,theteamswere,respectively,add1point,2points,plus3gradingavarietyofdisplay.
ThissystemusestheLCD1602LCDmonitorasadisplay,DisplaySession,12minutes24secondsofthecountdown,countdowntothemainvisitingteamscoreby3*3matrixkeyboardtocontrolthetimerandcounter,LEDblinkswhenasingleendofthegamealarm.
ThedesignusesLCD1602LCDdisplaytogetmoreandmorewidelyinthepocket-sizedinstrumentandlow-powerapplicationsbecauseofitsmicro-power,smallsize,theuseofflexibleandmanyotheradvantagesthroughsimulationbasicallyrealizetheabovefunctions,theoperationsimple,stableperformance,inlinewiththegeneralbasketballscoringrequirements.
Keyword:
AT89C51;MatrixKeyboard;LCD1602;Counter;Timer
目录
1引言1
1.1本课题选取的目的及意义1
1.2本系统的主要研究内容2
2系统分析3
2.1系统构成3
2.2系统工作原理3
3系统硬件设计4
3.1系统硬件总体设计4
3.2AT89C51单片机5
3.2.1AT89C51简介5
3.2.2主要特性6
3.2.3管脚说明7
3.2.4芯片擦出9
3.2.5空闲节电模式9
3.2.6掉电模式10
3.2.7程序储存器的加密11
3.2.8AT89C51的极限参数11
3.3LCD1602液晶显示模块11
3.3.1显示器介绍11
3.43*3矩阵键盘模块15
3.5时钟电路模块16
3.6复位电路模块17
3.7元件清单17
4系统软件设计18
5ProtuesISIS软件仿真22
5.1Proteus运行流程22
5.2Proteus功能仿真22
5.3Proteus仿真结果23
6结论24
参考文献25
致谢26
附录27
1引言
进入21世纪,伴随着电子、信息技术的应用与迅速普及,人们对电子技术的要求越来越高。
当今社会,科学技术日新月异,时代前进的步伐越迈越宽,应用自动化设备,计算机处理,现代化通讯,数字化信息,现代化显示设备等高新技术而建立的现代化智能。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
通过此次基于单片机设计的篮球计时计分系统,我们可以更清楚详细的了解单片机程序设计的基本指令功能、编程步骤和技巧来讲述单片机编程,并对AT89S51单片机的结构和原理进行讲述,以及基于单片机开发应用的相关芯片的工作原理,和相关外围电路的设计和调试过程进一步了解,有助于今后的工作和学习生活。
1.1本课题选取的目的及意义
体育比赛计时计分系统是对体育比赛过程中所产生的时间,比分等数据信息进行快速采集记录、加工处理、传递和利用的系统。
根据运动项目的不同,比赛规则要求也不同,体育比赛的计时计分系统包括测量类,评分类,命中类,制胜类和得分类等多种类型。
篮球比赛是根据运动队员在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统。
篮球比赛的计时计分系统由计时器、计分器等多种电子设备组成的,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时计分系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现激烈的比赛现场感和表演娱乐等功能目标。
由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特的优点,使单片机迅速得到了推广应用,目前已经成为测量控制应用系统中的优选机种和新电子产品的关键部位。
世界各大电气厂家,测控技术企业,机电行业,竞相把单片机应用于产品更新,作为实现数字化,智能化的核心部件。
篮球计时计分器就是以单片机为核心的计时计分系统,由计时器,计分器,综合控制器和24秒控制器等组成。
1.2本系统的主要研究内容
随着单片机在各个领域的广泛应用,许多用单片机做控制的球赛计时计分系统也应运而产生,如用单片机控制LCD液晶显示器计时计分器,用单片机控制LED七段显示器计时计分器等。
篮球比赛计时计分器是为了解决篮球比赛时计分与计时准确的问题。
此装置利用单片机AT89C51完成了计时和计分的功能。
本文详细地介绍了系统硬件与软件的设计过程,采用该装置可根据实际情况进行比分修改和时间的准确显示,具有低功耗,可靠性,安全性以及低成本等特点。
本次设计用由AT89C51编程控制LCD作显示的球赛计时计分系统。
该系统具有赛程时间倒计时、暂停,及时刷新甲、乙双方的成绩等功能。
它具有价格低廉,性能稳定,操作方便并且易于携带等特点。
广泛适合各类学校或者小型团体作为赛程计时计分。
通过本次基于C51系列篮球计时计分器的设计,可以了解、熟悉有关单片机开发设计的过程,并加深对单片机的理解和应用以及掌握单片机与外围接口的一些方法和技巧,这主要表现在以下一些方面:
(1)篮球赛计时计分系统包含了8051系列单片机的最小应用系统的构成,同时在此基础上扩展了一些使用性强的外围接口。
(2)可以了解到LCD显示器的结构、工作原理以及这种显示器的接口实例与具体连接与编程方法。
(3)怎样利用串行口来扩展显示接口等。
2系统分析
2.1系统构成
图2.1系统构成框图
本系统的基本电路模块有:
51单片机控制模块,时钟电路模块,复位电路模块,3*3矩阵键盘电路模块,LCD显示电路模块。
2.2系统工作原理
打开proteus仿真电路图,按下软件下方的“开始”图标,启动系统,再按下矩阵键盘上第一行第一列的“开始”按键,系统开始工作,这时,LCD1602液晶显示器依次从上到下分别显示“1”、“12:
00”、“24”、“A:
000—B:
000”,分别表示“第1节”、“每一节的比赛时间12分钟倒计时”、“每一队的进攻时间倒计时24秒”、“A和B两队的比分”。
当按下第一行第二列的“暂停”键时,两个倒计时都暂停,再按下“开始”按键,倒计时继续进行,当第一节比赛结束时,12分钟倒计时和24秒倒计时到0,这是LED发光二极管快速地闪烁几次,这时按下第一行第三列的“改变节次”按键,节次加1,到第二节,依次可以显示第1节到第4节。
LCD1602液晶显示器中下一行的A队与B队的比分可以通过矩阵键盘第二行第三行的6个按键分别控制,依次为A队加1分、A队加2分、A队加3分、B队加1分、B队加2分、B队加3分。
通过以上操作,从而实现篮球计时计分器的基本操作。
3系统硬件设计
3.1系统硬件总体设计
图3.1系统整体电路图
将设计的通信系统硬件进行模块化设计,主要由以下模块构成:
A:
AT89C51单片机最小系统,控制的核心部件;
B:
3*3矩阵键盘电路;
C:
LCD1602液晶显示电路;
D:
LED发光二极管报警电路;
E:
复位电路;
F:
时钟电路。
3.2AT89C51单片机
3.2.1AT89C51简介
MCS51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了很多品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。
INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的。
本课题中用到的芯片就是AT系列中的AT89C51单片机芯片。
AT89C51是一个低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。
AT89C51具有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。
它是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
如图所示,图3.2为AT89C51单片机基本构造,其基本性能介绍如下:
图3.2AT89C51引脚图
AT89C51本身内含40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中端口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
3.2.2主要特性
AT89C51的主要特性如下表所示:
兼容MCS—51指令系统
4k可反复擦写(>1000次)FlashROM
32个双向I/O口
可编程UARL通道
两个16位可编程定时/计数器
全静态操作0-24MHz
1个串行中断
128x8bit内部RAM
两个外部中断源
共6个中断源
可直接驱动LED
3级加密位
低功耗空闲和掉电模式
软件设置睡眠和唤醒功能
表3.1AT89C51主要功能描述
3.2.3管脚说明
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
表3-2AT89C51特殊功能表:
端口引脚
第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
/INT0(外部中断0)
P3.3
/INT1(外部中断1)
P3.4
T0(记时器0外部输入)
P3.5
T1(记时器1外部输入)
P3.6
/WR(外部数据存储器写选通)
P3.7
/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
3.2.4芯片擦出
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。
在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。
在闲置模式下,CPU停止工作。
但RAM,定时器,计数器,串口和中断系统仍在工作。
在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
3.2.5空闲节电模式
AT89C51有两种可用软件编程的省电模式,它们是空闲模式和掉电工作模式。
这两种方式是控制专用寄存器PCON(电源控制寄存器)中的PD(PCON.1)
和IDL(PCON.0)位来实现的。
PD是掉电模式,当PD=1时,激活掉电工作模式,单片机进入掉电工作状态,IDL是空闲等待状态,当IDL=1时,激活空闲工作模式,单片机进入睡眠状态,如需同时进入两种工作模式,即PD和IDL同时为1,则先激活掉电工作模式。
在空闲工作模式状态,CPU保持睡眠状态而所有片内的外设仍保持激活状态,这种方式由软件产生。
此时,片内RAM和所有特殊功能寄存器的内容保持不变。
空闲模式可由任何允许的中断请求或者硬件复位终止。
终止空闲工作模式的方法有两种
其一是任何一条被允许中断的事件被激活,IDL(PCON.0)被硬件清除,即刻终止空闲工作模式。
程序会首先响应中断,进入中断服务程序,执行完中断服务程序并紧随RETI(中断返回)指令后,下一条要执行的指令就是使单片机进入空闲模式那条指令后面的一条指令。
其二是通过硬件复位也可以将空闲工作模式终止。
需要注意的是,当由硬件复位来终止空闲工作模式时,CPU通常是从激活模式那条指令的下一条指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期(24个时钟周期)有效,在这种情况下,内部禁止CPU访问片内RAM,而允许访问其他端口。
为了避免对端口产生意外写入,激活空闲模式的那条指令的后一条指令不应是一条对端口或者外部存储器的写入指令。
3.2.6掉电模式
在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。
推出掉电模式的唯一方法是硬件复位。
复位后将重新定义全部特殊功能寄存器但不改变RAM中的内容,在VCC恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重新启动并且稳定的工作。
空闲和掉电模式外部引脚状态如表2-3所示:
表3-3外部引脚状态表
模式
空闲模式
空闲模式
掉电模式
掉电模式
程序存储器
内部
外部
内部
外部
ALE
1
1
0
0
/PROG
1
1
0
0
P0
数据
浮空
数据
浮空
P1
数据
数据
数据
数据
P2
数据
数据
数据
数据
P3
浮空
浮空
数据
数据
3.2.7程序储存器的加密
AT89C51可使用对芯片上的三个加密位LB1、LB2、LB3[2]进行编程(P)或者不进行编程(U)。
当加密位LB1被编程时,在复位期间,EA断的逻辑电平被采样并锁存,如果单片机上电后一直没有服位,则锁存起的初始值是一个随机数,这个随机数会保存到真正复位为止。
3.2.8AT89C51的极限参数
表3-4极限参数表
工作温度
-55°Cto+125°C
储藏温度
-65°Cto+150°C
任一引脚对地电压
-1.0Vto+7.0V
最高工作电压
6.0V
直流输出电流
15.0mA
3.3LCD1602液晶显示模块
3.3.1显示器介绍
显示器是最常用的输出设备,其种类繁多,但在单片机系统设计中最常用的是发光二极管显示器(LED)和液晶显示器(LCD)两种。
由于这两种显示器结构简单,价格便宜,接口容易实现,因而得到广泛的应用。
发光二极管LED,组成的显示屏,每个点都是一个或多个发光二极管,通过控制电路控制二极管的亮与灭来控制点的发光,从而使整个大屏幕显示图案。
液晶显示器LCD最常见的就是TFT类型的,它是由光源,液晶光栅,和控制芯片组成,他的光源是常亮的白色强光,当光线通过液晶光栅(液晶屏)的时候,通过电压改变液晶颗粒滤光方向,从而改变每个点的颜色和强度来显示图案。
液晶显示器分很多种类,按显示方式可分为段式,行点阵式和全点阵式。
段式与数码管类似,行点阵式一般是英文字符,全点阵式可显示任何信息,如汉字、图形、图表等。
两者之间的区别:
(1)二极本身发光,液晶本身不发光,只是透射光。
(2)二极管体积大,图像质量一般,适合作室外大屏幕,价格较低。
液晶成本较高,面积无法做得很大,但图像质量很好,适合做显示器。
(3)二极管耗电大,液晶耗电小。
(4)二极管图像刷新率低,液晶的高。
二者的档次相差比较大,一般来讲在一些图像简单,对成本控制较严格的场合,用二极管,比如商场、银行等服务部门的电子提示窗,街道、百货公司外面的广告宣传窗;而液晶一般都是作计算机显示器、电视、手持设备等对图像质量要求高的场合。
下面介绍LCD1602液晶显示的结构、工作原理及其接口电路。
市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。
字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,本设计采用LM016L同时显示16x02即32个字符(16列2行),各引脚功能定义如下表所示:
管脚号
名称
电平
功能描述
1
VSS
0V
电源地
2
VDD
5.0V
电源正极
3
VEE
—
液晶显示偏压信号
4
RS
H/L
H:
数据线上为数据信号,L:
数据线上为指令信号
5
RW
H/L
H:
读数据模式,L:
写数据信号
6
E
H/L
使能信号端
7~14
DB0~DB7
H/L
数据线
表3-5LM016L引脚说明表
HD44780内置了DDRAM、CGROM和CGRAM。
DDRAM就是显示数据RAM,用来寄存待显示的字符代码。
共80个字节,其地址和屏幕的对应关系如下表:
显示位置
1
2
3
4
5
6
7
…
40
DDRAM
地址
第一行
00H
01H
02H
03H
04H
05H
06H
…
27H
第二行
40H
41H
42H
43H
44H
45H
46H
…
67H
表3-6DDRAM地址与屏幕对应关系
要在LCD1602屏幕的第一行第一列显示一个"A"字,就要向DDRAM的00H地址写入“A”字的代码就行了。
但具体的写入是要按LCD模块的指令格式来进行的。
在1602中我们就用前16个就行了。
第二行也一样用前16个地址。
对应如下:
00H
01H
02H
03H