毕业设计篮球赛计时记分器设计.doc
篮球赛计时计分器设计院 系自动化学院专 业自动化班 级 学 号 姓 名 指导教师 负责教师 2008年6月摘 要体育比赛中的计时计分系统是对体育比赛过程中所产生的时间、比分等数据信息进行快速采集、加工处理、传递和利用的系统。此系统能否清晰、稳定、精确的反应体育比赛中的客观数据,直接影响到比赛的公平性和公正性。本文针对上述情况研制了篮球赛计时计分器。该系统以单片机为核心,利用7段共阴LED作为显示器件。为了调整比赛中的时间和比分,在本设计中设立了8个按键,分别用于记录甲、乙两队的分数,设置赛程时间,调整赛程时间,启动和暂停赛程时间等功能,本系统还设计了定时报警系统。实践证明,该系统精度高、稳定性好、抗干扰性强,具有一定的应用前景。关键词:计时器;计分器;单片机;LED显示AbstractThe system of time and score recorded in the sporting games is the one like this: the data about time and socres that generated in the process of the games can be collected rapidly, processed, transmited and be used. If the system can reflect the objective data in the games clearly, stably and accurately, it will affect the fairness and impartiality of the games. According to this, calculagraph and scores recorder of the basketball games are researched and designed in this paper. The core of the system is the MCU, using seven segments LED as the display. In order to adjusting the time and the scores of the game, eight keys are used in this paper. The functions of these keys are: recording the scores of the team A and B, setting up or adjusting the time of the game, and starting or suspending the time of the game. The timing alarm system is also designed in the system. Experiments has proved that the system has high precision, good stability, strong anti-interference and it have a application prospects.Key words: calculagraph;scores recorder; MCU; LED display目 录第1章 绪 论11.1 课题背景11.1.1 篮球赛计时计分器发展过程21.1.2 篮球赛计时计分器研究目的与意义21.2 课题任务及要求31.3 课题内容及安排3第2章 篮球赛计时计分器的总体方案论证42.1 篮球赛计时计分器的硬件方案论证42.2 篮球赛计时计分器的软件方案论证52.3 篮球赛计时计分器部分器件方案论证62.3.1 硬件译码与软件译码的比较72.3.2 CD4511与MC14495的比较8第3章 篮球赛计时计分器的硬件设计113.1 球赛计时计分器的工作原理113.2 计时电路的设计113.2.1 计时电路的工作原理123.2.2 赛程时间设置133.2.3 赛程时间启/停设置143.3 计分电路的设计143.3.1 计分电路的工作原理143.3.2 比分交换控制的实现143.3.3 比分刷新控制器143.3.4 比分校正控制电路163.4 报警电路设计163.5 单片机的选择173.6 显示电路的设计183.7 复位电路的设计20第4章 篮球赛计时计分器的软件设计224.1 监控程序设计224.2 计时显示子程序设计234.3 计分显示子程序设计254.4 LED显示子程序设计27第5章 篮球赛计时计分器的整体调试295.1 调试分析295.2 故障调试及解决方式305.3 联调结果32结 论35社会经济效益分析37参考文献38致 谢40附录 篮球赛计时计分器的硬件原理图41附录 程序清单41附录 元器件清单55第1章 绪 论在我们生活的大千世界上,人类已进入了科学技术空前发展的信息社会。在这个瞬息万变的信息社会里,随着大规模集成电路、计算机技术的迅速发展,以及人工智能在测试技术方面的广泛应用,传统电子测量仪器在原理、功能、精度及自动化水平等方面都发生了巨大的变化,逐步形成了一种完全突破传统概念的新一代的仪器智能仪器。目前,大多数传统的电子仪器已有相应换代的智能仪器产品,而且还出现了不少全新的仪器类型,使现代电子仪器发生了根本性的变化。1.1 课题背景体育比赛计时计分系统是对体育比赛过程中所产生的时间,比分等数据信息进行快速采集记录、加工处理、传递和利用的系统。根据运动项目的不同,比赛规则要求也不同,体育比赛的计时计分系统包括测量类,评分类,命中类,制胜类和得分类等多种类型。篮球比赛是根据运动队员在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统。篮球比赛的计时计分系统由计时器、计分器等多种电子设备组成的,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时计分系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现激烈的比赛现场感和表演娱乐等功能目标。由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特的优点,使单片机迅速得到了推广应用,目前已经成为测量控制应用系统中的优选机种和新电子产品的关键部位。世界各大电气厂家,测控技术企业,机电行业,竞相把单片机应用于产品更新,作为实现数字化,智能化的核心部件。篮球计时计分器就是以单片机为核心的计时计分系统,由计时器,计分器,综合控制器和24秒控制器等组成。1.1.1 篮球赛计时计分器发展过程篮球是以投篮为中心的对抗性体育运动之一,1892年1月(另一种说法是1891年12月),为美国马萨诸塞州菲尔德基督教青年会训练学校教师詹姆士·奈斯密斯博士所创。为了完善篮球游戏,他在1892年制定了13条规则,后逐步修改和增加条款,出场人数也逐渐减少,直至规定每队5人,这才成为现代的篮球运动,同时伴随着篮球的出现,篮球赛计时计分器也应运而生了。起初,并没有正规的计时计分器,只有简单的比赛计时钟和记录板。1932年,刚诞生的国际篮联以美国大学使用的篮球规则为基础,制定了第一份世界统一的竞赛规则,同时篮球赛计时计分器也开始进入了电子时代 ,开始出现比赛计时钟、简单电路搭成的计分电路。供暂停时用的计秒表或适宜的(可见的)装置(不是比赛计时钟)。两个独立的、显然不同的和非常响亮的信号,记录表,队员犯规标志牌。80年代是高度、技术和速度同步发展时期,各国在重视发展高度的同时,电子技术也进入一个新的阶段,逐步形成了一种完全突破传统概念的新一代的仪器智能仪器。目前,大多数传统的电子仪器已有相应换代的智能仪器产品,同时以单片机为控制核心,智能器件也应用到了篮球赛场中。1.1.2 篮球赛计时计分器研究目的与意义经过多年的研究与生产实践,解决了篮球赛计时计分器稳定性能低、精确度低、体积笨拙等制造工艺上的难题。但是篮球赛计时计分器还不能广泛应用于各种场所,它的成本很高,一些中小型工厂、学校、企业还是延续手到计时和计分。采用单片机控制是这个系统按键操作使用简洁,LED显示,安装方便。解决了篮球比赛计数器的安装问题,节约了线材,适合在各种规模的体育场馆使用,完全可以代替传统的用钟表进行计时的方法,当然稍加改动也可以用于其他球类比赛,是体育器材向智能化发展的一个实例。虽然篮球比赛中很早就开始研究应用了电子计时计分器,但通常都是利用模拟电子器件、数字电子器件或是模拟、数字混合组成的, 其稳定性和高准确度计时计分仍存在一些问题。随着科学技术的发展和电子技术的不断更新,对其稳定和高准确度计时计分的实现至今仍是生产和科研的课题。工程技术的电子化、集成化和系统化促进了电子工程技术的发展,同时也促进了电子工程技术在社会各行业中的广泛应用。随着单片机在各个领域的广泛应用,许多单片机作控制的球赛计时计分系统也就应运产生,例如用单片机控制LCD液晶显示器的计时计分器,用单片机控制LED七段显示器的计时计分器等。同时单片机在此领域的广泛应用,也大大提高了比赛中计时计分器的稳定性和准确性。1.2 课题任务及要求本次设计的篮球赛计时计分器主要利用AT89C52单片机编程控制LED七段数码管作显示的球赛计时计分系统。本系统具有赛程定时设置;赛程时间暂停;及时刷新甲、乙两队双方的成绩;甲、乙双方交换场地;赛后成绩暂存以及24违例报警等功能。系统设计完成后应具有成本价格低廉、性能稳定、高准确度显示、操作方便且易携带等特点。广泛适合各类学校和小团体作为赛程计时计分。篮球赛计时计分器包含了89C52系列单片机的最小应用系统的构成,同时在此基础上扩展了一些实用性强的外围接口,进一步了解到LED显示器的结构、工作原理以及这种显示器的接口通信,学习利用串行口来扩展显示接口等。设计一个篮球赛计时计分器的系统。该系统具有以下功能:1 以AT89C52单片机为处理核心;2 LED数码管显示时间和比分;3 方便设置比赛中各个环节。1.3 课题内容及安排本文对篮球赛计时计分器的设计进行了详细的介绍,共分五章。第1章简要介绍了整个课题的研究背景、目的、意义及整个任务的要求安排;第2章是针对此次课题的任务进行方案论证,尤其指明了显示部分相应的处理方案,及其优劣取舍,之后还包含了硬件方案和软件方案分析;第3章具体介绍了篮球赛计时计分器的硬件设计,包括计时电路、计分电路、24秒违例报警电路以及比赛结束报警电路的设计等;第4章阐述了篮球赛计时计分器的软件设计,包括时间显示子程序,分数显示子程序,延时子程序的设计等。第5章是针对硬件调试、软件调试和整机联调的结果进行了具体的分析和说明。第2章 篮球赛计时计分器的总体方案论证篮球赛计时计分器的整体设计中最重要的部分是对篮球赛中的得分数据以及赛程时间处理后显示,虽然篮球比赛中很早就开始研究应用了电子计时计分器,但其稳定性和高准确度计时计分仍存在一些问题,随着科学技术的发展和电子技术的不断更新,对其稳定和高准确度计时计分的实现至今仍是生产和科研的课题。尤其是单片机已广泛应用在各个领域,计时计分器已经进入数字化,智能化时代。篮球赛计时计分器设计关键是必须考虑和解决在比赛过程中,对数据稳定、精确、客观的显示,能够抵抗各方面的干扰,给队员以及场内、场外的观众一个清晰,明了的结果,尤其对于参赛的队员特别重要,客观、清晰的显示赛场上的数据,直接影响队员的决策。为了解决上述问题,在所研制篮球赛计时计分器中采用软硬件结合的方式,使研制成的篮球赛计时计分器具有很好的稳定性及抗干扰性,且能保持较高的精确度,很符合需要。2.1 篮球赛计时计分器的硬件方案论证本系统采用单片机AT89C52作为核心元器件,利用7段共阴LED作为显示器件,分别用于显示比赛过程中的时间以及甲、乙两对的分数。赛程计时采用倒计时方式。即比赛前将时间设置好,比赛开始时启动计时,直至计时到零为止。其次,为了配合计时器和计分器校正、调整时间和比分,在本设计中特定设立了按键。分别用于刷新甲、乙两队的分数、设置赛程时间、调整赛程时间、启动赛程时间、暂停赛程时间以及刷新24秒违例显示时间等功能,使所设计的系统完全符合实际比赛中的需求。再次,本系统还设计了定时报警系统,即比赛时间结束时,立即通过扬声器发出报警声,提示整个赛程结束。而且,当24秒违例时同样也会发出报警,提示进攻方违例。系统硬件电路由以下几个部分组成:单片机AT89C52;计时电路;计分电路;报警电路;比赛进程显示电路;按键开关。其中计时电路完成赛程时间的设定,随时刷新的功能,系统硬件结构框图如图2.1所示。图2.1 篮球赛计时计分器的结构框图系统设计过程中采用单片机AT89C52作为核心元件,所以应该全面、深度掌握单片机的结构、特点以及它的工作原理,才能更好的发挥单片机的强大功能,完成本次毕业设计的任务要求。一个完整的计算机应该由运算器、控制器、存储器(ROM及RAM)和I/O接口组成。其结构框图如图2.2所示。图2.2 单片机结构框2.2 篮球赛计时计分器的软件方案论证软件是整个设计的关键所在,它可以使仪器的主要功能得以实现。而在软件设计方法中,结构化设计是使用最广泛的,最有效的,所以一般都采用模块化设计的思想进行程序设计。根据这一原则和毕业设计任务书的要求,本设计的软件部分主要包括:计时显示模块,计分显示模块,24秒违例显示模块,延时模块等几大模块。各程序以模块形式进行设计,独立成章,运行过程中可以调用执行,整个篮球赛计时计分器的软件流程图如图2.3所示。图2.3 主程序流程图2.3 篮球赛计时计分器部分器件方案论证在整体方案设计过程中,对方案的选择以及元器件的选择,往往会影响到,整个系统设计的成功与否。所以在方案论证中,这一环节不是可缺少的。2.3.1 硬件译码与软件译码的比较硬件译码即采用专用的带驱动器的LED段译码器,如CD4511,MC14495,74LS164等。在本次设计中,选用了CD4511为LED显示器的译码芯片,使用时只要将CD4511的输入与微机系统输出端口的某4个数据位相连,而CD4511的输出直接与LED的ag相接,便可实现对BCD码的显示。如图2.4所示为对1位BCD码的显示。图2.4 采用CD4511译码的1位LED显示电路图软件译码是在软件设计时,在数据段定义09共10个数字。在程序中利用查表指令MOVC指令进行软件译码。现假设用共阴极LED来显示数据,则可以用以下一段程序实现09的显示,与单片机接口图如图2.5所示。图2.5 1位动态LED显示器电路MOV R1,#0AHMOV R0,#00HBUF:MOV A,R0 MOV DPTR,#DATA MOVC A,A+DPTR MOV P1,A INC R0 DJNE R1,BUF SJMP NEXTDATA:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH通过上述比较,可以得出,硬件译码方案,简单,可实施性强,节省单片机的端口,而且不占用单片机内存。软件译码占用单片机端口配置较多,而且工作不稳定,所本设计选用硬件译码。2.3.2 CD4511与MC14495的比较CD4511为常用的四七段BCD码输入端;ag是7段码输出;为试灯脚;为消隐(灭灯);和接高电平(电源);LE端为选通脚,接低电平有效,当=0时LED数码管显示全亮笔段“8”字,可以检查数码管的质量好坏,有无笔段残缺现象。当=0时强迫显示器消隐;当LE=0时选通,LE=1时锁存。如图2.6所示为CD4511引脚分布图。图2.6 CD4511引脚分布图为了能够正确使用此芯片,必须了解它的内部逻辑关系,如表2.1为CD4511的逻辑功能表。MC14495芯片为BCD码七段16进制译码驱动芯片。如图2.7所示为Motorola公司生产的CMOSBCD七段16进制译码器芯片,它具有锁存、译码驱动等功能。它与CD4511主要区别是:它能对大于9的二进制数译码。即它可以用字母A,B,C,D,E,F来显示二进制数10,11,12,13,14,15,同时还有译码器输入大于等于10时的指表2.1 CD4511的逻辑功能表输入输出LEBILTDCBAabcdefg显示数字××0××××1111111B×01××××0000000011000011111100011000101100001011001011011012011001111110013011010001100114011010110110115011011000111116011011111000007011100011111118011100111100119011101000000000111011000000001111000000000011110100000000111110000000001111110000000011×××××××××××× 示端(h+1)。当输入数据大于10时,h+1端输出“1”电平。另外还有输入数据为15时,电路输出VCR为0电平(其他输入状态时为高阻)的功能。电路内部还有一个290的限流电阻。LE为选通端,电路中的锁存器在LED为0时输入数据,在LE=1时锁存数据。MC14495引脚分布如图2.7所示。图2.7 MC14495引脚分布图表2.2为MC14495的真值表,从表中可以看出,当显示数据大于等于10时,h+1端输高电平。表2.2 MC14495的真值表输入输出DCBAabcdefgh+1显示数字0000111111000000101100000100101101101020011111100103010001100110401011011011050110001111106011111000000710001111111081001111001109101011101111A101100111111B110010011101C110101111011D111010011111E111110001111F 通过上述比较,根据本设计的实际要求,四七段BCD码硬件译码芯片CD4511符合设计要求,且能完成译码任务,本设计选用CD4511译码芯片。第3章 篮球赛计时计分器的硬件设计硬件是整个篮球赛计时计分器设计的基础,怎样选择合适的器件来焊接整个电路十分关键,也是本章叙述的重点。除此之外,以下部分还会分别阐述所选器件的特性和原理,以及它们所能实现的功能。3.1 球赛计时计分器的工作原理整个篮球赛计时计分器的工作过程如下:首先在比赛之前,接通电源,系统自动复位,此时计时电路与计分电路中的共阴极数码管全部显示为0000、000 000和00;然后按计时电路中的K5、K6按键来设置比赛时间的十位数和个位数,时间设置好时,等待赛程开始,当裁判吹响开始哨声时,立即按K7键,启动计时,这时计时电路便工作,计时采用倒计时方式。上半场结束时,蜂鸣器会发出10秒钟响声,通知上半场,这时按一下K7键,便完成了甲、乙两队的分数交换。在整个赛程中,还要对两队比分进行及时刷新,这时通过计分电路中的K1K4键完成此功能,K1和K2键完成甲队加、减分,K3和K4键完成乙队加、减分。按键每按一下,表示加或减1分。由于加、减分本设计中采用中断完成,且加、减的中断优先权小于计时电路的中断优先权,所以不会对计时电路造成影响。如果在赛程过程中,一方教练申请暂停时,经裁判批准,立即按K7键,即可以暂停计时,暂停时间到时,再按K7键继续计时,直至上半场赛程结束,蜂鸣器会发出10秒的响声,下半场同上半场一样。3.2 计时电路的设计在此部分电路设计中,为了节省单片机的端口,采用了硬件译码芯片CD4511,可以实现稳定显示。选用单片机的P1口为控制4位LED的段选码;P2口的P2.0P2.3用于控制4位LED位选码。由于所有的段选码连在一起,所以同一瞬间只能显示同一种字符。但如果要显示不同字符,则要借助位选口来控制,本设计采用共阴显示,所以只要P2.0P2.3输出高电平即可。例如,现在要显示5678四个数字,则首先应该将“5”的显示代码(共阴LED的显示代码为6DH)由P1.0P1.3送出。然后P2.0P2.3输出相应位选码(共阴LED时P2.0P2.3输出1000)时,则可以看到在数码管1上的显示数字“5”。再将显示的数字“5”延时510ms,以造成视觉暂留效果;同时代码由P1.0P1.3送出。用同样的方法将其余3个数字“678”送数码管2、3、4显示,最后则可以在4位LED上看到“5678”四个数字。为了使显示效果稳定,可以使每个数码管显示的数字不断重复,当重复频率达到一定程度时,加之人眼视觉暂留作用,便可以看到相当稳定的“5678”四个数字。图3.1为模拟以上显示的过程图。图3.1 模拟显示5678的过程图3.2.1 计时电路的工作原理计时电路主要由按键开关K5K7,单片机AT89C52,译码器以及LED显示器构成。其工作过程如下:当调时(十位)开关K5按下时,产生一个低电平;立即数00H取出,同时对应调分(十位)控制端P2.0的LE输出高电平,表示此时可以向调分(十位)的CD4511发送数据,但CD4511的输出端ag不会有输出,因为LE=1时,CD4511锁存。这时只要将要显示数据的代码以P1口的P1.0 P1.3送到CD4511的输入端AD端,送完后,将LE清零。这时便可以将要显示数据的代码经CD4511译码后,从输出端ag输出,送LED显示器显示。时间设置完后,启动单片机内部定时器,开始定时计数。计时采用倒计时,比如:设置的时间为45分钟,则在LED上显示4500四位数。定时计数60秒后中断返回,继续定时计数下一个60秒;同时则在4位LED显示器上显示4459四位数,表示时间已过去1秒钟,即为44分59秒。这样一直持续下去。直到变为“0000”时表示赛程结束。如果比赛中,裁判叫暂停,则只要按一下K7键,即可暂停计时。计时电路的原理如图3.2所示:图3.2 计时电路的原理图3.2.2 赛程时间设置在图3.2所示的计时电路中,按键开关K5、K6用来设置赛程时间,每按一次,数字自动加1,直到调到需要设置的时间即时。例如:比赛时间上半场时间为20分钟,则通过按K5键,使数码管1显示“2”即可;再按K6键,设置比赛时间的个位数,使数码管2显示“0”即可。一般比赛时间为40分钟,所以只需要按K5键使数码管1显示“4”,按K6使数码管2显示“0”即可。时间设置好后,等待赛程开始。当比赛结束时,如果由于一些特殊原因需增加比赛时间,这时增加比赛时间同样由按键开关K5、K6用来设置,且方法跟上面一样,但一般情况下只需按K6设置即可。因为加赛时间只有几分钟。3.2.3 赛程时间启/停设置当时间设置完后,比如设置赛程时间为45分钟,则在图3.2所示的LED显示器上则显示为4500,45表示分钟,00表示秒钟。这时,如果裁判吹响开始哨声时,则应立即按下按键K7,表示赛程开始,计时显示则由4500变成4459,4458一直计为0000时表示赛程结束。如图3.2所示,按键K7为赛程启动和暂停控制。3.3 计分电路的设计8051系列单片机除了有4个8位并行口外,还有一个能同时进行串行发送和接收的全双工串行通信口。它能同时发送和接收数据,还能作为同步移位寄存器用。球赛计分电路正是利用了89C52单片机串行口可以外接串行输入并行输出移位寄存作为输出口来实现球赛比分刷新显示的。3.3.1 计分电路的工作原理计分电路主要由单片机AT89C52、串/并转换器、LED显示器、74LS21以及按键开关组成。其工作过程如下:按键开关K1K4组成甲、乙两队加减分控制。按键开关K1K4一端接地,另一端输入与门74LS21以及单片机AT89C52的P3.5、P3.4、P0.2、P0.1。当K1K4四个按键的任何一个按下时,与门的8脚输出都会产生低电平使单片机发生中断,同时与单片机相连的对应端口也会产生一个低电平,从而使相应LED显示,其工作原理如图3.3所示。3.3.2 比分交换控制的实现比分交换控制由图3.2所示的K7键完成。因为比分交换是在上半场赛程结束后进行的,也就是说比分交换受赛程时间控制,只有当上半场计时器指示为0000时,按K7键,则会自动交换甲、乙两队分数。如果上半场赛程时间没有到0000时,则此时按下K7键,只会暂停比赛,不能交换分数。如果要继续赛程,再按一次K7即可。因此,K7键完成三重功能,即:启动、暂停、比分交换。3.3.3 比分刷新控制器由于在比赛中,甲、乙两队的比分是不断变化的,所以需设置比分刷新控制装图3.3 计分电路原理图置;此部分功能由图3.3所示的计分电路中的按键K1K4完成:K1键:完成甲队加1分操作;K2键:完成甲队减1分操作;K3键:完成乙队加1分操作;K4键:完成乙队减1分操作。3.3.4 比分校正控制电路比分校正控制电路由四输入与门74LS21和4个按键组成,其中K1、K2键接74LS21的9、10脚,完成甲队加、减分控制;K3、K4键接74LS21的12、13脚,完成乙队加、减分控制。有关74LS21集成电路的引脚分布图及内部构造如图3.4所示。图3.4 74LS21引脚分布图74LS21芯片的主要控制引脚说明:·14脚为电源脚。·7脚接地。·1、2、4、5、9、10、12、13为与门输入脚。·6、8脚为与门输出脚。3.4 报警电路设计本设计采用压电蜂鸣器作为报警的音响器件,当P3.6输出高电平1时,7406的输出为低电平0,使压电蜂鸣器引线获得将近5V的直流电压,而产生蜂鸣音。当P3.6端输出低电平0时,7406的输出端升高到约5V,压电蜂鸣器两引线间的直流电压降至接近0V,发声停止。其工作原理如图3.5所示。图3.5 7406驱动报警电路当比赛结束时,系统会自动发出10秒钟报警声,提示赛程结束。3.5 单片机的选择单片机自从问世以来就一直是工业检测、控制应用的主角。市场上常用的单片机有Intel公司的MCS-51系列,日本松下公司的MN6800系列等。其中,MCS-51由于单片机应用系统具有体积小,可靠性高,功能强,价格低等特点,很容易作为产品进行生产而更受青睐。然而作为本系统的核心元件,选择哪一型号的MCS-51系列单片机显得尤为关键,下面就逐个进行比较:8031单片机片内不带程序存储器ROM,使用时需外接程序存储器和一片逻辑电路74LS373,外接的程序存储器多为EPROM的2764系列。用户若想对写入到EPROM中的程序进行修改,必须先用一种特殊的紫外线灯将其照射擦除,之后再可写入。写入到外接程序存储器的程序代码没什么保密性可言。8051单片机片内有4K ROM,无须外接存储器和74LS373,更能体现“单片”的简练。但是编的程序无法烧写到其ROM中,只有将程序交芯片厂代为烧写,并是一次性的,今后都不能改写其内容。8751单片机与8051单片机基本一样,但8751单片机片内有4K的EPROM,用户可以将自己编写的程序写入单片机的EPROM中进行现场实验与应用,EPROM的改写同样需要用紫外线照射一定时间擦除后再烧写。89C51单片机为EPROM型,在实际电路中可以直接互换8051单片机或8751单片机,不但和8051单片机指令,管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的。 89C52是一种低功耗高性能的具有8K字节可电气烧录及可擦除的程序ROM的八位CMOS单片机。该器件是用高密度、非易丢失存储技术制造并且与国际工业标准89C51单片机指令系统和引脚完全兼容。综上所述,从使用方便与简化电路以及其性价比等角度来考虑,89C52比较合适的。本系统采用CPU为89C52的单片微机,89C52本身带有8K的内存储器,可以在编程器上实现闪烁式的电擦写达几万次以上,比以往惯用的8031CPU外加EPROM为核心的单片机系统在硬件上具有更加简单、方便等优点,而且完全兼容MCS-51系列单片机的所有功能。89C52管脚图如图3.6所示,图3.6 89C52管脚图下面介绍89C52的主要管脚功能如下:VCC(40):电源+5V;VSS(20):接地;P0口(32-39):双向I/O口,既可作低8位地址和8位数据总线使用,也可作普通I/O口;P3口(10-17):多用途端口,既可作普通I/O口,也可按每位定义的第二功能操作;P2口(21-28):既可作高8位地址总线,也可作普通I/O口;P1口(1-8):准双向通用I/O口;RST(9):复位信号输入端;ALE/PROG:地址锁存信号输出端;PSEN:内外程序存储器选择线;XTAL1(19)和XTAL2(18):外接石英晶体振荡器。MCS-51的CPU可包括运算部件,控制器,程序状态字,B寄存器,累加器Acc(或A),位处理器等。3.6 显示电路的设计显示器是最常用的输出设备,其种类繁多,但在单片机系统设计中常用的是发光二极管显示器(LED)和液晶显示器(LCD)两种,由于这两种显示器结构简单,价格便宜,接口容易实现,因而得到广泛应用。下面介绍发光二极显示器(LED)的结构、工作原理及其接口电路。(1)LED结构与原理LED显示器又称为数码管,它主要由8段发光二极管组成,如图3.7(a)所示。图3.7(a)中,a g为数字或字符显示段,h段为小数点显示,通过a g为7个发光段的不同组合,可以显示09和AF共16个数字和字母。例如,当a、b、g、e、d段亮时,显示数字“2”,当a、f、e、g段亮时,则显示字母“F”。LED可以分为共阴极和共阳极两种结构,如图3.7(b)和(c)所示。图3.7 LED显示原理图其中图(b)为共阴极结构。即把8个发光二极管阴极连在一起。这时如果需要点亮a g中的任何一盏灯,则只需要在相应端输入高电平即可;输入低电平则截止。比如我们现在要显示数字“3”,则只要在对应的a、b、c、d、g段送入高电平,在其他端送入低电平即可,点亮为“3”。图(c)为共阳极结构。其显示端输入低电平有效,高电平截止。(2)LED显示器显示方式点亮LED显示器有两种方式:一是静态显示;二是动态显示。(本设计采用静态显示)。所谓静态显示,就是当显示器显示某一个字符时,相应的发光二极管恒定地导通或截止。如图3.8所示为4位静态LED显示器电路。该电路每一位可单独显示。只要在要显示的那位的段选线上保持段选码电平,该位就能保持显示相应的显示字符。这种电路的优点是:在同一瞬间可以显示不同的字符;但缺点就是占用端口资源较多。从图3.8可以看出,每位LED显示器需单独占用8根端口线。因而,在数据较多时往往不采用此种设计,而是采用动态显示方式。图3.8 4位静态LED显示器电路所谓动态显示,就是将要显示的多位LED显示器采用一8位的段选端口,然后采用动态扫描方式点亮各位显示器。在每一瞬间只使某一位显示字符,在此瞬间,段选控制I/O口输出相应字符段选码,而位选则控制I/O口在该显示位送入选通电平,以保证该位显示相应字符。如此轮流,使每位分时显示该位应显示的字符。如图3.9所示为4位LED动态显示电路。图3.9 4位动态LED显示器电路3.7 复位电路的设计本系统的复位电路是采用上电复位的电路,是常用复位电路之一。上电自动复位是在加电瞬间电容通过充电来实现的,其电路如图3.10所示。在通电瞬间,电容C通过电阻R充电,RST端出现正脉冲,用以复位,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就完成了系统的复位初始化。图3.10 上电复位的电路第4章 篮球赛计时计分器的软件设计软件设计一般按下列步骤进行:先分析系统对软件的要求;然后在此基础上进行软件总体设计,包括程序整体结构设计和对程序进行模块化设计,模块化设计即将程序划分为若干个相对独立的模块;接着画出每一个专用模块的详细流程图,并选择合适的语言编写程序;最后按照软件总体设计时给出的结构框图,将各模块连接成一个完整的程序。在主程序的设计中要合理地调用各模块程序,特别注意各模块的入口、出口及对硬件的资源占用情况。采用模块化设计方法以后,依据系统的功能