设为首页收藏本站

美丽的网站-英华家电维修论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 344|回复: 0
打印 上一主题 下一主题

时钟芯片DS1302及其在数据记录中的应用

[复制链接]
跳转到指定楼层
楼主
发表于 2011-3-11 10:53:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
山东济南山东工业大学机械工程学院(250061) 于复生 宋现春 艾 兴山东济南山东通信电子产业集团 (250061) 王 伟关键词:数据记录时钟芯片DS1302硬件电路软件设计在测量控制系统中,特别是长时间无人职守的测控系统中,经常需要记录某些具有特殊意义的数据及其出现的时间。记录及分析这些特殊意义的数据,对测控系统的性能分析及正常运行具有重要的意义。传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且某些测控系统可能不允许。而在系统中采用DS1302则能很好地解决这个问题。1DS1302的结构及工作原理DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿功能,工作电压宽达2.5~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。1.1引脚功能表及内部结构图DS1302的引脚及内部结构如图1所示,引脚功能如表1所示。1.2DS1302的控制字节说明DS1302的控制字如图2所示。控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。1.3复位通过把输入驱动置高电平来启动所有的数据传送。输入有两种功能:首先,接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,提供了终止单字节或多字节数据的传送手段。当为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中置为低电平,则会终止此次数据传送,并且I/O引脚变为高阻态。上电运行时,在VCC≥2.5V之前,必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。1.4数据输入输出在控制指令字输入后的下一个SCLK时钟的上升沿时数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位至高位7,数据读写时序见图3。1.5DS1302的寄存器DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。其日历、时间寄存器及其控制字见表2。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。DS1302与RAM相关的寄存器分为两类,一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为COH"FDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。2DS1302在测量系统中的硬件电路DS1302与CPU的连接仅需要三条线,即SCLK(7)、I/O(6)、RST(5)。DS1302与CPU连接的电路原理图如图4所示。在单电源与电池供电的系统中提供低电源并提供低功率的电池备份。在双电源系统中提供主电源,在这种运用方式下连接到备份电源,以便在没有主电源的情况下能保存时间信息以及数据。DS1302由两者中的较大者供电。当大于Vcc1+0.2V时,Vcc2给DS1302供电。当小于时,DS1302由供电。下面给出读DS1302时的MCS51汇编语言程序及主程序运行的框图(如图5所示)。;DS1302初始化ST02:CLR P1.0CLR P1.2NOPSETB P1.2写入一个字节WR02:MOV R7,#8MOV A,#0BFHLP02:CLR P1.0RRC AMOV P1.1,CNOPSETB P1.0NOPDJNZ R7,LP02RET读出一个字节RD02:MOV R7,#8LP021:CLR O1.0NOPMOP C,P1.1RRC ASETB:P1.0NOPDJNZ R7,LP021RET;调用部分STOP:CLR P1.2NOPRETLCALL ST02MOV A,#0BFHLCALL WR02MOV R6,#7MOV R0,#49HLP:LCALL RD02MOV@R0,AINC R0DJNZ R6,LPLCALL STOPRET采用DS1302作为记录测控系统中的数据记录,其软硬件设计简单,时间记录准确,既避免了连续记录的大工作量,又避免了定时记录的盲目性,给连续长时间的测量、控制系统的正常运行及检查都来了很大的方便,可广泛应用于长时间连续的测控系统中。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|手机版|粤ICP备13038386号|粤ICP备13038386号|美丽的网站-英华家电维修论坛 ( 粤ICP备13038386号 )     站长邮箱 505966338@qq.com

GMT+8, 2025-6-24 20:20 , Processed in 0.150183 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表