利用实时时钟IC RV5C338A实现用软件校正时间

2010年06月25日 16:20    发布者:techieboy
概述

我们知道,实时时钟IC一般把它产生的时间信号传递给微处理器等一类器件,作为它们的时钟信号。通常,由频率为32.768kHz晶振产生时钟信号,将该时钟信号进行1/215分频后形成秒信号,由时钟计数器对秒信号进行计数。

既然是处理时间信号,它的精度就成为人们十分关心的事情。晶体振荡器具有很高的频率精度,与RC振荡器和陶瓷振荡器相比,其精度要高两个数量级以上。另外同一型号产品之间的离散性也比较小,在常温下只有±20ppm的偏差,不过将±20ppm换算成月差,则为:
±20×10-6×60×60×24×30=±51.8秒

如果用这样的精度来细分时间的话,在一个月内,时钟的偏差将接近1分钟。为了实现令人满意的计时精度,必须要进行调整。

普通实时时钟IC存在的问题

通常在调整用于实时时钟IC的晶振频率时,首先要如图1那样设置一个微调电容器。通过调整两个电容或其中一个电容来调整振荡频率,其频率的可调范围在几十个ppm左右。但是这种调整方法存在下述两个问题:



图1:一般的实时时钏IC振荡电路

● 批量生产时,必须由人工来调整微调电容的容量,因而难以实现自动化。

● 要定量地把握调整量十分困难。

电路特点

RV5C338A是理光公司近期推出的,可以由软件来校正振荡频率的实时时钟IC,RV5C338A的主要技术指标如下:

  ● CPU接口电源电压:2.5~5.5V
  ● 时钟电源电压:1.45~5.5V
  ● CPU接口:串行三线式
  ● 时钟耗电:0.35μA(VDD=3V)
  ● 外型尺寸:2.9×4.0×1.2mm

所谓CPU接口电源电压,是指CPU与为了访问CPU的RTC的电源电压。而所谓时钟电源电压,是指即使不能访问CPU,RTC内部时钟仍可以正常工作的电源电压。

工作原理

在通常情况下,将32768Hz的时钟信号进行1/32768分频后构成秒信号,然后如图2那样,将这一分频比每20秒钟刷新一次,其改变的范围为32768±124Hz,从而可以改变秒信号的时间长度。分频比的调整可以在寄存器中设定,例如分频比大于32768时,时钟走时就慢,减小分频比可以使它走快。这个调整范围如果按时钟的精度进行换算,则相当189ppm(月差约±490秒)。用这样的软件来校正时间有下述优点:


图2:时间误差的较正方法

● 批量生产时容易实现自动化

● 几乎不存在外接元件随时间变化的影响

● 可以正确地把握调整量并实现控制,例如可以进行这样的调整:时钟一天内快3秒,则可以将它调慢3秒。

电路说明

图3为RV5C338A的内部框图。为了通过设定寄存器的值来调整时钟的快慢,片内设置了稳定振荡频率的电容器。



图3:RV5C338A的内部框图


图4:使用RV5C338A的电路实例

图4是RV5C338A的应用电路实例。图中D1、D2组成后备系统切换电路,它由二极管构成“或”门电路。这里二极管应使用正向电压VF小于0.3V(IF=100μA时)的器件,如果大于0.3V的话,则将有一个超过(VDD+0.3V)的电压加到SIO端口上,严重时将会损坏RTC。

另外,VF越是小的二极管,其反向电流就越大,因此接入后备系统时的漏电流也越大。在图4中使用了反向电流为1μA的RB520S-30,从理论上计算,常温下备用系统可以使用10年以上。晶振采用C-001R,振荡频率为32768Hz,后备电池使用常用的CR2025,电阻R为限流电阻,二极管D1损坏时它起着保护备用电池的作用。

目前,具有同RV5C338A相同封装的器件有三种,它们都可以同串行接口连接:

  ● RV5C348A/B:4线式串行接口
  ● RV5C338A/RV5C339A:3线式串行接口
  ● RV5C386A/RV5C387A:I2C总线接口