|
时钟芯片DS1302及其在数据记录中的应用 |
||
|---|---|---|
作者:山东济南山东工业大学机械工程学院(250061)
于复生 宋现春 艾 兴 山东济南山东通信电子产业集团 (250061) 王 伟
摘 要: 介绍了美国DALLAS公司推出的低功耗时钟芯片DS1302的结构和工作原理及其在测量系统中的应用。它可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿等多种功能。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录。这种记录对长时间的连续测控系统结果的分析以及对异常数据出现的原因的查找有重要意义。 关键词: 数据记录 时钟芯片DS1302 硬件电路 软件设计 在测量控制系统中,特别是长时间无人职守的测控系统中,经常需要记录某些具有特殊意义的数据及其出现的时间。记录及分析这些特殊意义的数据,对测控系统的性能分析及正常运行具有重要的意义。传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且某些测控系统可能不允许。而在系统中采用DS1302则能很好地解决这个问题。 1 DS1302的结构及工作原理 .DS1302[1]是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿功能,工作电压宽达2.5~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。 1.1 引脚功能表及内部结构图 DS1302的引脚及内部结构如图1所示,引脚功能如表1所示。 |
||
![]() |
![]() |
|
1.2
DS1302的控制字节说明 .DS1302的控制字如图2所示。 |
||
![]() |
||
控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。 |
||
|
||
1.3 复位 |
||
.1.4
数据输入输出 在控制指令字输入后的下一个SCLK时钟的上升沿时数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位至高位7,数据读写时序见图3。. 1.5 DS1302的寄存器 DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。其日历、时间寄存器及其控制字见表2。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。DS1302与RAM相关的寄存器分为两类,一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为COH~FDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。 |
||
![]() |
||
2
DS1302在测量系统中的硬件电路 .DS1302与CPU的连接仅需要三条线,即SCLK(7)、I/O(6)、RST(5)。DS1302与CPU连接的电路原理图如图4所示。 VCC2源与电池供电的系统中提供低电源并提供低功率的电池备份。 VCC2在双电源系统中提供主电源,在这种运用方式下VCC1连接到备份电源,以便在没有主电源的情况下能保存时间信息以及数据。DS1302由VCC2或VCC1两者中的较大者供电。当VCC2大于Vcc1+0.2V时,Vcc2给DS1302供电。当VCC2小于VCC1时,DS1302由VCC1供电。 下面给出读DS1302时的MCS51汇编语言程序及主程序运行的框图(如图5所示)。 |
||
![]() |
||
|
||
资料来源:《电子技术应用》 |
||
| [发表评论] [关闭窗口] | ||
|
||