SD2000RAM系列(含SD2000A/SD2001A/SD2002A)是一种具有内置晶振、支持I2C总线接口的高精度实时时钟芯片。该系列芯片可保证时钟精度为±4ppm(在25±1℃下),即年误差小于2分钟;该芯片可内置电池、串行NVSRAM,其中内置一次性电池可保证在外部掉电情况下时钟使用寿命超过五年,内置充电电池在一次充满情况下可保证内部时钟走时时间超过一年以上(可满充200次);内置串行NVSRAM为非易失性SRAM,擦写次数可达100亿次。该系列芯片可满足对实时时钟芯片的各种需要,有工业级产品可供选择,是在选用高精度实时时钟时的理想选择。
n 主要性能特点: l 低功耗:典型值1.0μA(VDD=3.5V)。 l 工作电压:3.0~5.5V(其中NVSRAM在4.5~5.5V工作),工作温度:民用级0℃~70℃,工业级-40℃~85℃。 l 年、月、日、星期、时、分、秒的BCD码输入/输出。 l 自动日历到2099年(包括闰年自动换算功能)。 l 可设定的两路闹钟(定时)及32768Hz~1Hz的方波信号输出。 l 内置稳压电路及电源掉电检测电路。 l 内置电源管理电路,当VDD≥3.0V时,内部电池不耗电。 l 内置充电电路(SD2001系列),总电量超过1.6Ah,保证时钟使用寿命超过10年或更长时间。 l 内置4kbit~256kbit的非易失性SRAM(B/C/D/E型),其擦写次数100亿次,且没有内部写延时。 l 内置晶振,出厂前已对时钟进行校准,保证精度±4ppm,即时钟年误差小于2分钟(在25±1℃下)。 l 小体积封装形式SD2002系列可供选择:八脚单列封装(内部不带电池)。 n 型号列表 表1SD2000RAM系列选型表 标准型 SD2000系列 | | | | | | | | | | | | | | | | | | | | | | | | l 内置一次性电池,在外部掉电情况下内部时钟走时时间为5-10年。 l 24脚DIP封装形式 l | l 内置充电电路和充电电池,充满一次可保持内部时钟走时时间超过一年以上,可满充电次数达200次。 l 24脚DIP封装形式 | l 无内置电池。 l 八脚单列封装形式 l 体积小:23×7×12mm3。
|
| 注:各型号均有工业级,其尾缀加“I”以示区分,如“SD2000API”为SD2000A的工业级,“P”标志为直插封装形式。
n 管脚设置

图1SD2000系列管脚图 表2 SD2000系列管脚功能表
标号 | | | | 外加备用电池引脚
| 针对SD2000系列,由于在模块内部有电池,故在其电池能量未耗尽之前不接
| | 测试
| 内部电池电压检测脚(通常不接)
| | 打开/关闭SRAM,此管脚在接高电平为关闭SRAM,接低电平时打开SRAM。
| 此功能脚主要用来降低芯片整体功耗
| | 串行时钟输入脚,由于在SCL上升/下降沿处理信号,要特别注意SCL信号的上升/下降升降时间,应严格遵守说明书。
| CMOS输入(与VDD间无保护二极管
| | 串行数据输入/输出脚,此管脚通常用一电阻上拉至VDD,并与其它漏极开路或集电器开路输出的器件通过线与方式连接.
| N沟道开路输出(与VDD间无保护二极管)CMOS输入
| | SRAM串行数据输入/输出脚,此管脚通常用一电阻上拉至VDD,通过线与方式与其它在I2C总线上的器件连接。
| N沟道开路输出
| | SRAM串行数据时钟脚。数据在此管脚的上升沿/下降沿按时序输入/输出。
| CMOS输入
| | 实时时钟与串行SRAM的串行数据输入/输出脚,此管脚通常用一电阻上拉至VDD,通过线与方式与其它在I2C总线上的器件连接。
| 此管脚通过CPU所发送的指令来区别其功能(仅SD2002系列具有)。
| | 实时时钟与串行SRAM的串行数据时钟脚,数据在此管脚的上升沿/下降沿按时序输入/输出。
| 此管脚通过CPU所发送的指令来区别其功能(仅SD2002系列具有)。
| | 报警中断1输出脚,根据中断寄存器与状态寄存器来设置其工作的模式,当定时时间到达时输出低电平或时钟信号。它可通过重写状态寄存器来禁止
| N-沟道开路输出(与VDD端之间无保护二极管)
| | 报警中断2输出脚,根据中断寄存器与状态寄存器来设置其工作的模式,当定时时间到达时输出低电平或时钟信号。它可通过重写状态寄存器来禁止
| N-沟道开路输出(与VDD端之间无保护二极管
| | 正电源
|
| | 3.3V稳压输出脚,当VDD≥3.4V时有效
| 可供电流≤30mA,电压精度3.3V±2%.
| | 负电源(GND)
|
|

注:以上各图中SDA,INT1,INT2对VDD上拉电阻均未标出,实际应用中要加上。
n 实时时钟电路(适用于SD2000全系列) 1.串行接口 SD2000系列的实时时钟部分通过基于I2C总线的串行接口方式去接收各种命令并读写数据。基于I2C总线传输方式描述如下: (1)开始条件 当SCL处于高电平时,SDA由高电平变成低电平时构成一个开始条件,对SD2000的实时时钟部分的所有操作均必须由开始条件开始。 (2)停止条件 当SCL处于高电平,SDA由低电平变成高电平构成一个停止条件,此条件发生时对SD2000的实时时钟部分的所有操作均停止。 图3 实时时钟部分串行接口 (3)数据传输 当SCL为低电平,且SDA线电平变化时,则数据由CPU传输给SD2000;当SCL为高电平,且SDA电平变化时,SD2000收到一个开始或停止条件。 图4 实时时钟数据传输时序 (4) 确认 数据传输以8位序列进行。SD2000在第九个时钟周期时将SDA置位为低电平,即送出一个确认信号(Acknowledgebit,以下简称“ACK”),表明数据已经被其收到。 图5 实时时钟确认信号 2. 操作指令:当CPU发出开始条件与实时时钟部分建立连接后,CPU通过SDA总线连续输出4位器件地址,3位操作指令和1位读/写指令。 (1) 器件代码: 其中高四位称“器件代码”,它代表实时时钟部分的器件地址,固定为“0110”。 表3 实时时钟器件代码 (2)由三位操作指令共构成对实时时钟部分操作的八条指令: 表4实时时钟指令表 C2
| C1
| C0
| | | | | | 复位(00(年),01(月),01(天),0(星期)00(分),00(秒)(*1)
| | | | | 状态寄存器存取
| | | | | 实时数据读写方式1(从年数据开始)
| | | | | 实时数据读写方式2(从小时数据开始)
| | | | | 报警中断/频率设置1(INT1脚)
| | | | | 报警中断/频率设置2(INT2脚)
| | | | | 测试模式开始(*2)
| | | | | 测试模式结束(*2)
| |
注意:(*1)使用该命令时,可以不管R/W位的值。 (*2)这是一条供IC测试的特殊用途指令,一般不用。 (3)一位读/写指令R/W指明对实时时钟部分进行何种操作(读或写)。 表5 实时时钟操作模式 3. 寄存器 实时时钟部分共包括四个寄存器:实时数据寄存器,状态寄存器,两组报警时间/频率设置寄存器。 (1) 实时数据寄存器 实时数据寄存器是一个56位的存储器,它以BCD码方式存贮,包括年、月、日、星期、时、分、秒的数据。实时数据的读/写操作都通过发送或接收年(实时数据读写方式1)或小时(实时数据读写方式2)数据的第一位“LSB”开始执行的。 年数据(00~99):设置最后两位数字(00~99),通过自动日历功能计至2099年。 月数据(01~12)每月包含天数通过自动日历功能来更改。 1,3,5,7,8,10,12:1~31 4,6,9,11: 1~30 2(闰年):1~29 2(普通):1~28 日数据(01~31) 星期数据(00~06):七进制计数器, 00对应星期天,01对应星期一,依次类推. 小时数据(00~23或00~11) 12小时进制0:AM,1:PM 对于24小时进制,这一位没有意义但芯片内部必须将其设置为“0”或”1” 分数据(00~59) 秒数据(00~59)与测试标志 TEST位:在测试模式变为”1” 图6 实时时钟实时数据寄存器 特别注意:在24小时制式下,读取实时数据时一定要屏蔽小时的最高位(MSB)至0. (1) 状态寄存器 状态寄存器是一个8位寄存器,它允许你用来显示和设置不同的模式,其中“Power”是只读位,其它均可读/写。
B7 Power在上电时或在电源电压改变时(小于VDET),电源电压检测电路工作,此位置为”1”。该位一旦置为“1”,即使电源电压达到或超过检测电压,此位也不会变为“0”,而必须通过操作指令中的复位命令才能使之复“0”。本标志位为只读位。 B6 12/24:本标志用于设置12小时制或24小时制: 0:(12小时制); 1:(24小时制) B5 INT1AE;B4 INT2AE:此位用于设置从INT1脚(或INT2脚)输出的报警中断的状态。通过INT1(INT2)寄存器来设置报警时间。 0:报警中断输出禁止; 1:报警中断输出允许。 B3 INT1ME;B2 INT2ME:此位用于设置从INT1脚(或INT2脚)的输出为每分钟边沿中断或每分钟固定中断。如设为每分钟固定中断输出,需将INT1ME和INT1FE(或INT2ME和INT2FE)均置为1。 0:报警中断或可选频率的固定中断输出; 1:每分钟边沿中断或每分钟固定中断输出 B1 INT1FE;B0 INT2FE:此位用于设定INT1脚(或INT2脚)的输出为每分钟固定中断(周期一分钟,占空比50%)或可选频率的固定中断。如果可选频率的固定中断输出被允许时,INT1寄存器(或INT2寄存器)是用来存放频率数据的寄存器。 0:报警中断或每分钟边沿中断输出; 1:每分钟固定中断输出或可选频率的固定中断输出 (3)两组报警时间/可选频率设置寄存器 有两组16位报警时间/可选频率设置寄存器,用于设置报警时间或可选频率,它们由INTxAE与INTxFE控制。其中寄存器上的AM/PM标志位必须同12小时制或24小时制相对应,否则设定的小时数将与报警数据不匹配。该寄存器为只写寄存器。 A. INTxAE=1时, INT1和INT2寄存器用来存放报警时间数据,其格式用BCD码代表小时与分钟,与实时数据寄存器中的小时和分钟寄存器设置相同。同样,数据设置必须与在状态寄存器中的12小时制或24小时制一致,不要设置任何不存在的时间。 (4)测试标志位 测试标志位是一个一位长的寄存器,它分配在实时数据寄存器中秒数据的MSB位。如果收到测试模式开始命令,则该位被置为”1”。当该位为”1”时,你必须送入测试模式结束命令或复位命令才可清此位为”0”。 4.初始状态: (1) 在出厂时 在出厂之前,对SD2000已做了时间和状态寄存器设置(没有内置电池的型号如SD2002除外):时间为北京标准时间,状态寄存器值为“00h”、INT1和INT2寄存器的值均为“0000h”,即状态寄存器的第7位(电源标志位)为”0”,且禁止INT1脚和INT2脚输出信号。 实时寄存器:当前的北京时间,xx(年),xx(月),xx(日),x(星期),xx(时),xx(分),x(秒) 状态寄存器:“00h”,INT1寄存器:“0000h”,INT2寄存器:“0000h” (2) 没有内置电池的型号(SD2002)在上电时 SD2002在上电时,状态寄存器值为“82h”、INT1寄存器的值为“8000h”,即状态寄存器的第7位(电源标志位)为1,INT1脚输出1HZ的时钟信号。 实时寄存器:00(年),01(月),01(日),0(星期),00(时),00(分),00(秒) 状态寄存器:“82h”,INT1寄存器:“8000h”,INT2寄存器:“0000h” SD2002上电后, 通常要发复位命令给SD2002来清电源标志位(参见本节第4). (3) 在内部电池欠压时 在内部电池电压欠压时,实时时钟中的电源电压检测电路工作并将内部状态寄存器的第7位(电源标志位)置为”1”,此种情况一般需要SD2000出厂五年至十年时间才会出现。当状态寄存器的第7位置为”1”后,即使电源电压达到或超过检测电压时,该值也一直保持不变。这说明内部电池已不能保存时间数据,需要更换芯片SD2000或从SD2000的VBAT脚加3V电池继续使用。 (4) 收到复位命令时 当接收到复位命令时,各寄存器将变为如下值: 实时数据寄存器:00(年),01(月),01(天),0(星期),00(时),00(分),00(秒) 图11 实时时钟初始化 5. 读/写数据 (1)读数据 当检验到开始条件后,实时时钟接收器件代码和命令。当读/写位为”1”时,此时进入实时时钟读取模式或状态寄存器读取模式。无论上述哪一种方式,数据均是从LSB依次输出。 i. 读取实时时钟数据1 (2) 写数据 当检测到开始条件后,实时时钟开始接收器件代码和命令。当读/写位为“0”时,此时进入实时时钟数据写模式或状态寄存器写模式,数据必须按顺序从LSB位开始依次输入。在实时时钟数据写入时,如有ACK信号紧跟着实时时钟数据写命令,则日历和时间计数器将被复位,并将停止内部时间累加操作。继续接收完分钟数据及秒数据,此时月末数据将被修正。当SD2000接收完秒数据同时发出ACK信号给CPU,从此新的计时开始。 i. 实时数据写入1 (3)不存在的数据与月份末数据的处理: 当写入实时时钟数据时,SD2000确认它并处理那些无效数据且做月末校正: http://www.whwave.com.cn下载
|