学校嵌入式应用基础课程设计报告基于AT89C51的篮球比赛计分器课程设计学院:学生姓名:班级:学号:指导教师:I摘要随着单片机在各个领域的广泛应用,许多用单片机作控制的球赛计分器也应运而生,如用单片机控制LCD液晶显示器的计分器,用单片机控制LED七段显示器的计分器等等。本次设计的篮球计分系统以AT89C51单片机为核心元件,通过七段共阴极LED来显示比分。采用CD4094(8位移位存贮总线寄存器)进行串行口扩展显示器接口,并利用74LS21(双四输入与门)来实现比分的刷新功能。关键词:篮球计分器;AT89C51;显示;矩阵键盘;LED数码管II目录1前言.................................................................................................................................12系统方案设计...............................................................................................................22.1总体方案...................................................................................................................22.1.1设计内容............................................................................................................22.1.2设计要求............................................................................................................22.2系统组成...................................................................................................................33硬件设计.......................................................................................................................43.1AT89C51的介绍......................................................................................................43.2复位电路...................................................................................................................43.3键盘控制电路...........................................................................................................53.4显示电路...................................................................................................................64软件设计.......................................................................................................................84.1主程序设计...............................................................................................................84.2键盘识别及处理程序设计.......................................................................................94.3显示子程序设计.......................................................................................................94.4复位程序设计.........................................................................................................105系统调试.....................................................................................................................125.1硬件接线及调试.....................................................................................................126总结..............................................................................................................................136.1设计心得.................................................................................................................13参考文献.........................................................................................................................15致谢................................................................................................................................16附录................................................................................................................................17基于AT89C51的篮球比赛计分器11前言体育比赛记分系统是对体育比赛过程中所产生的比分等数据进行快速采集记录,加工处理,传递利用的信息系统。根据不同运动项目的不同比赛规则要求,体育比赛的记分系统包括测量类,评分类,命中类,制胜类得分类等多种类型。比如篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的记分系统是一种得分类型的系统。篮球比赛的记分系统由计分器等多种电子设备组成,同时,根据目前高水平篮球比赛要求,完善的篮球比赛记分系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现高比赛现场感,表演娱乐观众等功能目标。由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特的优点,使单片机迅速得到了推广应用,目前已经成为测量控制应用系统中的优选机种和新电子产品的关键部位。世界各大电气厂家,测控技术企业,机电行业,竞相把单片机应用于产品更新,作为实现数字化,智能化的核心部件。篮球计分器就是以单片机为核心的计分系统。基于AT89C51的篮球比赛计分器22系统方案设计2.1总体方案此计分器的设计采用模块化结构,主要由以下2个组成,即键盘模块、以及译码显示模块。以单片机为核心,配以一定的外围电路和软件,以实现比赛计分器的功能。它由硬件部分和软件部分组成。系统设计方案的硬件电路设计方框图如图2-1所示。图2-1硬件电路设计方框图2.1.1设计内容(1)给甲、乙两队分别设置加分按钮,各按钮按下分别实现给甲、乙队加1、2、3分。(2)给甲、乙两队分别设置减分按钮,各按钮按下分别实现给甲、乙队减1、2、3分。(3)设置一个复位按钮,按下实现甲、乙队总分回到初试分及显示(4)预置分通过甲、乙两队加分按钮实现。2.1.2设计要求(1)方案合理、正确,系统稳定、可靠。(2)软件设计要求尽可能精练、简短和运行可靠。(3)硬件电路要求简单明了,以节约成本。矩阵键盘89C51甲显示器乙显示器基于AT89C51的篮球比赛计分器32.2系统组成硬件电路由复位按钮、80C51单片机、矩阵键盘和8位共阴极LED显示器等组成。软件部分主程序主要由系统初始化段、键盘识别、键值处理、8位共阴极LED显示器扫描显示子程序组成。基于AT89C51的篮球比赛计分器43硬件设计3.1AT89C51的介绍AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。3.2复位电路为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V±5%,即4.75~5.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。目前为止,单片机复位电路主要有四种类型:(1)微分型复位电路;(2)积分型复位电路;(3)比较器型复位电路;(4)看门狗型复位电路在此介绍一下看门狗型的复位电路:看门狗型复位电路主要利用CPU正常工作时,定时复位计数器,使得计数器的值不超过某一值;当CPU不能正常工作时,由于计数器不能被复位,因此其计数会超过某一值,从而产生复位脉冲,使得CPU恢复正常工作状态。典型的看门狗型复位电路如图3-1所示:基于AT89C51的篮球比赛计分器5图3-1看门狗型复位电路此复位电路的可靠性主要取决于软件设计,即将定时向复位电路发出脉冲的程序放在何处。一般设计,将此段程序放在定时器中断服务子程序中。然而,有时这种设计仍然会引起程序走飞或工作不正常。原因主要是:当程序“走飞”发生时定时器初始化以及开中断之后的话,这种“走飞”情况就有可能不能由看门狗复位电路校正回来。因为定时器中断一真在产生,即使程序不正常,看门狗也能被正常复位。为此提出定时器加预设的设计方法。即在初始化时压入