用实时时钟芯片DS1305启动数据采集系统

时间:2020-10-12 20:07:08 理工毕业论文 我要投稿

用实时时钟芯片DS1305启动数据采集系统

摘要:介绍串行时钟芯片DS1305的功能、结构及其利用DS1305设计的电源开关电路,可使数据采集系统平时处于关闭状态。定时开启时系统上电,进行数据采集;一次工作结束时关闭开关,系统断电。

引言

对于许多便携式数据采集系统,需要长时间无人看管地工作,如在石油钻井下、输油管道等场所。一般需要间隔数小时进行一个采集,这样系统大部分时间处空闲状态。虽然现在低功耗单片机的睡眠状态提供了降低功耗的一种方法,但低功耗不等于没有功耗,系统长时间工作时不得不考虑功耗的问题。

为进一步节省功耗,我们在研制一数据采集系统时,利用实时时钟芯片DS1305设计一电源开关电路。利用该开关电路,可使系统在空头时处于关闭状态,每当采集时间到,由报警信号开启单片机系统以进行数据采集,在数据采集结束时,单片机关闭开关电路,系统断电。这样系统处于关闭状态,一直到下一次开关电路报警。

1 DS1305简介

DS1305是美国Dallas公司推出的串行接口带报警实时时钟。它有20脚的TSSOP、16脚的DIP两种封装方式[1],工作电压范围从2.0~5.5V。

1.1 主要特性

DS1305用二一十进制(BCD)码表示实时时钟的秒、分、小时、星期、日、月和年的时间信息,并且自动对小月(少于31天的月份)和闰年的日期进行调整,兼有带AM/PM指示12小时和24小时两种时间指示格式。图1为DS1305两种引脚的排列。

DS1305提供了主电源和后备电源的双电源引脚和一个电池输入引脚;Vcc1为主电源,Vcc2为后备电源,可充电电源接此引脚,VBAT接3V的锂纽扣电池或其它电源。VCCIF引脚用来驱动SDO和PF(电源失效输出)引脚的电平和接口的电相兼容。DS1305只支持三种电源连接方式,如图2所示。VCC1和VBAT供电时,VCC1大于VBAT0.2V时,正常对DS1305进行访问。当VCC1小于CBAT时,DS1305进入写保护。VCC1、VCC2供电时,当Vcc1比Vcc2大0.2V,Vcc1输入作为电源;当Vcc1小于Vcc2,Vcc2对DS1305供电。这种模式下,DS1305不能写保护自己。当Vcc1以 5V供电时,DS1305正常工作电流为1.28mA,时钟保持电流最大为81μA,当 2V供电时,正常工作电流为0.425mA,时钟保持电流最大为25.3μA。

DS1305支持通过SPI串行数据端口或者标准的三线接口进行时间的校正和数据的读取,可进行单字节的或连读字节束发方式的访问。SERMODE接地,串口访问模式设定为标准3线模式:SD1(串口数据输入)与SDO(串口数据输出)连接在一起作为单一的I/O引脚,它与CE、SCLK组成3线模式。SERMODE接VCC,选择SPI通信模式,具体操作可查阅有关资料。

INT0、INT1提供两个可编程的中断报警信号,可通过串行总线访问和设定秒、分、时、星期的报警时间。

X1、X2引脚直接连接标准的32.768kHz晶振,无需外接其它元件。如实时时钟有误差,可以在振荡器两端并接6pF电容进行调整。

1.2 操作方式

DS1305共有148个用户RAM,其读操作地址与写操作地址空头分开,当其高位为1时,为写操作地址空间,0为读操作地址。除实时时钟、日历寄存器和通用寄存器之外,还有作一般数据存储器用的96字节的.NVRAM。对DS1305操作之前,必须对控制寄存器、状态寄存器、涓流充电寄存器进行初始化。

以下为控制寄存器(0F读,8F字):

76543210EOSCWP000INTCNAIE1AIE0

EOSC:设置为0使振荡器开始工作,设置为1,DS1305处于低功耗闲置状态。WP:写保护位,上电初始化后,WP位处于三态,在任何写操作之前,该位必须清零。INTCN:中断控制位,控制两个中断之间的联系,置位后两个中断引脚INT0、INT1分别响应各自的中断(需中断使能),清零后,中断1、2报警时间匹配都只能引发INT0输入低电平,INT1无效。ALE0、ALE1置1时中断0、1使能。