两线式带温补的实时时钟 IC Ver 1.30
SD3088 内置晶振、全温度补偿的高精度实时时钟 IC
SD3088
1.概述
SD3088 是一种具有标准 IIC 接口的实时时钟芯片,CPU 可使用该接口通过 7 位地址寻址来读写片
内 122 字节寄存器的数据(包括时间寄存器、报警寄存器、控制寄存器、电池电量寄存器、70 字节的
用户 SRAM 寄存器及 8 字节的 ID 码寄存器)。
SD3088 内置晶振及数字温度补偿,用户可以不用顾虑因外接晶振、谐振电容等所带来的元件匹
配误差问题、晶振温度特性问题及可靠性问题,实现在常温及宽温范围内不需用户干预、全自动、高
可靠计时功能。
SD3088 内置定时/报警中断输出脚和独立的 32K 输出脚,报警中断时间最长可设至 100 年。
SD3088 具有一个后备电池输入脚 VBAT,内部的充电电路可对外接的充电电池进行智能充电,也可
对电池电量进行检测和欠压报警指示。
SD3088 内置 8 字节的 ID,每一颗芯片具备唯一的身份识别码。
SD3088 软件向下兼容 SD2068、SD2400。
2.特性
低功耗: 0.6μA 典型值(VBAT =3.0V,Ta=25℃)。
工作电压:2.3V~5.5V,工作温度为-40℃~+85℃。
标准 IIC 总线接口方式,最高速度 400KHZ(4.5V~5.5V)。
年、月、日、星期、时、分、秒的 BCD 码输入/输出,并可通过独立的地址访问各时间寄存器。
闰年自动调整功能(从 2000 年~2099 年)。
可选择 12/24 小时制式.
内置年、月、日、星期、时、分、秒共 7 字节的报警数据寄存器及 1 字节的报警允许寄存器,
共有 96 种组合报警方式,并有单事件报警和周期性报警两种中断输出模式,报警时间最长可设
至 100 年。
周期性频率中断输出:从 4096Hz~1/16Hz……1 秒共十四种方波脉冲.
自动重置的三字节共 24 位的倒计时定时器,可选的 4 种时钟源(4096HZ、1024HZ、1 秒、1 分钟),
最小定时为 244us,最长定时可到 31 年,通过计算可获得较精确的毫秒级定时值。
5 种中断均可选择从 INT 脚输出,并具有 4 个中断标志位.
内置 70 字节通用 SRAM 寄存器可用于存储用户的一般数据。
具有可控的 32768HZ 方波输出脚 F32K,可以位允许/禁止 32K 输出。
内置 8bit 转换结果的数字温度传感器,为了节省电池电量消耗,设为 VDD 模式下 60S 间隔测温
一次,电池模式 600S 间隔测温一次。
内置晶振和谐振电容,芯片内部通过高精度补偿方法,实现在宽温范围内高精度的计时功能,
其中 25℃精度<±2ppm。
具有一次性或充电的后备电池输入脚 VBAT ,其内部的 3.3V 稳压充电电路可选择性地对外接的充
电电池进行自动充电,内置的充电限流电阻可位选 2KΩ、5KΩ和 10KΩ三种。
内置电池电压检测功能,可读取当前电池电压值(三位有效数),设置高低电池报警电压值并从
INT 脚输出中断。
芯片依据不同的电压自动从 VDD 切换到 VBAT或从 VBAT切换到 VDD。当芯片检测到主电源 VDD 掉到 2.4V
电压以下且 VDD 小于 VBAT,芯片会转为由接在 VBAT 的后备电池供电;当 VDD 大于 VBAT 或 VDD 大于 2.4V,
- 1 -
SD3088
两线式带温补的实时时钟 IC Ver 1.30
则芯片会转为由 VDD 供电。(内置电源模式指示位 PMF,VDD 模式时 PMF=0,VBAT 模式时 PMF=1)。
内置 8 字节的 ID 码,芯片出厂之前设定的、全球唯一的身份识别码。
内置 IIC 总线 0.5 秒自动复位功能(从 Start 命令开始计时),该功能可以避免 IIC 总线挂死问
题。
内置三个时钟数据写保护位, 避免对数据的误写操作,可更好地保护数据。
内置软件可控 VBAT 模式 IIC 总线通信禁止功能(BATIIC=0,VBAT模式下禁止 IIC 通信;BATIIC=1,
VBAT 模式下允许 IIC 通信.上电默认值 BATIIC=0),从而避免在电池供电时 CPU 对时钟操作所消耗
的电池电量,也可避免在 VDD 上、下电的过程中因 CPU 的 I/O 端口所输出的不受控的杂波信号
对时钟芯片的误写操作,进一步提高时钟芯片的可靠性。
内置上电指示位 RTCF,当包括电池在内的所有电源第一次上电时该位置 1。
内置电池电压欠压指示位 BLF,当电池电压低于 2.2V 时 BLF 位置 1。
内置停振检测位 OSF,当内部振荡器停止振荡时该位置 1。
芯片管脚抗静电(ESD)>2KV。
芯片在兴威帆的评估板上可通过 4KV 的群脉冲(EFT)干扰。
CMOS 工艺
封装形式:SOP16(宽度 300mil)。
3. 管脚定义
SD3088/3098 管脚功能表
- 2 -
SD3088
两线式带温补的实时时钟 IC Ver 1.30
名称
VBAT
GND
SDA
功能
特征
备用电池输入脚,内置稳压及充电电流可选的充电
2.3V~3.6V,不用时应将其
电路。
负电源(GND)
接 GND.
串行数据输入/输出脚,此管脚通常用一电阻上拉
N 沟道开路输出, CMOS 输入;
至 VDD,并与其它漏极开路或集电器开路输出的器
当 VBAT 引脚的后备电源被激
件通过线与方式连接.
活时,该引脚被禁止.
串行时钟输入脚,由于在 SCL 上升/下降沿处理信
CMOS 输入. 当 VBAT 引脚的后
SCL
号,要特别注意 SCL 信号的上升/下降升降时间,
备电源被激活时,该引脚被
应严格遵守说明书。
禁止.
报警中断输出脚,根据控制寄存器来设置其工作的
N-沟道开路输出
INT
F32K
模式,它可通过重写控制寄存器来禁止.
32KHZ 频率输出脚
TESTIN
工厂内部测试之用
TESTOUT
工厂内部测试之用
VDD
正电源
开漏输出
请将其接地
请将其接地
2.3V~5.5V
4.基本功能定义
4.1 寄存器列表
地
址
00H
01H
02H
03H
04H
05H
06H
07H
08H
09H
0AH
0BH
0CH
0DH
0EH
0FH
10H
11H
寄存器段
寄存器名
称
秒
分钟
小时
星期
日
月
年
秒报警
分钟报警
小时报警
星期报警
日报警
月报警
年报警
报警允许
CTR1
CTR2
CTR3
实时时钟寄存
器
时间报警
寄存器
控制寄存器
D7
0
0
12_/
24
0
0
0
Y80
0
0
0
0
0
0
AY7
0
WRTC3
WRTC1
INTS1
INTS0
FOBAT
INTDE
INTAE
INTFE
ARST
F32K
TDS1
TDS0
FS3
FS2
FS1
FS0
- 3 -
D6
S40
MN40
0
0
0
0
Y40
AS40
D5
S20
MN20
H20
P/A_
0
D20
0
Y20
AS20
BIT
D4
S10
D3
S8
MN10
MN8
H10
0
D10
MO10
Y10
AS10
H8
0
D8
MO8
Y8
AS8
D2
S4
MN4
H4
W4
D4
MO4
Y4
AS4
D1
S2
MN2
H2
W2
D2
MO2
Y2
AS2
D0
S1
MN1
H1
W1
D1
MO1
Y1
AS1
AMN40
AMN20
AMN10
AMN8
AMN4
AMN2
AMN1
AH10
AH8
AH4
AH2
AH20
AP/A_
AW5
AD20
0
AY5
EAMO
AW4
AD10
AW3
AD8
AW2
AD4
AMO10
AMO8
AMO4
AY4
EAD
AY3
EAW
BLF
AY2
EAH
WRTC2
INTAF
INTDF
AH1
AW0
AD1
AMO1
AY0
EAS
RTCF
AW1
AD2
AMO2
AY1
EAMN
PMF
0
AW6
0
0
AY6
EAY
OSF
IM
数值范围
复位值
(十进制)
(二进制)
0-59
0-59
XXXX-XXXX
XXXX-XXXX
0-23
XXXX-XXXX
0-6
1-31
1-12
0-99
0-59
0-59
XXXX-XXXX
XXXX-XXXX
XXXX-XXXX
XXXX-XXXX
0000-0000
0000-0000
0-23
0000-0000
N/A
1-31
1-12
0-99
N/A
N/A
N/A
N/A
0000-0000
0000-0000
0000-0000
0000-0000
0000-0000
0000-0000
0000-0000
0000-0000
SD3088
两线式带温补的实时时钟 IC Ver 1.30
25℃TTF
1ppm/3p
F6
F5
F4
F3
F2
F1
F0
N/A
0000-0000
(只读
RAM)
倒计时定
时器
未开放
-
pm
TD7
TD15
TD23
-
IIC 控制寄存
器
AGTC
BATIIC
充电寄存器
CHARGE
ENCH
TD6
TD14
TD22
-
0
-
TD5
TD13
TD21
-
TD4
TD12
TD20
-
BSY
CONT
-
-
TD3
TD11
TD19
-
-
-
TD2
TD10
TD18
-
-
-
INTS_E
INTS_E
CONT_B
TD1
TD9
TD0
TD8
0-255
0000-0000
0-255
0000-0000
TD17
TD16
0-255
0000-0000
-
-
-
-
0-255
xxxx-xxxx
0-255
0000-0000
CH1
CH2
0-255
0000-0000
12H
13H
14H
15H
16H
17H
18H
19H
扩展控制寄存
1
0
AT
CTR4
INTS_E2
INTTHE
INTTLE
INTBHE
INTBLE
0-255
0000_0000
1AH
器
CTR5
BAT8_VA
L
SYS
OSC_RD
Y
BHF
BLF
0-255
0000_0000
电池电量
BAT_VAL
0-255
0000_0000
BAT7_VA
BAT6_V
BAT5_V
BAT4_V
BAT3_V
BAT2_V
BAT1_V
BAT0_VA
未开放
-
用户 RAM
(70bytes)
L
-
AL
-
AL
-
AL
-
AL
-
AL
-
AL
-
L
-
N/A
xxxx_xxxx
BIT7
BIT6
BIT5
BIT4
BIT3
BIT2
BIT1
BIT0
XXXX-XXXX
ID(只读)
(8Bytes)
BIT7
BIT6
BIT5
BIT4
BIT3
BIT2
BIT1
BIT0
N/A
XXXX-XXXX
1BH
1CH
~
2BH
2CH
~
71H
72H
~
79H
- 4 -
SD3088
两线式带温补的实时时钟 IC Ver 1.30
4.2 实时时钟数据寄存器(00H~06H)
实时时钟数据寄存器是 7 字节的存储器,它以 BCD 码方式存贮包括年、月、日、星期、时、分、
秒的数据。
年数据[06H 地址](00~99):设置千年(20XX)的后两位数字(00~99),通过自动日历功能计至 2099
年。(注意: 2000 年为闰年)
月数据[05H 地址(01~12): 每月包含的天数通过自动日历功能来更改。
1,3,5,7,8,10,12: 1~31
4,6,9,11: 1~30
2(闰年): 1~29
2(普通): 1~28
日数据[04H 地址](01~31)
星期数据[03H 地址](00~06):七进制计数器,00 对应星期天,01 对应星期一,依次类推.
小时数据[02H 地址](00~23 或 01~12):
小时的最高位 12_/24 是 12 或 24 小时制选择位。
当 12_/24=1 时,24 小时制; 当 12_/24=0 时, 12 小时制。
12 小时制时,H20 为 AM/PM 指示位,H20=0 为 AM,H20=1 为 PM,
见下表:(位 H20H10H8H4H2H1)
注意: 当读取小时数据时,要屏蔽掉小时的最高位 12_/24,否则在 24 小时制时会因为
12_/24=1 而显示不对.
分数据[01H 地址](00~59) 秒数据
[00H 地址](00~59)
例如: 设置时间为 2006 年 12 月 20 日星期三 18 点 19 分 20 秒(24 小时制),则寄存器 00~07H 的
赋值应分别为 20h、19h、98h、03h、20h、12h、06h。要特别注意此处小时位的赋值,因为是 24 小
时制式,小时的 12_/24 位=1,所以小时的赋值为 98h(1001 1000B).
也请注意在 24 小时制时,当小时数据读出后,其最高位为 1,所以要将读到的数据最高位置 0,否则小
时数据不对。
注:
1.在上电复位时,芯片内部不对实时时钟数据寄存器作清零或置位处理。
2.当写实时时间数据时(00H~06H),不可以单独对 7 个时间数据中的某一位进行写操作,否则可 能
会引起时间数据的错误进位,所以要修改其中某一个数据, 应一次性写入全部 7个实时时钟 数
据.
3. 当芯片收到读实时时钟数据命令,则所有实时时钟数据被锁存(时钟走时并不受影响),此功 能
可以避免时间数据的错读现象。
- 5 -
SD3088
两线式带温补的实时时钟 IC Ver 1.30
4.3 时间中断(07H~15H 地址)
SD3088 有 3 种不同时间报警中断,它们由控制寄存器 CTR2(10H)中的位 INTAE、
INTFE、INTDE 位来使能:
中断允许位/标志位列表
序
号
1
2
3
中断允许位
(1=允许,0=禁止)
INTAE
INTFE
INTDE
中断名
报警中断
频率中断
倒计时中断
中断标志位
(1=有中断,0=无中断)
INTAF
无
INTDF
当报警中断产生时,置中断标志位 INTAF 为 1;当倒计时中断产生时, 置中断标志位
INTDF 为 1;频率中断没有标志位.标志位被置 1 后,需要手动清除.
三种中断都是以 INT 脚为输出脚, 通过控制寄存器 2 中的 INTS1、INTS0 位来选择确
定 INT 脚输出何种中断:
INT 脚中断输出选通表
序号
INTS1
INTS0
0
1
2
3
0
0
1
1
(1) 报警中断
0
1
0
1
描 述
电量报警(见 4.4)
报警中断输出
频率中断输出
倒计时中断输出
当 INTAE=1 时报警中断被允许,报警中断何时发生由时间报警寄存器(07H~0EH)
来确定。这其中 07H~0DH 依次用于存放报警时间的秒、分钟、小时、星期、日、月、
年数据,除小时报警数据寄存器的最高位始终为”0” 、星期位的定义不同以外,其它的
格式与实时时钟寄存器相同。
0EH 为时间报警允许寄存器,如下:
D5
BIT
EAMO
D7
D6
EAY
年
月
位名(值)
0
报警允许
-
D4
EAD
日
D3
EAW
星期
D2
EAH
小时
D1
EAMN
分钟
D0
EAS
秒
(0DH)
(0CH)
(0BH)
(0AH)
(09H)
(08H)
(07H)
注:1=允许,0=禁止.
时间报警允许寄存器的使能位是用于确定哪些时间报警寄存器(秒、分钟等)需要
与实时时钟寄存器之间作比较。当实时时钟运行时,一旦被允许的报警寄存器均与对
应的实时时钟寄存器相匹配,就会触发一次报警中断,同时报警中断标志位 INTAF 位
被置”1”.
特别:
1.当日报警与星期报警均被允许即 EAD=EAW=1 时,只有日报警有效,而星期报
警无效,所以时间报警中断共有 96 种组合方式。
2.星期报警寄存器的数据格式与实时时钟数据星期的格式不同,星期报警寄存器
的位 AW6.AW5.AW4.AW3.AW2.AW1.AW0 分别对应星期六.星期五.星期四.星期三.星
期二.星期一.星期日,并可多位置 1,例如 AW6,AW1=1,其它位为 0,则对应在星期六.星期
一会有报警.
- 6 -
SD3088
两线式带温补的实时时钟 IC Ver 1.30
每一次对时间报警允许寄存器的写入都会清 INTAF 为"0".
当设置 INTS1=0、INTS0=1 时,即允许报警中断从 INT 脚输出.该报警中断有两种
模式,即单事件报警和周期性报警, 模式的选定由控制寄存器 2 中的报警中断模式位
IM 的值来定:
IM 位
0
1
报警中断模式
单事件报警
周期性报警
INT 脚
输出低电平直至 INTAF 位清零
输出低电平有效、宽度为 250ms 的周期性脉冲直至
中断允许位清零
为清除报警中断,可通过写操作将控制寄存器 1 的 INTAF 位置”0”.但当 ARST 位置
为”1”,则在控制寄存器 1 被读取时,INTAF 位会自动清零.
举例:
1. 设寄存器 0EH=00000001B,秒报警寄存器 07H=20h,位 INTAE=1、IM=1、
INTS1=0、INTS0=1 ,则每当时间秒数据进位到 20h 的时候,INT 脚都
会输出宽度为 250ms 的低电平,即频率为 1 分钟的方波。如下图:
2. 设寄存器 0EH=00001111B,星期报警寄存器 0AH=0010 0110B,小时报警
寄存器 09H=08h,分钟报警寄存器 08H=30h,秒报警寄存器 07H=00h,
位 INTAE=1、IM=1、INTS1=0、INTS0=1 , 则每到星期一、星期二、
星期五的 8 点 30 分 0 秒的时候,INT 脚都会输出宽度为 250ms 的低
电平。
3. 设寄存器 0EH=00010111B,日报警寄存器 0BH=01h,小时报警寄存器
09H=08h, 分 钟 报 警 寄 存 器 08H=30h, 秒 报 警 寄 存 器 07H=00h, 位
INTAE=1、IM=1、INTS1=0、INTS0=1 , 则到每个月 1 号的 8 点 30 分
0 秒的时候,INT 脚都会输出宽度为 250ms 的低电平。
4. 设寄存器 0EH=0111 0100B, 年报警寄存器 0DH=08h,月报警寄存器
0CH=08h, 日 报 警 寄 存 器 0BH=08h, 小 时 报 警 寄 存 器 09H=20h, 位
INTAE=1、IM=0、INTS1=0、INTS0=1、12_/24=1 , 则到 2008 年 8 月
8 日 20 点 0 分 0 秒时,INT 脚会输出低电平。此后如清零 INTAF,则
INT 脚从低电平变成高电平。
(2) 频率中断
当 INTFE=1 时频率中断被允许; INTFE=0 时频率中断被禁止.
当设置 INTS1=1、INTS0=0 时,即允许频率中断从 INT 脚输出. 频率中断没有标志位.
INT 脚输出频率中断由控制寄存器 3 中的 FS3、FS2、FS1、FS0 位来选择确定:
频率(HZ)
FS2
0
0
0
1
FS1
0
1
1
0
FS0
0
0
1
0
0
4096
1024
64
FS3
0
0
0
0
- 7 -
SD3088
两线式带温补的实时时钟 IC Ver 1.30
32
16
8
4
2
1
1/2
1/4
1/8
1/16
1 秒
0
0
0
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
1
1
0
0
1
1
0
0
1
1
1
0
1
0
1
0
1
0
1
0
1
注:除了 1 秒外,INT 脚输出的频率中断均是由 32768HZ 晶体振荡电路整形及分频得到的;1 秒频
率中断是指输出 500ms 低电平、500ms 高电平的方波,其低电平的下降沿与秒进位同步; 在
温度补偿时内部数字调整寄存器起作用时,1 秒和 1Hz 的时长是不相同的.
例如:需要 INT 脚输出 1HZ 信号时,可以通过设置位 INTS1=1、INTS0=0、INTFE=1、
FS3-FS2-FS1-FS0=1010 得到.
(3) 倒计时中断
与倒计时中断相关的寄存器是三字节 24bit 的倒数定时器 13H、14H 和 15H, 当控制寄
存器 CTR2 中的位 INTDE=1 时倒计时中断被允许.
倒数定时器的频率源由控制寄存器 CTR3 中的位 TDS1、TDS0 来选定
TDS1
TDS0
0
0
1
1
0
1
0
1
定时器频率源
4096HZ
1024HZ
1 秒
1 分钟
当 INTDE=1 且倒数定时器写入一个 24 位自动重置的二进制数后, 倒数定时器会按照
TDS1、TDS0 选定的频率时间来减一.每次当三字节倒数定时器全为零时,会置倒计时中断的
标志位(控制寄存器 1 中的位 INTDF)为 1。倒计时定时中断最短为 244us,最长定时可到 31.9
年。
当设置 INTS1=1、INTS0=1、IM=0 时,即允许倒计时中断的低电平从 INT 脚输出. 置
INTDF=0 时 INT 脚输出变为高电平直到下一次倒计时中断 INT 脚再次变为低电平;当设置
INTS1=1、INTS0=1、IM=1 且倒数定时周期大于 250ms 时,则从 INT 脚输出低电平时间为 250ms
连续脉冲。
当设置 INTDE=0 时倒计时中断被禁止或复位。 特别的:当重新配置倒计时中断时,需要
复位倒计时计数器,即置 INTDE=0,然后再置
INTDE=1,才可以启用新的倒计时中断。
- 8 -