APP下载

基于单片机的多功能定时打铃钟设计

2011-08-24娟,魏

时代农机 2011年5期
关键词:数码管子程序一键

王 娟,魏 雄

(东华理工大学机械与电子工程学院,江西 南昌 330013)

多年来,一些学校使用的基本是传统的打铃钟,以往的打铃钟操作不便,静态电流大,电路复杂,可靠性低,成本高。而多功能定时打铃钟就有效的解决了这些问题。使用方便,可自动完成学校每天的打铃要求,还可以随时对任意一点的打铃时刻,打铃方式做调整,不影响走时。这种打铃钟经济性、稳定性好,节省人力、走时准确,能够满足商业贸易和学校的使用需求。

1 系统设计方案

本系统设计的是适用于学校的多功能定时打铃钟,能自动完成每天的打铃工作,显示当前时间 ,可以用键盘来校正不准时间。该系统由单片机微型计算机AT89C51和移动寄存器74LS164以及八段数码管,光耦器等组成。系统框图如图1所示。

图1 多功能定时打铃钟的基本思路

其中微型计算机AT89C51主要负责数据处理,控制显示,键盘控制等工作,是该系统的核心部分。

(1)键盘接89C51的P1口,从P1.0到P1.3口共设置了四个键,作用分别为开始键、显示修改键、加一键、减一键。

(2)显示电路中,是通过89C51的P3.0和P3.1口即串行输入输出口控制移位寄存器74LS164对数码管驱动显示。

(3)驱动电路中,我们用到 AT89C51的P2.0口,通过晶体三极管NPN8050和光藕器MOC3041,连接一个发光二级管,用可控硅来控制打铃。

本系统用四个数码管分三屏显示月,时,分,秒。规定起始的时间为2011年6月11日00点00分00秒。

打铃时间的设置为:上课时间50分钟;课间休息10分钟;上午8点上课;节数为4节;下午2点上课;节数为4节;晚上7点上课,节数为2节。

响铃的时间为:8:00、8:50、9:00、9:50、10:00、10:50、11:00、11:50、14:00、14:50、15:00、15:50、16:00、16:50、17:00、17:50、19:00、 9:50、20:00、20:50。 共为 20 次响铃,可自动实现而不用每次人工设置操作。

所有的运算是采用十六进制无符号整数运算,定点显示,键盘控制,当需要校准时间时能在键盘上直接操作,如清零,加时间,减时间。

2 硬件电路设计

(1)显示电路。采用了串口静态显示,选用的驱动芯片是74LS164,用其来驱动八段数码管。当89C51的串行口不作通信使用的时候,串行口可以工作于移位寄存器方式,用来驱动LED静态显示器,这样就可以充分利用串行口,而将并行口用到最需要的地方去。

本系统采用的是静态显示,这样在每一个显示输出后能够保持不变,仅在待显数字需改变时,才更新其数字显示器中锁存的内容。这种显示站用机时少,显示稳定可靠。缺点是,当显示的位数较多时,占用的I/O口较多。在显示的时候,应该将高位的零熄灭。这样可以减少阅读差错,也比较符合习惯。这种显示功能成为灭零显示。它的规则是:整数部分从高位到低位的连续零均不显示。从遇到的第一个非零数值开始均要显示,个位的零和小数部分均应显示。

(2)键盘扫描电路。键盘是人与微机系统打交道的主要设备。为了节省资源空间和费用,也为了使面板容易布置些,我们在此设计中,采用了独立式键盘,仅仅采用了四个按键。由于节省了按键,但我们必须完成一些功能,设定这四个键为功能键。从引脚P1.0到P1.3下来,这四键分别为开始键、显示修改键、加一键、减一键。在一般状态下,P1.0到P1.3都是处于高电平,当往其中一个口送低电平,则这个口所对应的按键按下,进入其所对应的功能模式。

3 软件电路的设计

3.1 设计思想

为了使单片机控制系统中各种硬件设备能够正常运行,有效地完成打铃钟各个控制环节的实时控制和管理,除了要设计合理的硬件电路外,还必须要有高质量的软件支持。因此,软件在整个设计中也显得十分重要。一个控制系统中程序设计得好与坏,将直接决定了整个系统的控制质量和它的效率。对于多功能定时打铃钟系统,它也是由主程序和定时/计数器T0中断子程序,以及若干个子程序(如键盘扫描子程序、显示子程序、判断闰年子程序和延时子程序等)构成,其没一个功能模块都实现了某一确定的任务。

3.2 程序设计

(1)主程序。在多功能定时打铃钟系统的软件设计中,主程序设计是关键。它实现了对定时/计数器的初始化以及开中断,并且设定了初始的年、月、日、时、分和秒,同时还调用了键盘扫描子程序。

(2)子程序。外部中断子程序,在查询按键值中断显示,设定为优先级中断,其流程图如图6

4 结语

在调试程序过程中,源程序的编辑在PC机上进行,各程序模块都调试通过后,再将它们组合起来进行系统统调。调试过程只有当硬件调试和软件调试完成以后,再进行系统综合调试。在Keil uvision2环境下各程序模块都能通过调试,达到了设计要求。

[1]刘乐善.微型计算机接口技术及应用[M].武汉:华中科技大学出版社,2005.

[2]赵茂泰.智能仪器原理及应用[M].北京:电子工业出版社,2005.

[3]杨文龙.单片机原理及应用[M].西安:西安电子科技大学出版社,1998.

猜你喜欢

数码管子程序一键
冷轧机一键式升降速轧制的实现
微课教学设计之“数码管动态显示”
“一键报贫”助力脱贫攻坚
Arduino编程
MC9S08FL16单片机数码管静态显示分析
单片机控制的四位数码管动态显示编程
一键观影,一键K歌 菱杰 TRS IW影院系列5.1音响套装
一键定制 秋冬彩妆懒人包
浅谈子程序在数控车编程中的应用
子程序在数控车加工槽中的应用探索