APP下载

基于AT89S52单片机的电子记分牌设计

2015-01-15李泽滔

现代机械 2015年1期
关键词:赛程数码管蜂鸣器

钟 炜,李泽滔

(贵州大学电气工程学院,贵州 贵阳 550025)

0 引言

单片机的应用是具有高度现实意义的。本次设计通过AT89S52编程控制LED七段数码管作为电子记分牌的计时记分系统。该系统具有赛程定时设置,赛程时间暂停,及时刷新甲、乙双方的成绩以及赛后成绩暂存等功能[1]。它具有价格低廉,性能稳定,操作方便并且易于携带等特点。广泛适合各类学校或者小型团体作为赛程计时记分设备。

1 硬件电路设计

AT89S52作为本设计的核心元件。利用七段共阴极LED作为显示器件。在本次设计中,共接入3个七段共阴极LED数码管,其中2个三位一体的七段共阴极LED数码管用于计录甲、乙两队的分数,显示器分数范围可达到0~999分,足够满足赛程需要。另外1个四位一体的七段共阴极LED数码管则用于计录赛程的时间,其中两个用于显示比赛时间分钟;两个用于显示比赛时间的秒钟。赛程计时采用倒计时方式。比赛前将时间设置好,比赛开始时启动计时,直至计时倒计时到零为止,此时蜂鸣报警器报警提示比赛结束。根据设计,计时范围可达0 ~99 min,也完全满足赛程的需要[2]。

为了配合计时器和记分器校正、调整时间和比分,特定在本设计中设立了8个按键。其中4个用于输入甲、乙两队的分数;另外4个则用于完成设置、调整、启动和暂停赛程时间、比分中场调换等功能。系统框图如图1所示。

其中稳压电源模块,复位电路,晶振电路等构成了我们AT89S52单片机工作的最小系统,下面就分别介绍这几个电路模块[3]。

图1 系统框图

1.1 电源电路模块

在该系统中单片机需要用到+5 V的直流稳压电源,在我们的生活中一般都是使用220 V的交流电,为了获得高质量的5 V直流稳压电源,这就需要我们进行电压转化。电源部分的电路如图2所示。

图2 系统电源模块

7805系列集成稳压器,只有输入端、输出端和公共端三个引线端子,可输出1 A以上的电流,有必要的保护电路,使用起来安全可靠。它输出固定的正电压。电压经过整流、滤波后产生的不稳定直流电压,从稳压器的输入端输入,在稳压器的输出端就可得到稳定的直流电压输出。正常工作时,稳压器输入、输出电压差为2~3 V,电容用来实现频率补偿。图中C1为0.1 μF可以防止由于输入引线较长而带来的电感效应而产生的自激。C2为0.47 μF用来减少由于负载电流瞬时变化而引起的高频干扰[4]。

1.2 时钟振荡电路

时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。单片机有两种时钟产生方式,一种是外部时钟方式,一种是内部时钟方式。外部时钟方式虽然精度高,稳定性好,但是成本高,需要额外提供一个外部震荡信号。因此本次设计采用内部震荡方式。设计要使用到AT89S52单片机的时钟振荡功能。其中有一个用于构成内部震荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入和输出端。这个放大器与作为反馈元件的片外石英晶体或者陶瓷AT89S52谐振器一起构成自激振荡器。

1.3 复位电路

单片机在时钟电路工作以后,在RST端持续给出2个机器周期的高电平就可以完成复位操作,复位分为上电复位和外部复位两种方式。主要功能是把系统初始化,当程序运行错误或者进入死循环的时候,为摆脱困境,可以按复位键以重新启动。

本设计采用上电复位加按钮方式,通过调整按钮的状态,使单片机能够可靠的上电复位,当需要外部复位时,按下复位按钮就能达到复位的目的,由于人的动作再快也会保持接通数十毫秒,所以完全能够满足单片机复位的要求。

1.4 按键电路部分

采用的是非编码键盘中的独立式键盘,设计一共使用9个按键,其中4个用于甲乙两队的分数,分别是甲队加分和减分、乙队加分减分,另外四个用于控制开始、暂停、调节分钟秒钟以及调换比赛分数,最后一个是复位按键,用于单片机的复位。

1.5 显示电路部分

采用共阴极数码管,共阴极接低电平,其他管脚接段驱动电路输出端。当某段驱动电路的输出端为高电平时,该端所连接的字符导通并发亮,根据发光字段的不同组合可显示出各种数字或者字符。同样,要求段驱动电路能提供额定的导通电压或者电流,同时根据需要设定响应的限流电阻。本次设计的显示电路部分采用2个3位一体共阴极数码管和一个4位一体共阴极数码管,共8个代码输入口和10个位选输入口。显示方式采用动态驱动,使各位数码管逐一轮流点亮,由于扫描速度极快,显示效果与静态显示效果相同[5]。

1.6 蜂鸣报警电路部分

报警部分要求同时比赛结束之后有蜂鸣报警,采用蜂鸣器报警实现。其中蜂鸣器通过一个PNP三极管驱动,R14作为驱动电阻。当比赛时间倒计时结束之后,通过软件控制在P3.6端口输出低电平信号,三极管Q1导通,蜂鸣器发出声音。图3为本系统的蜂鸣报警电路电路图。

图3 报警电路

2 软件总体设计方案

软件的编程设计是单片机系统设计的核心部分,也是能否实现预定功能的关键。单片机编程常用的语言是C语言和汇编语言,其最终都要转为Intel HEX格式或二进制格式文档拷入单片机芯片内。本次设计使用C语言进行编程。

C语言可以进行模块化程序设计,程序部分由主程序,延时程序,中断程序,加分程序,减分程序,比分交换程序,时间调整程序,时间暂停程序,报警程序,扫描显示程序,结束程序等程序构成。程序流程图如图4所示。

图4 系统程序流程图

在主程序中,可以清晰看到,初始化结束之后,定时器显示默认值,甲乙分数清零,进入检测按键程序,与此同时,数码管正常显示,当时间分钟设定或者时间秒钟设定被选择之后我们设定此时计时中断,蜂鸣器报警也停止。当达到规定计时时间后,再次进入蜂鸣报警响应,并且交换分数,重新回到定时设定[6]。

3 仿真与PCB展板

3.1 Proteus仿真

Proteus是英国Labcenter公司开发的电路分析与实物仿真软件。可以分析各种模拟器件和集成电路。在Proteus下完成电路的连接,通过KEIL软件生成的HEX文档导入仿真程序单片机中,按下软件页面下的开始按键开始进行软件仿真[7],本次设计的电子记分牌仿真结果如图5所示。

图5 电路仿真结果图

3.2 PCB展板

PCB展板的制作应遵循均匀分布,重心平衡,版面美观的标准来优化布局。相同结构电路部分尽可能采用对称布局,同类原件尽可能在X或Y方向上一致,以便于生产和调试[6]。本次设计根据需要制作了电子记分牌实物电路[8]如图6所示。

图6 电子记分牌实物展板

4 结论

本文设计的电子记分牌实现的功能包括:时钟倒计时功能,可以精确到秒;时钟的数值可以调节同时倒计时具有够暂停;当时间倒计时结束之后,蜂鸣器自动报警;作为体育赛事的记分牌,能够记录两队分数,并且具有加减功能;最后在半场比赛结束能够交换两队比分。系统设计包含了8051系列单片机的最小应用系统的构成,同时在此基础上扩展了一些使用性强的外围界面。该电子记分牌设计功能相对完善,蜂鸣器声音大小可调,后期还可将独立键盘扩展为触摸屏,因此其用途十分广泛。

[1] 杨素行.模拟电子技术基础.清华大学电子教研组,1998:492-518

[2] 李士平.北京电子报.北京电子报社98合订本下,1998

[3] 赵保经.中国集成电路大全.国防工业出版社,1987:9-82

[4] 童诗白.现代电子学及应用.东南大学出版社,1997:23-34

[5] 晓喻.电子制作.中国家用电器维修协会,1999:15-18

[6] 郭天祥.新概念51单片机C语言教程.电子工业出版社,2009:38-125

[7] 张毅刚.新编MCS-51应用设计.哈尔滨工业大学出版社,2008:380-390

[8] 霍亮雨.探讨数字单片机技术的PCB版.数字化用户,2013

猜你喜欢

赛程数码管蜂鸣器
电动自行车产品车速提示音检测现状和整改技术研究(2)
微课教学设计之“数码管动态显示”
赛程回顾
掌控板制作简易钢琴
Arduino编程
MC9S08FL16单片机数码管静态显示分析
单片机控制的四位数码管动态显示编程
单片机驱动蜂鸣器的程序设计
2017—18赛季英格兰足球超级联赛赛程
丰田凯美瑞240V车间隙警告蜂鸣器异常鸣响