11概述............................................................11.1研究背景...................................................11.2基本功能及设计思路.........................................22总体方案设计....................................................32.1方案选取......................................................32.2总体设计......................................................33硬件电路设计....................................................43.1电源电路...................................................43.2晶振电路...................................................43.3键盘电路...................................................53.4复位电路...................................................63.5显示电路...................................................64系统软件设计....................................................74.1主程序设计.................................................74.2加分程序设计...............................................84.3交换程序设计..............................................104.4LED显示程序设计..........................................104.5共阴极数码管字形表............................................115总结...........................................................12参考文献.........................................................12附录1系统原理图................................................13附录2源程序....................................................14附录3系统调试..................................................181概述1.1研究背景在这个电子信息技术迅速普及的今天,人们对电子产品的需求越来越多。二十一世纪的今天,科学技术迅猛发展,时代前进的脚步越迈越宽,应用自动2化设备,现代化通讯,计算机处理,数字化信息,现代化显示设备等一些高新技术使人类迈向智能化发展。在智能化产品中,单片机的应用已经越来越广泛,单片机以它体积小、质量轻、耗电省、可靠性高、价格低等优点,开始不断发展,并广泛应用于仪器仪表、家用电器、医疗设备、航天航空领域、工业专用设备的管理及过程控制等领域,在很多的大中型的电气设备以及小型的电子产品中也用到了单片机进行控制。单片机把我们带入了智能化的电子领域,许多繁琐的系统若由单片机进行设计,便能收到电路更简单、功能更齐全的良好效果。若把经典的电子系统当作一个僵死的电子系统,那么智能化的现代电子系统则是一个具有“生命”的电子系统。本设计就是基于单片机设计篮球计分系统,通过串口通信动态传输数据,使计分系统有了更多更完善的功能。单片机系统的硬件结构给予了篮球计分器系统“身躯”,而单片机的应用程序赋予了其新的“生命”,使其在传统的篮球计分器面前具有电路简单、成本低、运行可靠等特色。1.2基本功能及设计思路1、利用89C51单片机设计篮球计分器系统,实现以下功能●用4位LED显示器显示两队分数;●能够随时手动对A、B两队分别计分;●能够手动实现A、B两队的分数位置随场地交换而对应调换。2、设计思路:以AT89C51单片机为核心元件,利用独立式键盘控制,使4位共阴极LED数码管以静态显示方式实时记录A、B两队的分数。独立式键盘由K1、K2、K3、K4、K5、K6、K7、K8构成。其功能如下:●K1、K2:加1分;●K3、K4:加2分;●K5、K6:加3分;●K7:半场换分;●K8:显示复位。A、B两队分别占用两位LED显示器,显示范围为0~99,能够基本满足一般比赛需要。32总体方案设计2.1方案选取单片机在各种电子产品中的应用已经越来越广泛,很多的电子产品利用单片机所取得的便利得到了人们的好评,针对基于单片机的篮球计分器的设计要求,实现其功能的方案有多种,现列举如下:方案(一)按键控制每次各队的加分值为1分或2分,如若进3分球,则需两键相加。并由半场换分按键和复位功能。分数通过4位LED显示器动态显示;方案(二)系统采用三个按键控制每次各队的加分值为1分、2分或3分。同样也有半场换分按键和复位功能。并通过4位LED显示器静态显示分数。这二个方案都是基于单片机控制的,通过按键加分及数码管显示,不同的设计部分在于按键的数量和显示方式的选取上。方案(一)的按键数量较少,加上交换按键和复位按键共需要6个,但也能完成基本功能。不过在显示方面,动态方式编程较为复杂。方案(二)的按键虽然较多,但功能齐全,使用方便。并且电路不是太过复杂,编程较为简单。最终方案:经过以上比较,方案(一)按键使用不方便,且软件设计复杂。因此选用方案(二),即以8位独立式键盘分别实现加1分、加2分、加3分、半场换分和显示复位的功能,并用4位共阴极LED显示器以静态显示方式显示分数。2.2总体设计篮球计分器的设计是基于满足设计要求的前提并且根据理论上的可实现性和硬件上的经济实用性,而进行设计的重要环节。本节从人们对系统功能需求出发,在综合考虑各种因素的情况下,设计出篮球计分器的总体构架。1、加分功能设计:通过显示缓冲区为中间加分媒介。每当按键按下时,首先通过外部中断源实现中断,进入中断后判断键值再进入相应加分子程序,对相应显示缓冲区加分。2、分数调换功能:同样是利用外部中断源实现中断,中断服务程序应能实现中场分数位置调换的功能。3、分数显示功能:用同步移位寄存器74HC164实现4位LED数码管静态显示。4通过查表指令在字形表中找到与显示缓冲区对应的字形码,然后串行移位输出即可。基于89C51单片机的篮球计分器总体设计框图如图2所示。AT89C518位独立式键盘4位LED数码管+5V电源时钟电路74LS2174HC164图2篮球计分器总体框图在框图所示的系统构架中,8位独立式键盘包括6位加分按键,1位分数调换按键和1位复位按键。其中加分按键通过7421实现中断扫描,分数调换按键则直接通过外部中断1入口P3.3实现中断服务。3硬件电路设计3.1电源电路单片机正常工作电压为5V,因此设计的电源电路主要是提供单片机工作电压。图3.1是为单片机提供电压的电源电路,包括变压、整流、稳压、滤波等环节。在这个电路中采用了三端集成稳压器LM7805,可以输出5V的直流电压以供给单片机。图3.1电源电路3.2晶振电路电路中的晶振即石英晶体震荡器。由于石英晶体震荡器具有非常好的频率稳定性和抗外界干扰的能力,所以,石英晶体震荡器是用来产生基准频率的。T1TRANS1C20.1uFC10.33uF+C310uFVin1GND3Vout2LM78051234D1BRIDGE1VCC5通过基准频率来控制电路中的频率的准确性。同时,它还可以产生振荡电流,向单片机发出时钟信号。图3.2是单片机的晶振电路。片内电路与片外器件就构成一个时钟产生电路,CPU的所有操作均在时钟脉冲同步下进行。片内振荡器的振荡频率非常接近晶振频率,一般多在1.2MHz~24MHz之间选取。C1、C2是反馈电容,其值在20pF~100pF之间选取,典型值为30pF。本电路选用的电容为30pF,晶振频率为12MHz。图3.2晶振电路3.3键盘电路键盘电路在篮球计分器中的主要作用是用于实现加分和交换分数位置。键盘可分为独立式键盘和行列式键盘。本设计中由于按键数少于8个,所以采用独立式按键电路。另外采用中断扫描方式扫描键盘的状态,当然也可以直接用编程扫描方式,两者工作思路基本一样。具体电路如图3.3所示。AT89C51单片机的直流输入电流为15mA,当直流电源电压为+5V时,可选择5.1KΩ的上拉电阻保证单片机的正常工作。图3.3键盘电路Y112MC430PC530PXTAL1XTAL2VCC142D132C12NC112B102A92Y81A11B2NC31C41D51Y6GND774LS21K5K2K4K1K3K6P0.0P0.1P0.2P0.3P0.4P0.55.1K*7P3.2+5+5K7P3.363.4复位电路复位电路的主要功能是使单片机进行初始化,在初始化的过程中需要在复位引脚上加大于2个机器周期的高电平。复位后的单片机地址初始化为0000H,然后继续从0000H单元开始执行程序。在复位电路中提供复位信号,等到系统电源稳定后,再撤销复位信号。但是为了在复位按键稳定的前提下,电源稳定后还要经一定的延时才撤销复位信号,以防在按键过程中引起的抖动而影响复位。图3.4所示的RC复位电路可以实现上述基本功能。图3.4复位电路3.5显示电路显示电路是用于显示分数。采用LED数码管进行显示是因为LED数码管具有以下几个优点:(1)能在低电压、小电流条件下驱动发光,能与CMOS、ITL电路兼容。(2)发光响应时间极短(0.1μs),高频特性好,单色性好,亮度高。(3)体积小,重量轻,抗冲击性能好。数码管有共阴极和共阳极两种类型,其公共端主要进行位控制,笔画端则是进行字符控制,数码管有静态显示和动态显示两种方法。本设计采用的是4位共阴极LED数码管的串行驱动电路来达到显示的目的。驱动器采用74HC164,由单片机89C51的P3.0和P3.1来控制LED数码管的显示。显示电路图如3.5所示。因为共阴极数码管可以不用外接电阻,所以原理图中的电阻可去掉。+C610uF10KK6+5RST7图3.5显示电路4系统软件设计系统软件设计主要由加分中断服务程序,交换中断服务程序,LED显示程序等几部分构成。本章节系统的介绍了篮球计分器的主程序和各主要功能子程序的设计流程,具体的程序代码见附录2。4.1主程序设计主程序构成无限循环,主要完成单片机初始化,等待加分和交换中断的功能。主程序的流程图如图4.1所示。abfcgdeDPY1234567abcdefg8dpdpDS1abfcgdeDPY1234567abcdefg8dpdpDS3abfcgdeDPY1234567abcdefg8dpdpDS2abfcgdeDPY1234567abcdefg8dpdpDS4GND7VCC14CLK8CLR9B2A1Q03Q14Q25Q36Q410Q511Q612Q71374HC164U1GND7VCC14CLK8CLR9B2A1Q03Q14Q25Q36Q410Q511Q612Q71374HC164U2GND7VCC14CLK8CLR9B2A1Q03Q14Q25Q36Q410Q511Q612Q71374HC164U3GND7VCC14CLK8CLR9B2A1Q03Q14Q25Q3