1.课题综述1.1课题来源单片机是一个单芯片形态,面向控制对象的嵌入式应用计算机系统.它的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域。由于本次设计的简单篮球记分牌体积小,故要求其控制器体积更小以便能嵌入其结构之中。单片机以微小的体积和编程的灵活性而产生多种控制功能,完全可以满足需求。可以适应不同规则下操作。1.2课题意义现在大多数比赛活动中都会遇到需要向观众和选手展示选手得分的情况,需要用到比赛记分牌。在目前的市场上,普通计分牌系统都需要几百块,价钱比较高。本项目设计的记分牌系统,电路简易,灵敏可靠,具有一定的使用价值和竞争价值。1.3项目目标基于AT89S52单片机比赛记分牌,采用12MHz晶振。项目具体要求如下:(1)启动时显示为10分。(2)当得分的时候加上相应的分数,失分时减去相应的分数。(3)刷新分数的按键按下时,伴随提示音。(4)计分范围设为0~1002.系统设计计分牌主要用途是展示选手的得分情况,当选手得分时记分牌加上相应的分数。根据项目要求进行系统设计2.1框图设计基于AT89S52单片机比赛计分牌由显示模块、按键模块、单片机主控模块、电源模块等组成,系统框图如图2-1所示:2.2知识点本项目需要通过学习和查阅资料,掌握和了解如下知识:2.2.1单片机的时钟电路单片机本身是一个复杂的同步时序系统,为保证同步工作方式的实现,单片机必须有时钟信号,以使其系统在时钟信号的控制下按时序协调工作。单片机的时钟电路由振荡电路和分频电路组成。其中震荡电路由反相器以及并联外接的石英晶体和电容构成,用于产生振荡脉冲。而分频电路则用于把振荡脉冲分频,以得到所需要的时钟信号。如图2-22.2.2单片机复位电路工作原理复位是单片机的初始化操作,其作用是使CPU中的各个部件都处于一个确定的初始状态,并从这个状态开始工作。当单片机的ALE及两脚输出高电平,RST引脚高电平时,单片机复位。单片机的复位电路有上电复位和手动按钮复位两种形式,RST/VPD端的高电平直接由上电瞬间产生高电平则为上电复位;若通过按钮产生高电平复位信号称为手动按钮复位。在实际应用系统中,有些外围芯片也需要复位,如果这些复位端的复位电平要求与单片机的要求一致,则可以与之相连。复位后,P0¡ªP3四个并行接口全为高电平,其它寄存器全部清零,只有SBUF寄存器状态不确定。目前,在单片机体统中共使用4种类型的复位电路,分别为:积分型电路、微分型电路、比较器型和看门狗型。其中前三种是在芯片外面用分立元件或集成电路芯片搭建的,而最后一种位于芯片内部,是单片机芯片的一部分。对于片外复位电路,无论哪种类型,加电复位和手动复位是必不可少的基本功能。如图2-3所示:图2-3复位原理电2.2.3单片机晶振电路工作原理每个单片机系统里都有晶振,全程是叫晶体震荡器,在单片机系统里晶振的作用非常大,他结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振的提供的时钟频率越高,那单片机的运行速度也就越快。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。下面具体的介绍一下晶振的作用以及原理,晶振一般采用如图2-4a的电容三端式(考毕兹)交流等效振荡电路;实际的晶振交流等效电路如图2-4b,其中Cv是用来调节振荡频率,一般用变容二极管加上不同的反偏电压来实现,这也是压控作用的机理;把晶体的等效电路代替晶体后如图2-4c。其中Co,C1,L1,RR是晶体的等效电路。图2-4晶振电路及其等效槽路分析整个振荡槽路可知,利用Cv来改变频率是有限的:决定振荡频率的整个槽路电容C=Cbe,Cce,Cv三个电容串联后和Co并联再和C1串联。可以看出:C1越小,Co越大,Cv变化时对整个槽路电容的作用就越小。因而能¡°压控¡±的频率范围也越小。实际上,由于C1很小(1E-15量级),Co不能忽略(1E-12量级,几PF)。所以,Cv变大时,降低槽路频率的作用越来越小,Cv变小时,升高槽路频率的作用却越来越大。这一方面引起压控特性的非线性,压控范围越大,非线性就越厉害;另一方面,分给振荡的反馈电压(Cbe上的电压)却越来越小,最后导致停振。通过晶振的原理图你应该大致了解了晶振的作用以及工作过程了吧。采用泛音次数越高的晶振,其等效电容C1就越小;因此频率的变化范围也就越小。微控制器的时钟源可以分为两类:基于机械谐振器件的时钟源,如晶振、陶瓷谐振槽路;RC(电阻、电容)振荡器。一种是皮尔斯振荡器配置,适用于晶振和陶瓷谐振槽路。另一种为简单的分立RC振荡器。用万用表测量晶体振荡器是否工作的方法:测量两个引脚电压是否是芯片工作电压的一半,比如工作电压是51单片机的+5V则是否是2.5V左右。另外如果用镊子碰晶体另外一个脚,这个电压有明显变化,证明是起振了的。晶振的类型有SMD和DIP型,即贴片和插脚型。晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。下面具体的介绍一下晶振的作用以及原理,晶振一般采用如图2-4a的电容三端式(考毕兹)交流等效振荡电路;实际的晶振交流等效电路如图2-4b,其中Cv是用来调节振荡频率,一般用变容二极管加上不同的反偏电压来实现,这也是压控作用的机理;把晶体的等效电路代替晶体后如图2-4c。其中Co,C1,L1,RR是晶体的等效电路。图2-4晶振电路及其等效槽路分析整个振荡槽路可知,利用Cv来改变频率是有限的:决定振荡频率的整个槽路电容C=Cbe,Cce,Cv三个电容串联后和Co并联再和C1串联。可以看出:C1越小,Co越大,Cv变化时对整个槽路电容的作用就越小。因而能¡°压控¡±的频率范围也越小。实际上,由于C1很小(1E-15量级),Co不能忽略(1E-12量级,几PF)。所以,Cv变大时,降低槽路频率的作用越来越小,Cv变小时,升高槽路频率的作用却越来越大。这一方面引起压控特性的非线性,压控范围越大,非线性就越厉害;另一方面,分给振荡的反馈电压(Cbe上的电压)却越来越小,最后导致停振。通过晶振的原理图你应该大致了解了晶振的作用以及工作过程了吧。采用泛音次数越高的晶振,其等效电容C1就越小;因此频率的变化范围也就越小。微控制器的时钟源可以分为两类:基于机械谐振器件的时钟源,如晶振、陶瓷谐振槽路;RC(电阻、电容)振荡器。一种是皮尔斯振荡器配置,适用于晶振和陶瓷谐振槽路。另一种为简单的分立RC振荡器。用万用表测量晶体振荡器是否工作的方法:测量两个引脚电压是否是芯片工作电压的一半,比如工作电压是51单片机的+5V则是否是2.5V左右。另外如果用镊子碰晶体另外一个脚,这个电压有明显变化,证明是起振了的。晶振的类型有SMD和DIP型,即贴片和插脚型晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。下面具体的介绍一下晶振的作用以及原理,晶振一般采用如图2-4a的电容三端式(考毕兹)交流等效振荡电路;实际的晶振交流等效电路如图2-4b,其中Cv是用来调节振荡频率,一般用变容二极管加上不同的反偏电压来实现,这也是压控作用的机理;把晶体的等效电路代替晶体后如图2-4c。其中Co,C1,L1,RR是晶体的等效电路。图2-4晶振电路及其等效槽路分析整个振荡槽路可知,利用Cv来改变频率是有限的:决定振荡频率的整个槽路电容C=Cbe,Cce,Cv三个电容串联后和Co并联再和C1串联。可以看出:C1越小,Co越大,Cv变化时对整个槽路电容的作用就越小。因而能¡°压控¡±的频率范围也越小。实际上,由于C1很小(1E-15量级),Co不能忽略(1E-12量级,几PF)。所以,Cv变大时,降低槽路频率的作用越来越小,Cv变小时,升高槽路频率的作用却越来越大。这一方面引起压控特性的非线性,压控范围越大,非线性就越厉害;另一方面,分给振荡的反馈电压(Cbe上的电压)却越来越小,最后导致停振。通过晶振的原理图你应该大致了解了晶振的作用以及工作过程了吧。采用泛音次数越高的晶振,其等效电容C1就越小;因此频率的变化范围也就越小。微控制器的时钟源可以分为两类:基于机械谐振器件的时钟源,如晶振、陶瓷谐振槽路;RC(电阻、电容)振荡器。一种是皮尔斯振荡器配置,适用于晶振和陶瓷谐振槽路。另一种为简单的分立RC振荡器。用万用表测量晶体振荡器是否工作的方法:测量两个引脚电压是否是芯片工作电压的一半,比如工作电压是51单片机的+5V则是否是2.5V左右。另外如果用镊子碰晶体另外一个脚,这个电压有明显变化,证明是起振了的。晶振的类型有SMD和DIP型,即贴片和插脚型计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8位微控制器8K字节在系统可编程FLASHAT89S52P0口。其引脚结构如图2-7图2-7AT89S52引脚图2.2.8集成块74LS06的使用74LS06为集电极开路输出的六组反相驱动器,其结构如图2-8所示,其中1A~6A为输入端,1Y~6Y为输出端3硬件设计3.1电路原理图根据上述分析,设计出基于AT89S52单片机的比赛计分牌电路原理图如图3-1所示。电源电路为单片机以及其他模块提供标准5V电源。晶振模块为单片机提供时钟标准,使系统各部分能协调工作。复位电路为单片机提供复位功能。单片机作为主控制器,根据输入信号对系统进行相应的控制。数码管显示选手当前的得分。按键设置模块用来刷新选手的得分,当选手得分或者失分时可以通过这两个按钮对选手分数重新设置。蜂鸣器用作按键提示,当有按键按下时蜂鸣器发出声音,按键释放时停止发声。3.2硬件连线系统板硬件连线如图3-1所示:(1)单片机的P0口和P2口通过74LS06反相缓冲器依次接到数码管的a~g端;(2)18和19引脚接外部晶振的时钟电路;(3)9、12和13引脚接按键电路;(4)17引脚接蜂鸣器电路。4软件设计4.1软件流程图单片机开始运行时显示选手10分,数码管显示10,主程序循环调用显示选手得分,当遇到中断时,调用中断程序,如果是P1则显示数字加1,如果是P2则显示数字减1。加1处理流程图如图4-1所示,减1处理流程图如图4-2所示。图4-1加1处理流程图图4-2减1处理流程图4.2程序代码基于AT89S52单片机的比赛记分牌设计程序如下:ORG0000HLJMPMAINORG0003HLJMPJIAYIORG0013HLJMPJIANYIORG0040HCOUNTEQU30HMAIN:MOVSP,#40HMOVCOUNT,#10HSETBEX0SETBEX1SETBIT0SETBIT1SETBEAMOVDPTR,#SHMBIAOXSHI:MOVA,COUNTSWAPAANLA,#0FHMOVCA,@A+DPTRMOVP0,AMOVA,COUNTANLA,#0FHMOVCA,@A+DPTRMOVP2,ALJMPXSHISHMBIAO:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHORG0200HJIAYI:LCALLdelayJBP3.2,E1MOVA,COUNTADDA,#01HLCALLdelayDAAMOVCOUNT,ASHYING:CPLP3.7;LCALLdelayJNBP3.2,SHYINGE1:RETIORG0300HJIANYI:LCAL