基于DSl302芯片的数字时钟设计
杨阳 李华
摘要:现在电子时钟在越来越多的领域得到了应用,尤其是对某些无人看守的测控系统及有关的自动化控制等对时钟精确度要求很高的场合,电子时钟具有十分重要的应用价值。文章利用时钟芯片DSl302,AT89c52单片机以及数码管等元件,设计新的数字时钟电路,实现定时、计时、报警等功能。经大量的仿真实验验证,设计的数字时钟显示时间正确,工作具有较高的准确性和可靠性。
关键词:DSl302;数字时钟;单片机
在人们日常生活中,电子时钟已成为必需品,被广泛应用于各行各业。钟表数字化应用极大地改变了人们的生产生活,钟表的基本报时功能也得到了扩展,比如定时闹铃功能、学校上下课的定时电铃等,因此很多学者对数字钟以及研究数字时钟的扩展功能进行了研究。本文设计了基于时钟芯片DSl302和AT89S52单片机的数字时钟。
1.设计元件简介
1.1AT89S52单片机元件简介
AT89S52是一个具有8k字节的Flash,I/O口线为32位,具有2个数据指针和一个看门狗定时器,还有定时器/计数器,具有中断结构的单元机。另外,AT89S52芯片支持可选择节电模式。空闲模式下,允许CPu停止工作的条件下,其余功能可以继续工作,比如RAM、定时器,计数器等。掉电保护方式下,随机存取存储器(Random Access Memory,RAM)内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。全双工串行口,片内晶振及时钟电路。
1.2时钟芯片DSl302简介
DSl302是美国DALLAS公司研发的实时时钟电路,它具有自带RAM芯片、低功耗、高性能等特点,可以采用各种方法对时间进行精确显示,具有对闰年和非闰年的判断功能,2.5~5.5v电压为芯片的工作电压范围。最大特点是CPu与芯片的三线接口可以进行同步通信,一次可以传送若干个字节的RAM数据。
2.硬件设计
2.1设计思路
利用AT89S52进行全局的控制,用数码管来显示时、分、秒,时、分、秒从DSl302上读取出来。由于要设置时间所以装了两个按键。一个用来选中所要修改的时间,一个进行修改(就是+1),为了使定时闹钟能够实现,又加了个蜂鸣器,当时间走到设定的时间时,蜂鸣器开始发出声音,该数字时钟硬件电路简单、使用灵活、功能稳定。
2.2系统结构及总流程设计
根据系统设计的要求和设计思路,确定该系统的系统设计结构图。系统总体结构如图1所示。硬件电路主要由MCU微处理控制器单元、DSl302时钟电路、储存器、复位电路、晶振电路、数码管显示模块构成。根据软件功能要求,将系统软件划分为若干个相对独立的部分,设计出合理的总体结构:时钟显示是一个无穷死循环,系统主控制器AT89S52重复不间断地读取DSl302芯片所提供的时间,把获得到的时间送LED以24小时模式来完整显示出来;当达到闹钟所设定时间时,控制蜂鸣器发出声音;当需要调整定时的时间或闹铃时间时,按下相应数字键即可进入系统中断处理程序进行中断处理。本设计中整个系统的电源来自电脑提供的USB电源线。
2.3系统硬件电路设计
(1)整体电路设计。系统的实时时钟电路的部分由单片机AT89S52的P1接口与DSl302时钟芯片相连接而成,将键盘与单片机的P3.2接口和P3.3接口连接组成系统的按键电路,用来对显示器的控制,数码管与单片机的P0接口连接构成系统的显示,最后用三极管连接数码管与P2接口。
(2)DSl302时钟电路设计。芯片的供电电路是将VCC2接电源,将晶振分别与X1,X2引脚相连;芯片的复位引脚电路是将单片机P1.2收引脚与RST引脚相连接;芯片的时钟端电路是将单片机的PI.0引脚与芯片的SLK引脚相连组成;芯片的I/0端口的电路是将单片机的P1.1引脚与I/O引脚相连组成。
(3)显示电路。将数码显示管的段选端与单片机的P0接口相连,由于数码管采用的是动态显示,所以通过对P0的8位二进制數据的不断改变使数码显示管不断的动态显示;用三极管连接单片机的P2接口与数码管接口,在两个信号的配合下实时显示时间数据。
3.主程序及系统Proteus软件仿真
3.2系统Proteus软件仿真
用Keil软件编译程序生成可执行文件.hex文件后,在Proteus文件中刚刚生成的heX文件,而后进行仿真测试。在系统程序设计中已经确定显示的格式为:时时,分分秒秒,在仿真测试中可以看到数码管按照时时,分分,秒秒的样式进行显示,这种显示格式是为了便于读取温度数字。对于系统的按键部分,当调节各个按键,数码显示管对应的数码位处于闪烁状态,然后进入可调整阶段,可以对系统的时间显示部分进行调整。当时间走到定的时间时蜂鸣器就会响起。系统的电路及显示效果达到普通用户的需求,仿真结果如图2所示。
4.结语
本文利用时钟芯片DSl302,AT89C52单片机以及数码管等元件设计出新的数字时钟电路,实现定时、计时、报警等功能。该电路使用时钟芯片DSl302自带的简单的三线接口,这样为AT89C52单片机节省出较多的接口资源,而且时钟芯片还带有后备电池。经大量的仿真实验验证,文中设计的数字时钟显示时间正确,误差较小,有一定的应用价值。