shenhaiyu 发表于 2012-10-19 14:32:15

DS1302和超级电容构成的电源备份电路【转载】

本文 将介绍实时时钟DS1302与超级电容的应用实例,有助于设计人员使用超级电容完成时钟保持、数据保持等电路的设计。
---Dallas半导体公司的DS1302涓流充电时钟芯片是一个可编程3线串行接口时钟芯片,可用超级电容或可充电电池备份系统的时间和日期,
还提供31字节的非易失SRAM用于数据存储。由DS1302和超级电容构成的电源备份电路如图1所示:

DS1302的VCC2接主电源,VCC1接超级电容正极。针对不同的电源备份系统,如可充电的镍氢电池、镍镉电池,还有容量不同的超级电容,DS1302专门提供了可编程涓流充电电路,以适应不同的充电电流要求,充电电路如图2所示:

通过设置电路内的DS和RS控制位,可设置不同的最大充电电流IMAX。例如控制字是10100101,则表示选通了一只二极管,同时选通阻值为2kΩ的R1,IMAX计算公式如式1,式中的VDrop是二极管的电压降。
IMAX=(VCC2-n·VDrop)/R n=1,2 (1) 表1列出了IMAX计算值,对应VCC2的值是4.5V、5.0V、5.5V,有1只二极管和2只二极管两种情况,电阻值为2kΩ、42kΩ和82kΩ。  充电过程  作为电源备份的元件,超级电容的充、放电特性是关注的重点,结合DS1302的可编程充电电路,在下面给出充电时电压V(t)及电流I(t)与时间的函数及放电时电压V(t)与时间的函数。 超级电容端电压与时间的函数可表示为式2。 V(t)=VMAX (2) V(t)为超级电容端电压,VMAX等于VCC2减去n·VDrop,R为内部涓流充电电阻,C是超级电容的容量。超级电容两端电压充电到VMAX的95%所需时间见表2。 充电电流与时间的函数可表示为式3。 I(t)=VMAX/R·e(-t/RC) (3) I(t)为充电电流。 超级电容充电特性曲线如图3所示:

放电过程 要知道DS1302使用超级电容放电的时间,则需要了解DS1302的特性参数ICC1T(时间保持电流),ICC1T呈线性变化,这意味着DS1302可以表示为阻性负载RL,超级电容通过此负载来放电。根据DS1302数据手册,在VCC1为2.5V时,ICC1T为0.3μA,这样RL约为8.3MΩ。在不考虑超级电容自放电影响的情况下,超级电容放电特性可表示为式4。 V(t)=VMAX·e(-t/RLC) (4) RL为DS1302负载阻抗。电容放电至2V,根据上面公式计算的放电时间值见表3。 超级电容放电电压特性曲线见图4:

suoma 发表于 2016-11-22 14:23:26

只是保持,如果我再上电后还要他校正为当前时间,有什么办法?

suoma 发表于 2016-11-22 14:30:04

只是保持,如果我再上电后还要他校正为当前时间,有什么办法?

suoma 发表于 2016-11-22 14:32:34

只是保持,如果我再上电后还要他校正为当前时间,有什么办法?

shenhaiyu 发表于 2017-1-12 17:07:03

suoma 发表于 2016-11-22 14:32
只是保持,如果我再上电后还要他校正为当前时间,有什么办法?

那就写程序修改DS1302的寄存器来矫正时间啊

suoma 发表于 2017-1-12 19:36:46

shenhaiyu 发表于 2017-1-12 17:07
那就写程序修改DS1302的寄存器来矫正时间啊

这个单单不是软件的事情,应该有硬件参与吧,怎么矫正?怎么和当前时间比较?

shenhaiyu 发表于 2017-6-13 12:06:44

suoma 发表于 2017-1-12 19:36
这个单单不是软件的事情,应该有硬件参与吧,怎么矫正?怎么和当前时间比较?

联网,或者从别的途径获取时间,比如电波钟模块

1529835644 发表于 2017-7-5 08:49:23

推荐楼主用DS3231比DS1302更加准

1529835644 发表于 2017-7-5 08:49:37

也贵不了多少钱

shenhaiyu 发表于 2017-9-15 13:21:22

1529835644 发表于 2017-7-5 08:49
也贵不了多少钱

现在不用这一些列了,另外发现 SD2405 这个芯片非常好用
页: [1]
查看完整版本: DS1302和超级电容构成的电源备份电路【转载】