APP下载

基于DS1302实时时钟显示系统的设计

2017-04-15王仲夏马甲甲马万国

电脑知识与技术 2016年34期
关键词:数码管单片机智能

王仲夏+马甲甲+马万国

摘要:本系统以STC89C52单片机为核心,使用专门的时钟芯片DS1302在数码管上显示的数字电子钟,并能通过独立按键对其进行调时,该电子产品用途广泛,如单位会议室、门卫等场所。在电子产品盛行的今天,特别是用单片机作为处理器的民用电器产品具有性能优越、可靠性好、性价比高的特点。

关键词:数码管;单片机;智能;DS1302

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)34-0264-03

Abstract: STC89C52 single-chip microcomputer as the core, this system USES special clock chip DS1302 in digital tube display digital electronic clock, and can through the button to adjust their own, the electronic products are widely used, such as conference room, the guard etc. In the age of the electronic products, especially with single-chip microcomputer as the processor's civil electrical appliance products with superior performance, good reliability, high cost performance.

Key words: Digital tube; single chip microcomputer; intelligent; DS1302

电子时钟已成为人们生活中的必需品,广泛用于家庭、车站、会议室等场所,数字化的时钟给人们的生活带来了极大的便利,并且可以在时钟原有的功能上进行扩展,如定时报警、通断动力设备、甚至各种电气的定时启动,因此对电子时钟的设计是具有实际意义的。

1 系统硬件电路设计

1.1 时钟系统方框图

根据系统的功能要求,初步确定该系统由主控模块(STC89C52单片机)、时钟模块(DS1302)、按键模块、显示模块(数码管)共4个模块组成。系统方框图如图1所示。

1.2 時钟系统工作原理

DS1302与主控模块(STC89C52单片机)的连接简单,将引脚I/O、SCLK、RST与单片机的I/O口连接即可,将DS1302中的数据读取到单片机中,单片机将处理后的数据通过数码管显示出来。通过加入的三个独立按键,可进一步对时间进行修改,三个按键分别是菜单、+、-,例如第一次按下菜单键时选中分(此时‘分闪烁),此时可以通过按下+键来增加分,按下-键来减少分;当第二次按下菜单键时选中时(此时‘时闪烁)此时可以通过按下+键或-键可以增加或者减少时;当第三次按下菜单键后,修改后的时间数据写入DS1302时钟芯片并通过数码管显示出来。系统原理图如图2所示。

2 硬件电路元件

2.1 主控单元

STC89CC52是STC公司生产的一种低功耗、高性能的八位微控制器,内部具有8K用户应用程序空间。STC89C52沿用了经典的MCS-51内核,并在其基础上做出了改进,使芯片具有一些传统51单片机不具备的功能。内置4KB的EEPROM,复位电路,3个16位定时器/计数器,4 路外部中断,中断触发方式有下降沿触发和低电平触发两种,看门狗定时器,全双工串行口。另外STC89C52有空闲模式、掉电保护两种可供选择的节电模式,空闲模式下,CPU停止工作,但RAM、定时器/计数器、串口、中断等工作不会受到影响。掉电保护方式下,RAM内容被保存,直到下一次单片机工作时数据也不会丢失,但单片机会停止工作,如果让单片机继续工作,按下复位键即可,在单芯片上,由于STC89C52具有8位的CPU和可编程Flash的优点,因此可以为现在大多数嵌入式控制系统提供更多可选择的解决方案。

2.2 时钟芯片

DS1302是一个内部带有RAM的时钟芯片,并且有两个电源引脚(主电源,后备电源),这使DS1302芯片即使在没有主电源的情况下,仍然能够长时间的保证时间的准确性,DS1302芯片通过简单的串行接口与单片机进行通信,其工作电压为2.5V~5.5V。DS1302具有很全的计时功能。例如DS1302芯片具有可自动调整每月的天数和闰年的天数的功能,这使其更加智能化,该芯片还提供秒、分、时、日、月、年的信息,时钟可通过AM/PM 指示决定采用24 或12 小时制,本次系统只采用了时、分、秒进行计时功能。

2.2.1 DS1302与单片机之间的通信

DS1302 与单片机之间通过三个引脚(RST、I/O、SCLK)进行通信,它们之间采用同步串行通信的方式通信。

2.2.2 DS1302的优点

DS1302有两个电源引脚,分别为后备电源(VCC1)、主电源(VCC2),该芯片在不同的供电系统中供电方式也会发生改变,在单电源与电池供电的系统中由VCC1提供低电源,在双电源系统中由VCC2提供主电源。时钟芯片的供电模式取决于VCC1和VCC2的大小,当VCC2大于VCC1时,由VCC2给芯片供电;反之,由VCC1给芯片供电。因此在断电情况下,DS1302以VCC1备用电源进行其内部供电以保证下次开启时时间不会出现错误。对于连续长时间测量的控制系统来说,采用具有良好特性的DS1302作为记录测控系统中的数据记录时,可以进一步提高系统的工作效率。而且由于其软硬件设计也非常简单,因此对于长时间连续的测控系统来说是一个不错的选择。

2.2.3 DS1302引脚功能

VCC1:备用电源;

VCC2:主电源;

SCLK:时钟引脚,数据的输入与输出受其控制

I/O:数据传输接口;

X1和X2是振荡源,外接32.768KHZ晶振。

引脚图如图3所示。

2.3 显示模块

此系统选用的是四位一体的共阴极数码管,其内部已连接好,引脚(正面向上)从左到右顺序依次为1、a、f、2、3、b、dp(+)、dp(-),4、g、c、e,其中a、b、c、d、e、f、g、为段引脚,1、2、3、4分别表示4个数码管的位,dp(+)接电源正,dp(-)接单片机I/O口。

2.4 按键电路

本系统共采用3个独立按键,分别与单片机的P3.5、P3.6、P3.7口连接,分别是菜单、+、-功能。在调整时间时,可通过菜单键、+、-键对时间进行调整。在调整的过程中,数码管对应显示的调节项会闪烁,分别对时、分进行设置。按键电路与单片机的连接可参考图2。

3 软件设计

3.1 系统程序流程图

系统程序流程图如图4所示,程序执行时先进行系统初始化,再判断菜单键是否按下,当菜单键按下时进入时间修改模式,设置完成后把修改后的数据写入DS1302时钟芯片并通过数码管显示。若无按键按下则读取时间数据送入数码管顯示。

3.2 DS1302程序流程图

DS1302时钟程序流程图如图5所示,芯片工作时,会进入初始化程序,芯片内的数据会在出现中断信号时被送入单片机中处理并通过数码管显示,然后判断是否按下菜单键,若按下,则设置完成后将数据送入时钟芯片并显示,若无按键按下则直接送入EPROM中并显示。

4 总结

本次系统设计实现了时钟显示及时间调整的功能,从设计前期的查找资料,到后期的动手设计,焊接实物等都让我收获良多,特别是将一个系统分成几部分小的模块,然后逐步实现各模块的功能,最后把它们组合成一个系统,这种方法是值得学习的。以后,我会进一步提高自己的动手能力,丰富自己的知识。

参考文献:

[1] 李朝青. 单片机原理及接口技术[M]. 北京:北京航天航空大学出版社,2012.

[2] 张毅刚.单片机原理及接口技术[M]. 北京:人民邮电出版社,2013.

[3] 李广弟.单片机基础[M]. 北京:北京航空航天大学出版社,2000

[4] 刘军.单片机原理与接口技术[M].上海:华东理工大学出版社,2006

[5] 谭浩强. C语言程序设计[M]. 北京:清华大学出版社,2010.

[6] 邱关源. 电路[M]. 北京: 高等教育出版社,2010.

[7] 郭天祥. 新概念51单片机C语言教程[M].北京:电子工业出版社,2009.

[8] 杨国田,白焰,董玲. 51单片机实用C语言程序设计与典型实例[M].北京:中国电力出版社,2009.

[9] 王伟.高性能、低功耗带RAM实时时钟芯片DS1302(上)[J].电子世界,1995(1).

[10] 姚德法,张洪林.串行时钟芯片DS1302的原理与使用[J]. 信息技术与信息化,2006(1).

猜你喜欢

数码管单片机智能
基于单片机的SPWM控制逆变器的设计与实现
Arduino编程
基于单片机的层次渐变暖灯的研究
MC9S08FL16单片机数码管静态显示分析
基于单片机的便捷式LCF测量仪
单片机控制的四位数码管动态显示编程
基于Qt的数码管数字编码系统的设计与实现
Microchip推出两个全新PIC单片机系列