别人的开题报告之类东西设计_第1页
别人的开题报告之类东西设计_第2页
别人的开题报告之类东西设计_第3页
别人的开题报告之类东西设计_第4页
别人的开题报告之类东西设计_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

在篮球比赛中,计时计分系统是必不可少的。本设计是以基本篮球规则为依据,主要在篮球比赛中用于记录整个赛程的比赛时间和显示甲、乙两队在比赛过程中的比分情况本系统是采用单片机AT89C51作为本设计的元件,利用LCD1602液晶显示作为显示器件对篮球比赛实现实时控制。此计时计分系统不仅具有软件设定比赛总时间并实现总时间的倒计时以及一个24秒倒计时功能,而且实现了比赛双方的记分功能。该系统采用按键操作、LCD液晶显示,通过程序调试,最终达到了软件和硬件的良好结合。该设计采用模块化的设计,程序结构简单,任务明确,具有价格低廉,性能稳定,操作方便并且易于携带等特点,广泛适合各类学校或小型团体作为比赛计时计分之用。:单片机计时器记分Inthebasketballgame,timingandscoringsystemisessential.Thedesignisbasedonbasicbasketballrules,mainlyinthebasketballgameisusedtorecordtheraceofthegame,anddisytheAandBteamsscoreduringthegame.Thissystemisbysinglechip puterAT89C51asthecorecomponentofthisdesign,usetheLCD1602disydeviceasreal-timecontrolofthegameofbasketball.Thistimescoringsystemnotonlyhasthesoftwaretosetthetotaltimeofthegameandrealizethetotaltimethecountdownanda24-secondcountdownfunction,andrealizethegameofbothteamsscoringfunction.Thesystemuseabuttonoperation,LCDdisy,anddebugsoftwareandhardware,andultimayachieveagoodcombinationofsoftwareandhardware.Thedesignusesthemodulardesign,programstructureissimple,thetaskclear,inexpensive,stableperformance,easyoperationeasytocarry,andawiderangesuitableforalltypesofschoolsorsmallgroupsasthegametimewithscoringpoints.:single 前言 绪论 研究背景及意 设计任务及要 系统设计方案选 显示模块的选 计时方案的选 本章小 系统硬件设 系统设计概 系统硬件简 系统软件设 软件介 系统软件框 系统调 检测调 系统功能的实 结论 参考文 致谢 附录 附录1:原理 附录2:程 前言单片机把我们带入了智能化的电子领域,许多繁琐的系统若由单片机进行设计,便能收到电路更简单、功能更齐全的良好效果。若把经典的电子系统当作一个僵死的电子系统,那么智能化的现代电子系统则是一个具有“生命”的电子系统。而随着技术的进步,单片机与串口通信的结合地应用到各个电子系统中已成一种趋势。单片机具有体积小、功能强、应用面广等优点,目前正以前所未见的速度取代着传统电子线路构成的经典系统,蚕食着传统数字电路与模拟电路固有的领地。同时,一个学习与应用单片机的新正在大规模地兴起。本设计是由一种由单片机AT89C51编程控制LCD1602液晶显示做显示的篮球比赛计时计分系统。此计时计分系统不仅具有软件设定比赛总时间并实现总时间的倒计时以及一个24秒倒计时功能。它具有价格低廉、性能稳定、操作方便且易携带等特点、广泛适合各类学校和小团体作为篮球比赛计时计分的用途。本设计就是基于单片机设计时计分系统使计时计分系统有了更完善的功能。单片机系统的硬件结构给予了篮球计分器系统“身躯”,而单片机的应用程序赋予了其新的“生命”,使其在传统的篮球计时计分器面前具有电路简单、成本低、运行可靠等特色。绪论研究背景及意义、相应的计时计分系统也必须随之改进。篮球计时计分系统是一个负责篮球比赛的和分配的系统,它负责对比赛结果、成绩信息处理、传输分配,即将篮球比赛比分数据通过的技术接口分别传送给裁判员员、计算机信息系统和现场观众等。由于比赛的不可重复性,决定了篮球计时计分系统是一个实时性很强、可靠性要求极高的电子服务系统,所以计时计分设备是篮球比赛中不可缺少的电子设备,计时计分系统设计是否合理,关系到比赛系统运行的稳定和可靠,并直接影响到比赛的顺利进行。、通过此次基于单片机设计的篮球计时计分系统,我们可以更方便、快捷地了解篮球比赛的当前信息,并对篮球比赛的时间和比分做出更准确的记录。同时我们可以更清楚详细的了解单片机程序设计的基本指令功能、编程步骤和技巧来讲述单片机编程,并对AT89C51单片机的结构和原理进行讲述,以及基于单片机开发应用的相关的工作原理并且可以在将来的工作和学习中加以应用。设计任务及要求设计并制作一个用于赛场的篮球比赛的计时计分系统,记录台能、调节。要求:比赛采用倒计时方式,计时系统能够完成篮球比赛的所有计时及显示要求。比分显示范围为0999分,足够满足篮球比赛的计分要求。能设置甲、乙两队在整场比赛中的比分。根据篮球比赛规则,进攻方在24秒之内必须有一次投篮动作,否则视为违例,因此本设计当进攻方24秒内没有进行投篮动作,比赛暂停,提示违例。当每节比赛及全场比赛结束后会有自动及灯光提示。以上功能的加入更加贴近实际生活中的篮球比赛,使本设计更具有实用性,适合各类学校或小型团体作为比赛计时计分之用。系统设计方案选择显示模块的选择方案一:采用数码管LED显示,LED显示器是由发光二极管构成的LED数码管、LED点阵显示器等。LED发光器件一般常用的有两类:数码管和点阵。方案二:采用液晶电路来显示,LCD1602是工业字符型液晶,能够同时显示16x02即32个字符。对以上两个方案加以比较,可以发现LED虽然使用简单,但是显示内容有限,显示效果不是很直观,硬件连接电路较为复杂,而且稳定性不高;而LCD1602连接线路简单,显示内容丰富,易于硬件电路实现,可靠性较好。综上所述:显示模块采用第二种方案,采用LCD1602来实现本设计的显示功能。计时方案的选择方案一:采用74LS192(十进制同步加/减计数器、NE555(秒脉冲发生器)以及辅助电路等组成。设计中秒脉冲发生器是采用555集成电路组成的多谐振荡器构成,通过计算来产生比较准确的1秒脉冲。译码显示电路用CD4511和共阴极七段LED数码管组成,电路在实验中用发光二极管代替。该方案能较准确的显示比赛时间和比分,但是有众多的不足。例如:电路中用到的较多,无法简化设计方案。方案二:采用计时,针对计算机系统对计时的要求,各大厂家推出了键时钟/倒计时/正计时各种,可采用自动控制计时,通过触发控制电路使计时器自动地计时,达到预定时间后重新开始计时(实现倒计时功能;也可以通过触发控制电路使计时器不计时,达到预定时间后重新开始计时(实现暂停功能,不需要程序干预。计算机可通过中断或查询方式计时器数据,实现计时的暂停的功能,并进行显示,计时功能的实现就无需占用CPU的时间,程序简单,控制精度高,因此在工业控制系统中多采用这一类来实现计时功能。方案三:软件控制,利用AT89C51内部的定时器/计数器进行中断定时,配合软件延时实现计时。该方案节省硬件成本,并且可综合运用定时器/计数器、中断以及程序设计的知识,因此本系统采用方案三软件方法来实现计时。本章小结体育比赛计分系统是对体育比赛过程中所产生的时间,比分等数据进行快速记录,加工处理,传递利用的信息系统。根据不同运动项目的不同比赛规则要求,体育比赛的计时计分系统包括测量类,评分类,命中类,制胜类,得分类等多种类型。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时系统是一种得分类型的系统。篮球比赛的计时系统由计时器等多种电子设备组成,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现高比赛现场感,表演观众等功能目标。由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,能力强和使用方便等独特的优点,使单片机迅速得到了推广应用,目前已经成为测量控制应用系统中的优选机种和新电子产品的关键部件。世界各大电气厂家,测控技术企业,机电行业,竞相把单片机应用于产品更新,作为实现数字化,智能化的部件。篮球计时计分器就是以单片机为的计时计分系统。随着单片机在各个领域的广泛应用,许多用单片机作控制的篮球比赛计时计分系统也应时产生。通过以上方案的选择对比,本设计最终选择由AT89C51编程控制LCD液晶显示器作球赛计时计分系统具有比赛定时设置、比赛时间暂停、性能稳定、操作方便且易携带等特点。由于篮球比赛现场设备关联设备较多且移动不便,故本次设计的内容相对简便,程序结构简单,操作方便并且易于携带,仅适合各类学校或小型团体作为比赛计时计分以及学习之用。系统硬件设计系统设计概述本系统采用ATMEL公司AT98C51单片机作为本设计的元件,利用LCD1602液晶显示器作为显示器件。由计时计分模块、显示模块、人机接口模块、模块等部分组成。其中比赛时间倒计时和24秒进攻倒计时分别采用单片机AT89C51的定时器1和定时器2人机接口模块由键盘和LCD1602液晶组成,可实现比赛时间、24秒倒计时设置和显示、比分显示和比赛节数显示等功能。在此设计中接入LCD1602液晶显示器,显示的内容分为两行,其中第一行用于计录主、客两队的比分,且显示器显示两队的比分的显示范围可达到0~999分,足够满足篮球比赛的要求。另外LCD1602液晶显示器的第二行则用来24秒的秒钟显示。赛程计时采用倒计时方式,即比赛前将时间设置好,比赛开始时启动计时,直到计时到零为至。比赛赛程分成4节,每节比赛12分钟,完全满足实际赛程的需要。其次,为了配合计时器和计分器校正、调整时间和比分,我们在设计中设立了8个按键。其中4个按键用于甲、乙两队的分数加减;另外4个按键则用于完成复位重新开赛、节控制、24秒回表和开始计时的功能。此系统中还设计了定警系统,即比赛时间到时,立即通过扬声器发出声,并且伴有灯光提示,提示整个比赛结束。加减设定分数显示基于单片机系统的篮球计时计分器的系统构成框图如图1所示。加减设定分数显示24S回秒24S回秒时间显示开始暂停声音提示图1系统构成框图开始暂停声音提示整个篮球比赛计时计分器的工作过程如下:首先在比赛之前,接通电源,系统自动复位,此时计时电路与计分电路中的LCD1602显示器上全部显示为:H.T(主队比分)R.T(客队比分)12:00(时间倒计)SEG-1(节数)24(24秒倒计)一切比赛前的准备就绪,等待比赛开始,当裁判吹响开始哨声时,立即按下开始计时按键启动计时,这时计时电路便开始工作,比赛时间计时采用倒计时方式,即从分秒减到分秒表示一节结束,每节结束时,蜂鸣器会发出提示音响声,通知每节已经结束,在开始按键启动计时的同时24秒的倒计时也同时进行倒计,当比赛出现特殊情况需要24秒回表时,可按下24秒回表键即可完成24秒回表。比赛时间与24秒有连锁效应,即比赛时间暂停,24秒暂停;每节剩余最后24秒时,24秒显示和时间相等。比赛进行过程中我们可以通过按键进行主队、客队的比分设置,根据篮球比赛的基本规则,按照场上队员的得分数进行按键操作,若在此过程中,有操作或裁判判罚的特殊情况,还可以通过减分按键进行相应的操作。当每节比赛和全场比赛结束时会有相应的按键提示音,并且伴有指示灯提示。系统硬件简述系统硬件部分组成系统硬件主要是由单片机AT89C51、显示电路、电路和按键开关四个部分组成。系统器件的选择本系统在设计过程中主要选取了以下一些器件单片机:提示音:5V蜂鸣器显示器件:LCD1602液晶显示屏 键:独立式按键单片机AT89C51介绍本课题中用到的就是AT系列中的AT89C51单片机AT89C51是一个低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的Flash只读程序器和128bytes的随机存取数据器,器件采用ATMEL公司的高密度、非易失性技术生产,兼容标准MCS-51指令系统,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。AT89C51PDIP、PQFP/TQFPPLCC等三种封装形式,以适应不同产品的需求。它是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,216位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以编程。其将通用的微处理器和Flash器结合在一起,特别是可反复擦写的Flash器可有效地降低开发成本。AT89C51的主要特性1AT89C51功能参数兼容MCS—51指令系 4k可反复擦写(>1000次)Flash32个双向I/O口 可编程UARL通道两个16位可编程定时/计数 全静态操作0-1个串行中 128x8bit内部两个外部中断 共6个中断源可直接驱动 3级加密位低功耗空闲和掉电模 软件设置睡眠和唤醒功AT89C51的引脚AT89C51单片机内部总线是单总线结构,即数据总线和地址总线是公用的。89C5140条引脚,与其他系列单片机引脚是兼容的。这40条引脚可分I/O接口线、电源线、控制线、外接晶体线4部分。89C51单片机为双列直插式结构,如图2所示为AT89C51单片机的引脚分配。电源线89C51单片机的电源线有以下两种:VCC:+5V电源线GND:接地线89C51单片机的外接晶体引脚:XTAL1:片内振荡器反相放大器的输入端和内部时钟工作的输入端。采用内部振荡器时,它接外部石英晶体和微调电容的一个引脚。XTAL2:片内振荡器反相放大器的输出端,接外部石英晶体和微调电容的另一端。采用外部振荡器时,该引脚悬空。图289C51引脚分配图控制线89C51单片机的控制线有以下几种:RST:复位输入端,高电平有效。ALE/PROG:地址锁存允许/编程线。PSEN:外部程序器的读选通线EA/Vpp:片外ROM允许端/编程电源端I/O接口组成(32根I/O接口线)及功能:P0接口:P0接口有8条接口线(P0.0—0.7,其中P0.0为低位,P0.7为高位。每条线的结构组成如图3所示。它由一个输出锁存器、两个三态缓冲器、输出驱动电路和输出控制电路组成。P0接口是一个三态双向I/O接口,它有两种不同功,用于不同的工作环境。单片机AT89C51的结构图3是89C51单片机的内部结构示意图。它包含了作为微型计算机所必需的基本功能部件,各功能部件通过片内单一总线连成一个整体,集成在一块芯片上。时钟电时钟电定时/记数并行接串行接中断系P0 P2 INT0图389C51单片机内部结构图AT89C51单片机是在一块中集成了CPU、器(包括RAM和ROM)、定时器/计数器和多种功能的I/O线等一台计算机所需要的基本功能部件。主要包括1个8位CPU、1个片内振荡器及时钟电路、128BRAM、4KBROM、2个16位定时器/32条可编程的I/O线和一个可编程的全双工串行接口、5个中断源、2个中断优先级嵌套中断结构。(1)处理器CPU是单片机内部的部件,是一个8位二进制数的处理单元,主要由运算器、控制器和寄存器阵列构成。①运算器:运算器用来完成算术运算、逻辑运算、位变量处理和数据传送等功能,它是8051内部处理各种信息的主要部件。运算器主要由算术逻辑单元(ALU)、累加器(ACC)、暂存寄存器(TMP1、TMP2)、寄存器B和程序状态字寄存器(PSW)组成。②算术逻辑单元(ALU):89C51中ALU由加法器和一个布尔处理器组成。主要是实现8位数据的加、减、乘、除算术运算和与、或、异或、循环、求反等逻辑运算;布尔处理器主要用来处理操作。它是以进位标志位C为累加器的,可执行置位、复位、取反、等于1转移、等于0转移、等于1转移且清0以及进位标志位与其他位寻址的位之间进行数据传送等位操作,也能使进位标志位与其他可位寻址的位之间进行逻辑与、或操作。③累加器(ACC):用来存放参与算术运算和逻辑运算的一个操作数或运算的结果。在运算时将一个操作数经暂存器送至ALU,与另一个来自暂存器的操作数在ALU中进行运算,运算后的结果又送回累加器A。89C51单片机在结构上是以累加器A为中心,大部分指令的执行都要通过累加器A进行。④暂存寄存器(TMP1、TMP2):用来存放参与算术运算和逻辑运算的另一种操作数,它对用户不开放。⑤寄存器B:在乘、除运算时用来存放一个操作数,也用来存放运算后的一部分结果,在不进行乘、除运算时,可以作为通用的寄存器使用。⑥程序状态字寄存器(PSW):PSW是一个8位标志寄存器,用来存放ALU操作结果特征和处理状态。这些特征和状态可以作为控制程序转移的条件,供程序校验和查寻。如表2所示。表2PSW各位定义位编号位定义P位地址进位标志位CY表示累加器A在加减运算过程中其最ACC.7有无进位或借位。辅助进位标志位ACC:表示累加器A在加减运算时低4位(ACC.3)有无高4位(ACC.4)进位或借位。用户标志位F0、F1:是用户定义的两个状态标志位,根据需要可以用软件来使它置位或清除。寄存器选择位RS1、RS0:89C51共有4组,每组8个工作寄存器R0—R7。编程时用于存放数据或地址。但每组工作寄存器在内部RAM中的物理地RS1和RS0的4种状态组合就是用来确定4组工作寄存器的实际物理地址的。RS1、RS0状态与工作寄存器R0—R7的物理地址关系如表3所示。表工作寄存器组R0—R7的物理地址工作寄存器组号R0—R7的物理地址00000H—01108H—10210H—11318H—溢出标志位OV:当执行算术指令时,由硬件自动置位或。表示累加器A的溢出状态,主要用来表示带符号数加、减运算溢出与否。可用双高位法进行溢出判别,当次D6向最D7有进位,而最D7无进位;或者当次D6向最D7无进位,而最D7有进位,则表示发生溢出,OV=1;否则清0。乘法和除法也会影响OV标志。当乘法的积>255时,OV=1,表示积超过8OV=0OV=1表示除数为0OV=0,除法可以正常进行。奇偶标志位P:用于指示累加器A中1的个数的奇偶性,若1的个数为奇数,则P=1;若1的个数为偶数,则P=0。此标志对串行通信的数据传输非常有用,通过奇偶校验传输的可靠性。(2)控制器控制器是单片机内部各部件按一定时序协调工作的控制是分析和执行指令的部件。控制器主要由程序计数器PC、指令寄存器IR、指令译ID、振荡和定时控制逻辑电路等构成。程序计数器PC是专门用于存放下一条将要执行指令的16位地址的一个部件,由8位计数器PCH(高8位)和PCL(低8位)组成。CPU就是根据PC中的地址到ROM中去程序指令码和数据。指令寄存器IR用于存放CPU根据PC地址从ROM中的指令操作码,并送给ID。指令译ID是用于分析指令操作的部件,指令操作码经译码后送至定时控制电路,产生一定序时的脉冲信号,来执行指令规定的操作。振荡器及定时控制逻辑电路,在它们外接石英晶体和微调电容(2—30pF)后,即可产生1.2—12MHz的脉冲信号,作为89C51工作的基本节拍。寄存器阵列:寄存器阵列是单片机内部的临时单元或固定用途单元,包括通用寄存器组和寄存器组。。通用寄存器组用来存放过渡性的数据和地址,提高CPU的运行速度寄存器组主要用来指示当前要执行指令的内存地址,存放特定的操作数,指示指令运行的状态等。。(3)AT89C51单片机内部有128B的RAM数据器和4B的掩膜式ROM,当不够使用时,可分别扩展为64KB外部RAM器和64KB外部程序器。它们的逻辑空间是分开的,并有各自的寻址机构和寻址方式。这种结构的单片机称为哈佛型结构单片机。程序器是可读不可写的,用于存放编好的程序和表格常数数据器是既可读也可写的,用于存放运算的中间结果,进行数据暂存及数据缓冲等。I/O接口89C51单片机对外部电路进行控制或交换信息都是通过I/O片机的I/O接口分为并行I/O接口和串行I/O接口,它们的结构和作用并不相同。并行I/O接口:89C51有4个8位并行双向I/O接口(P0接口、P1接口、P2接口和P3接口),每一条I/O线都能独立地用作输入或输出。P0接口为三态双向口,能带8个LSTTLP1P2接口和P3接口为准双向接口(在用作输入线时,接口锁存器必须先写入“1)4个LSTTL电路。串行I/O接口:89C51有一个全双工的可编程串行I/O接口,实现单片机与其他数据设备之间的串行数据传递。该串行接口的功能较强,既可作为全双工异步通讯收发器使用,也可作为同步移位器使用。定时器/计数器秒信号经秒、分计数器后分别得到“秒”个位、十位,“分”个位、十位的计时输出信号,然后输出到译码显示电路。“秒”计数器应为60进制,而“时”计数器可为大于等于40的任意进制。①六十进制计数器可以由两块MSI计数器构成,一块十进制,一块六进制,组合起来就构成六十进制计数器。可提供的MSI计数器有T213、T217、74LS90、74LS190、74LS192、74LS160等,读者可任选。40的任意进制计数器由两块MSI计数器构成,低位是十进制,可为大于等于四的任意进制。③由篮球比赛的特点,计时器也可以设计成计距离比赛结束的时间,因种方案需用减法计数器。89C51内部有2个16位可编程定时器/计数器,简称为定时器0(T0)和定时器1(T1),T0和T1分别由两个8位寄存器构成,其中T0由TH0(高8位)和TL0(低8位)构成,T1由TH1(高8位)和TL1(低8位)构成。TH0、TL0、TH1、TL1都是SFR中的特殊功能寄存器。T0和T1在定时器控制寄存器TCON和定时器方式选择寄存器TMOD的控制下(TCON、TMOD为特殊功能寄存器),可工作在定时器模式或计数器模式下,每种模式下又有不同的工作方式。当定时或计数溢出时还可申请中断。中断控制系统单片机中的中断是指CPU暂停正在执行的原程序转而为中断源服务(执行中断服务程序),在执行完中断服务程序后再回到原程序继续执行。中断系统是指能够处理上述中断过程的部分电路。89C51单片机设有5个中断源(外中断2个,定时/计数中断2个,串行中断1个),二级优先级,可实现两极中断嵌套。内部总线、总线是用于传送信息的公共途径。总线可分为数据总线、地址总线、控制总线。单片机内的CPU器、I/O接口等单元部件都是通过总线连接到一起的。采用总线结构可以减少信息传送线的根数,提高系统可靠性,增强系统灵活性。、3.复位电路单片机在开机时或在工作中因干扰而使程序失控,或工作中程序处于某种死循环状态在这种情况下都需要复位复位的作用是使处理器CPU以及其他功能部件都恢复到一个确定的初始状态,并从这个状态重新开始工作。89C51单片机的复位靠外部电路实现,信号由RESET(RST)平有效,在振荡器工作时,只要保持RST引脚高电平两个机器周期,单片机即复位。复位后,PC程序计数器的内容为0000H,其他特殊功能寄存器的复位状态如图4所示。片内RAM中内容不变。复位电路一般有上电复位、手动开关复位和自动复位电路3种,如图4所示。图4单片机复位电路根据系统设计的方案,本设计最终选择了手动开关复位电路,即图4中的第二个电路图。图5单片机AT89C51最小系统显示部分硬件的设计本设计采用LCD1602实现显示功能,160216字符×2行的字符型LCD显示器,它由32个字符点阵块组成,每个字符点阵块由5×75×10个点阵组成,可以显示ASCII码表中的所有可视的字符。它内置了字符产生器ROM(CGROM)RAM(CGRAM)和显示数据RA(DDRAM1602液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。1602LCDRAM地址映射及标准字库表,液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在,哪里显示字符。主要技术参数:

61602的内部显示地址显示容量16×2个字符工作电压4.5—5.5V工作电流2.0mA(5.0V),模块最佳工作电压:5.0V,字符尺寸:2.95×4.35(W×H)mm。引脚功能说明:41602LCD14(无背光)16(带背光)接口,各引脚接口说明编号符号引脚说明编号符号引脚说明1电源地9数据2电源正极数据3液晶显示偏压数据4数据/命令选择数据5读/写选择数据6E使能信号数据7数据背光源正极8数据背光源负极1脚:VSS为地电源。2脚:VDD5V正电源。3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RSR/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。7~14脚:D0~D78位双向数据线。第15脚:背光源正极。16脚:背光源负极。LCD1602基本操作时序:对此液晶操作主要有以下几种方法:写命令(包括但不限于初始化、调节显示位置、清除显示写数据(把一个字符的ASCII码写入液晶使其显示读忙信号(液晶乃低速设备,每次操作前应该测试忙信号,确定其不忙时再操作)5LCD1602基本操作时序读状 输 输 D0~D7=状态字写指 输

RS=L,R/W=L,D0~D7=指令码,E=高脉冲

输 读数 输 输 D0~D7=数据写数 输

RS=H,R/W=L,D0~D7=数据,E=高脉冲

输 LCD1602的指令码(命令码此液晶上电的时候需要初始化,典型的指令码是38H,也就是上电的时候需要调用voidwrite_cmd(unsignedcharcommand这个函数写指令码,用法是write_cmd(0x38);执行完这个函数可以把液晶初始化成16x2显示5x7的点阵8位总线接口。它的读写操作、屏幕和光标的操作都是通过指令编程来实现的(说明:1为高电平、0为低电平LCD指令见表1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置I/D:光标移动方向,高电平右移,低电平左移S:屏幕上所有文字是否左移或者右移。高电平表示有效低电平则无效。4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:控制光标的开与关,高电平表示有光标,低电平表示无光标B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。6液晶LCD1602指令清楚显示0000000001光标返回000000001*置输入模式00000001S显示开关显示0000001DCB光标和字符移位000001**置功能00001NF**置字符发生寄存器地址0001字符发生置数据器器地001显示数据器地读忙标志或地址CGRAM01计数器 要写的数据CGRAM读数

读出的数据5:光标或显示移位S/C:高电平时移动显示的文字,低电平时移动光标。6:功能设置命令DL:高电平时为4位总线,低电平时为8位总线N:低电平时为单行显示,高电平时双行显示F:低电平时显示5x7的点阵字符高电时显示5x10的点阵字符。7:字符发生器RAM地址设置。指令8:DDRAM地址设置。9:读忙信号和光标地址BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。10:写数据。11:读数据。液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。3.2.4电路设

7显示模块原理图蜂鸣器是一种结构的电子讯响器,采用直流电压供电,广泛应用于器、设备、机、定时器等电子产品中作器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。本次设计采用的是电磁式蜂鸣器作为器。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、膜片以及外壳等组成。接通电源后,振荡器产生的音频信号通过电磁线圈,使得电磁线圈产生了一个磁场振动膜片在电磁线圈和磁铁的相互作用下周期性的振动。操作程序进行计分时,每当按键时都有按键的提示音;进攻方在24秒之,内必须有一次投篮动作,否则视为违例,因此本设计当进攻方24秒内没有进行投篮动作时器会有声响提示;在每节比赛结束后蜂鸣器会发出间断报警;全程比赛 束之后,蜂鸣,会自动发出连 警报声用以醒比赛结束。图8电路原理图独立式按键介绍键盘电路键盘在单片机应用系统中,实现输入数据、传送命令的功能,是人工干预的主要。键盘分两大类:编码键盘和非编码键盘。键盘是实现人机的必要设备,用户可用键盘向计算机输入数据或命令。本系统采用非编码独立式键盘。非编码键盘按组成结构又可分为独立式键盘和矩阵式键盘。独立式键盘的工作过程与矩阵式键盘类似,无论是硬件结构还是软件设计都比较简单,矩阵式键盘的特点:电路连接复杂,但提高了I/O口利用率,软件编程较复杂。适用于需使用大量按键的场合。由于本次设计有足够空余端口,且为了降低编程时的复杂性,采用的是独I/O线,当按键数量较多时,I/O口利用率不高,但程序编制简单。适用于所需按键较少的场合。独立式键盘的接口电路及编程独立式键盘的接口电路:在单片机应用系统中,有时只需要几个简单的按键向系统输入信息。这时,可将每个按键直接接在一根I/O接口线上,这种连接方式的键盘称为独立式键盘。每个独立按键单独占有一根I/O接口线,每根I/O接口线的工作状态不会影响到其他I/O接口线。这种按键接口电路配置灵活,硬件结构简单,但每个按键必须占用一根I/O线,I/O接口线浪费较大。故只在按键数量不多时采用这种按键电路。在此电路中,按键输入都采用低电平有效。上拉电阻保证了按键断开时,I/O接口线有确定的高电平。当I/O接口内部有上拉电阻时,外电路可以不配置上拉电阻。独立式键盘的编程:独立式键盘的编程常采用查询式结构。先逐位查询每根I/O接口线的输入状态,如某一根I/O接口线输入为低电平,则可确认该I/O接口线所对应的按键已按下,然后,再转向该键的功能处理程序。按键功能介绍K1键:实现对主队加1分的功能;K2键:实现对主队减1分的功能;K3键:实现对客队加1分的功能;K4键:实现对客队减1分的功能;K5键:实现复位并重新开赛的功能;K6键:实现对比赛节控制的功能;K7键:实现对比赛的24秒重置的功能;K8键:实现对比赛的开始计时的功能;9按键显示原理图系统软件设计软件介绍单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境将这些部份组合在一起。系统概述KeilC51是KeilSoftware公司的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧C51开发系统各部分功能和使用。KeilC51单片机软件开发系统的整体结构C51工具包的整体结构,如图(1)所示,其中uVision与Is分别是C51forWindowsforDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试dScope51tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。系统软件框图本系统软件采用模块化设计方法。整个系统由初始化模块、倒计时模块、液晶显示模块以及键盘模块组成程序流程图如图10所示:图10系统主程序流程图此设计由按键控制系统的开始,当系统开始时,由单片机控制开始进行每12分钟的倒计时,当比赛出现犯规或其它要求请求暂停时,由按键控制比赛暂停,此时,时间暂停,当出现24秒违例时,系统自动暂停计时,并发出;比赛比分的加减完全有按键控制;另外,当比赛每节结束和半场结束后后,自动暂停并有声音提示。当全场比赛结束后,倒计时停止,器。此设计的功能完全符合现实中的篮球比赛的计时计分要求,设计更加合理。系统调试检测调试硬件方面主要是对电路板焊接技术以及布线的整体把握,电路板做好后,经过对单片机烧写程序、调试等一系列工序,硬件达到了预期的效果,各个按键均能实现其预期功能。这个电路是在老师的指导下设计的,电路的设计在理论上完全行得通,不过接线是设计中最关键的一步,我的接线原则是从全局出发,逐个模块连接调试,最后总体调试。在这个指导思想下,我的安装还算是是成功的。逐个模块接线再调试,可以为总体调试省去很多时间,只要每个模块正常运行,几个模块通过地址总线连接之后,就不会出现太大的问题了。调试前的直观检查:1、连线是否正确,在通电之前应先检查一下电路的连线是否正确,包括错线,少线和多线的情况。查找的方法有:按照电路图检查安装的线路,这种方法的特点是,根据电路图来确定,按一定的顺序逐一检查安装好的线路,由此,可容易查出错线和少线的情况,还有法就是按照实际的线路来对照原理电路进行查线,这是一种以元件为中心进行查线的方法。把每个元件引脚的连线一次查清,检查每个接线处在电路图上是否存在,这种方法不但可以查出错线和少线,还容易查处多线的情况。2、元器件安装时情况检查元、器件引脚之间有无短路;连接处有无接触不良;二极管和电容极性等是否连接有误。3、电源、信号源连接是否正确。4、电源端对地是否存在短路,在通电前,断开一根电源线,用万用表检查电源对地端是否存在短路。系统功能的实现一场正规的篮球赛分为412分钟。打开电源,此时上显示:H.T(主队比分) R.T(客队比分)12:00(时间倒计 SEG-1(节数 24(24秒倒计)(1)比赛加分:当按下键盘第一行键值为“1”、“2”的键时,对应的分别为11分。同样,当按下键盘“3”、“4”的按键时,对应的分别为客11分。开始:键值为“8”的键为比赛开始计时按钮,按下“8”键之后,比赛时24秒将以倒计时的方式呈现。对比赛的24秒重置:键值为“7”的键为对犯规的24秒重置按钮,按下“7”键后,比赛时间24秒倒计时复位。设置比赛节数:键值为“6”的键为比赛节数设置键,按下“6”键后,比赛将进入下一节,可根据比赛进程自行设置。复位:“5”为复位键,按下可以实现复位。复位后,LCD1602显示初始状态。结论、本次设计叙述了篮球计时计分器的基本原理及使用方法,给出了一种篮球计时计分器的设计方案。利用单片机程序设计原理,来实现篮球计时计分器的各项功能。此次设计的篮球计时计分器,电路简单,而且易懂,使操作使用者使用非常方便,成本较低,灵敏可靠,计录准确,连接简单,具有非常高的使用价值。设计内容包括计时器、计分器、比分显示等部分,可以使参加比赛的成员、裁判和观众一目了然的看到所有参加者的成绩,以最快的速度评出结果。本设计由AT89C51编程控制LCD1602液晶显示器作球赛计时计分系统具有赛程定时设置、赛程时间暂停、性能稳定、操作方便且易携带等特点。可广泛适合各类学校和小团体作为赛程计时计分。、参考文献[1].单片机原理及应用[M].西安:西安电子科技大学.2007.[2]李刚,林凌.新概念单片机[M].: 崔华,蔡炎光.单片机实用技术[M]. 张迎辉,贡雪梅.单片机实训[M]. 胡汉.单片机原理及其接术学习辅导与实践[M].:出版社.2003.:邮徐惠民,安德宁.单片微型计算机原理、接口及应用.第二版:邮电大学Morimoto,M,Sato,S.;Sumito,K.;Oshitani,K.;Single-chip controloftheinverter[M].IEEE.1989.[8]S.J.Cahill.Thesingle 彭为黄科雷道仲单片机典型系统设计实例精讲北京:电子工业出版彭介华.电子技术课程设计指导[M].:高等教育李东生.Pro99SE电路设计技术与应用.第一版.:电子工业王福瑞.单片微机测控系统设计大全[M].:航空航天大学康华光.电子技术基础(模拟部分)(第四版).:高等教育.1999.[14]夏路易,石宗义.电路原理图与电路板设计[M].希望电子JohnH.Comtois,M.Michalicek,CaroleCraigBarton.BasiccircuitsofOperationalamplifiers.Circuitysis:TheoryandPractice,1997.ShuJiangLi,ChengJunLin,YunLongChang.InligentControlofSpotWeldingInverterBasedonSingleChip puter[M].2000..用单片机控制字符型液晶显示器TC1602A[N].电子报.单片机的C语言应用程序设计[M].:航空航天大学DeSalvoB,GhibaudoG.PananakakisGetal.Experimentalandtheoreticalinvestigat.ionofnonvolatilememorydata-retention.IEEETransElectronDevices,KeilSoftware.Cx51ComplierUser‘sGuide.KeilSoftware,致谢短暂几个月的毕业设计即将结束,在此,我首先感谢我的母校,在我们即将步入社会工作岗位之际为我提供了这样一个良好的学习知识与动手操作的机会,并为我提供了先进实验设备。通过本次毕业设计我受益匪浅,不仅使我对学过的相关知识得到了进一步的巩固和提高,通过阅读相关专业书籍掌握了一些以前未了解的知识;同时也熟悉了很多的硬件设备,更重要的是使我在学习和掌握这些知识的同时,能够在思维上得到提高和升华,在分析问题和解决问题的能力上得到培养和提高。这次毕业设计使我完善了知识结构、拓宽了知识面,开阔了眼界、提高了对各科知识综合应用的能力;同时也锻炼和培养了我的基本素质,它使我更加耐心、谨慎、细致。这段时间的学习和进步首先离不开的是我的指导教师老师在这次毕业设计期间,指导老师给予了我耐心的辅导和热情的帮助。对于一些疑难问题老师更是很有耐心、不厌其烦的给予解答,并且在百忙之中对本 进行了仔细的审阅,提出了极为宝贵的修改意见和建议,保证了 的质量。使我在毕业之际为学校交上了一份满意的答卷在此对老师表示衷心的感谢和崇高的敬意同时也感谢电气系的及各的老师给予我很大的支持和帮助。为我提供实验设备、实验仪器,同时也感谢那些曾经帮助过我的老师。他们不惜牺牲个人时间帮助我调试电路,为我解决了许多疑难问题,并提出宝贵意见和建议,因为有各位老师的细心指导,才使我的毕业设计能顺利完成。应该说我的每一次进步都凝聚着老师们的汗水,再一次感谢给予我关心和帮助的所有老师。设计虽小,但凝聚了老师们的一份爱心。谨此对各位老师和同学表示衷心的感谢。附录1:原理图

蜂鸣器提示灯LCD1602液晶显示

电源指示

123456789123456789

10k

3938373635343332

+C2

X2

P33P32P35P349P37P36

T0

212223242526272810113029

篮球计时计分器按键时钟电

51单片机最小系2:程序 //头文件sbitHup=P2^7;sbitHdown=P2^5;sbitRup=P2^3;sbitRdown=P2^1;sbitclc=P2^6;sbitseg=P2^4;sbitback24sec=P2^2;sbitbeginStop=P2^0;sbitFM=P0^0;//蜂鸣器接口sbitLed=P0^7;charsec,min,num,time,sec_24s;uinthpoint,rpoint;voiddelay(int{intx;uchary;for(x=z;x>0;x--for(y=110;y>0;y--}/***初始化程序***/voidinit(void){ 1 //开总中断 //开定时器1 //定时器1不工作hpoint=0;//H.T分数初始化rpoint=0;//R.T分数初始化}/***LCD分数更新voidpoint_lcd(ucharadd,uchar{}/***按键检测***/void{/*分数的操作开始*/ //分数加一 //松手检测{if(hpoint=={}} //分数加一 //松手检测{//hpoint--if(hpoint--<={}} //分数加一 //松手检测{if(rpoint--<={}} //分数加一 //松手检测{if(rpoint=={}} //分数加一 //松手检测{if(num=={}} //分数加一 //松手检测{} //分数加一 //松手检测{TR1=~TR1;} //分数加一 //松手检测{}}/***比赛倒计时/24s倒计时(同步)***/voidcounter_down(void){ 1s倒计时做减一操作{ //24s3s{}{sec_24s=}if((sec==0)&&(min==0))//检测一节比赛是否结束{dis 1 //24s计时复位 //倒计时复位 //每节结束蜂鸣器发出8s{} //终场结束,蜂鸣器发出10s的连续警报声{ }}if(sec==-{}}}/***主程序***/voidmain(){{diskeyscan();//分数按键检测}}/***1voidtimer1()interrupt //定时器120{ //倒计时}#include"lcd1602.h"#include"string.h"#defineLCM_Data#defineBusy0x80//用于检测LCMBusyexterncharsec,min,num,time,sec_24s;externuinthpoint,rpoint;sbitLCM_RW=P3^1;//定义引脚sbitLCM_RS=P3^0;sbitLCM_E=sbitBp=P0^0;//蜂鸣器接口sbitLed=P0^7;//写数据voidWriteDataLCM(unsignedchar{ReadStatusLCM();//检测忙LCM_Data=WDLCM;LCM_RS=LCM_RW=LCM_E=0;//若晶振速度太高可以在这后加小的延时LCM_E=0;//延时LCM_E=1;}//写指令 mandLCM(unsignedcharWCLCM,BuysC)//BuysC0时忽略忙检测{if(BuysC)ReadStatusLCM();//根据需要检测忙LCM_Data=LCM_RS=LCM_RW=LCM_E=LCM_E=LCM_E=}//读数据/*unsignedchar{LCM_RS=LCM_RW=LCM_E=LCM_E=LCM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论