选择一个二极管和一个电阻(2K) 充电电流约 2.2mA DS1302属于涓流充电,所以充电电流小,一个3.6V/80mA的充电电池使用2.2mA充满约36个小时 涓流充电控制器 2-3位: DS=01 为一个二极管 0-1位: RS=00 无电阻,不能充电
图1给出了典型的涓流充电器电路,规定涓流充电器寄存器的高四位用于使能涓流充电器,低四位用于选择二极管压差和限流电阻。下图中,可以在充电通路插入二极管,也可以不使用二极管,可选择的电阻值为250Ω、2kΩ或4kΩ。有些器件提供了不同的二极管和电阻配置。
电容连接在VBACKUP与地之间(图2)。 用户根据所需要的{zd0}充电电流选择二极管和电阻。 计算充电电流 {zd0}充电电流可按以下方法计算:假设3.3V的系统电源加在VCC上,涓流充电器已经使能,没有使用二极管、选择了2kΩ电阻。当电容电压为零时可以计算出{zd0}充电电流: IMAX = (VCC - 二极管压差)/R2 = (3.3V-0V)/R2 ≈ (3.3V-0V)/2kΩ ≈ 1.65mA 随着VBACKUP电压的升高,充电电流逐渐减小。 计算备份时间 下面,我们需要计算所需要的电容值。给定所要求的备份时间,我们还需要了解其他几个参数:电容的起始电压和最终电压、从电容吸取的电流以及电容值。 假设工作在VBACKUP时,RTC消耗固定的电流,可利用下式计算出最差工作条件下的备份时间,用小时表示: C(VBACKUPSTART - VBACKUPMIN)/IBACKUPMAX/3600 式中,C是电容值,单位为法拉。 VBACKUPSTART是初始电压,单位为伏特。作用在VCC上的电压, 去掉二极管的压降,用于充电电路。 VBACKUPMIN是最终电压,单位为伏特(振荡器的{zd1}工作电压)。 IBACKUPMAX是数据资料中给出的{zd0}VBACKUP电流,单位为安培。 如果:C = 0.2F、VBACKUPSTART = 3.3V、VBACKUPMIN = 1.3V、IBACKUPMAX = 1000nA, 则: 小时 = 0.2(3.3-1.3)/(1e-6)/3600 = 0.2(2.0)(1e-6)/3600 = 111.1 如果我们需要了解典型的备份时间,应该用IBACKUP典型值替代IBACKUP{zd0}值。 因此,如果VBACKUP为3.3V (典型值)、IBACKUP为600nA (典型值), 则: 小时 = 0.2(3.3-1.3)/(600e-9)/3600 = 0.2(2.0)(600e-9)/3600 = 185.2 上述计算假设IBACKUP是固定的,不考虑VBACKUP电压。Dallas/Maxim RTC的振荡器很像一个电阻,所以,备份电流随着备份电压的降低而减小。可以计算出更接近实际情况的备份时间。 图3. 放电电路 按照基础电子学,可由下式确定任意时刻的电容电压(放电电路如上图所示):V(t) = E(e-τ/RC) 其中,τ为时间,单位为秒 E为初始电压,单位为伏特 V为最终电压,单位为伏特 R为负载电阻,单位为欧姆 C为电容值,单位为法拉 整理上式,可以解得t: -ln(V/E)(RC) = t 从RTC数据资料, 我们可以查到振荡器的最小工作电压以及{zd0}VBACKUP电流(IBACKUP)。为了估算负载电阻,R, 我们用数据资料中的{zd0}VBACKUP除以{zd0}IBACKUP (因为{zd0}电流发生在{zd0}输入电压情况下)。本例中,VBACKUP{zd0}值为3.7V,IBACKUP{zd0}值为1000nA, 结果为3.7/1e-6或3,700,000欧姆。假设电容值为0.2F,已充电到3.3V, IBACKUP{zd0}电流为1000nA, 振荡器{zd1}工作电压为1.3V, 备份时间计算如下:
-ln(VBACKUPMIN/VBACKUPMAX)(VBACKUPMAX/IBACKUPMAX) =
改变电容值C,可以确定备份电容供电时的运行时间。 这些计算可利用完成。 超级电容计算器可以实现上述三个公式的计算。
CH: 时钟停止位 寄存器2的第7位12/24小时标志 CH=0 振荡器工作允许 bit7=1 12小时模式 WP: 写保护位 寄存器2的第5位:AM/PM 定义 WP=0 寄存器数据能够写入 AP=1 下午模式 |