用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

高精度时钟芯片SD2001E及其应用

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 23:46:57
【本文由PB创新网为您整理】
摘要:介绍一种内置晶振、充电电池、串行NVRAM的高精度和免调校实时时钟芯片SD2001E。由该芯片构成的时钟电路具有精度高、外围电路和接口电路简单的特点。文中详细描述芯片的主要特性、引脚说明及其工作原理,给出在嵌入式系统中的应用方法、硬件接口电路及应用程序。

    关键词:SD2001E 实时时钟 单片机

实时时钟电路在以单片机为核心构成的智能仪器仪表、测控系统、工业控制等领域有着广泛的应用,但现有的时钟电路存在着外围电路(如需外接晶振、电池)和接口电路(并行接口)复杂、功能单一等缺点。SD2001E则是在内部集成了实时时钟电路、串行非易失性SRAM、可充电电池、晶振及电池管理电路的新型实时时钟芯片。该芯片与单片机的接口电路采用工业标准I2C总线,从而简化了接口电路设计。利用该芯片无需扩展任何外围元件,即可构成一个高精度实时时钟及具有256Kb非易失性SRAM的数据存储电路。javascript:window.open(this.src);" style="cursor:pointer;"/>

1 主要特性及引脚说明

SD2001E时钟芯片的主要特性如下:

*年、月、日、星期、时、分、秒的BCD码输入/输出;

*I2C总线接口(包括实时时钟部分和SRAM部分);

*自动日历到2099年(包括闰年自动换算功能);

*内置晶振,出厂前已对时钟进行校准,保证精度为±4×10 -6,即时钟年误差小于2min;

*低功耗,典型值为1.0μA(VDD=3.5V);

*工作电压为3.0~5.5V(其中NVRAM在4.5~5.5V工作);

*可设置的两路闹钟输出及32 768Hz~1Hz的方波信号输出;

*可设置的每分钟固定中断输出或选定频率固定中断输出;

*内置充电电路和充电电池,充满一次可保持内部时钟走时时间超过1年以上,可满充电次数达200次;

*内置电源管理电路,当VDD≥3.0V,内部电池不耗电;

*内置稳定电路及电池掉电检测电路;

*内置256Kb的非易失性SRAM,其擦写次数为100亿次,且没有内部写延时。

SD2001E采用24脚DIP封装形式。各引脚的功能如表1所列,其外形及引脚排列如图1所示。

表1 SD2001E引脚说明

引脚号标  廖功    能特  征
3TEST测试内部电池电压检测
4ON/OFF打开/关闭SRAM,接低电平为打开SRAM,接高电平时关闭此功能引脚主要用来降低芯片整体功耗
10~12GND接地 
13SCL串行时钟输入脚CMOS输入(与VDD间无保护二极管)
14VOUT3.3V稳压输出脚,当VDD≥3.4V时有效可供电流≤30mA,电压精度3.3(1±0.02)V
15SDA串行数据输入/输出脚N沟道开路输出(与VDD间无保护二极管)CMOS输入
1、2、22
16~18、5~9
NC空引脚 
19INT1报警中断1输出脚,根据中断寄存器与状态寄存器来设置其工作的模式,当定时时间到达时输出低电平或时钟信号。它可通过重写状态寄存器来禁止N沟道开路输出(与VDD端之间无保护二极管)
20SDAESRAM串行数据输入/输出脚开路输出
21SCLESRAM串行数据时钟脚CMOS输入
23INT2报警中断2输出脚,同INT1 
24VDD正电源 

2 工作原理

SD2001E内部包括实时时钟与NVRAM两部分,内部原理框图如图2所示。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    2.1 实时时钟

SD2001E实时时钟是基于I2C总线的器件,故对该器件的操作必须严格遵守总线时序。当CPU发出起始条件,建立与实时时钟连接后,CPU通过SDA总线连续输出4位器件地址、3位操作指令和1位读/写指令,其格式如下:

DB7DB6DB5DB5DB3DB2DB1DB0
0110C2C1C0R/W

实时时钟器件的地址固定为“0110”,接下来的3位操作指令构成了对实时时钟部分的8条操作指令,具体指令含义如表2所列。

表2 SD2001E实时时钟指令表

C2C1C0操    作ACK数目
000复位00(年),01(月)有,01(天),0(星期)00(分),00(秒)1
001状态寄存器存取2
010实时数据1(从年数据开始)存取8
011实时数据2(从小时数据开始)存取4
100频率事件设置1(INT1脚)3
101频率事件2(INT1脚)3
110测试模式开始1
111测试模式结束1

CPU通过发送不同操作指令,选择相应的寄存器从而完成相应的操作功能。SD2001E实时时钟部分共包括4个寄存器,分别分别如下:

(1)实时数据寄存器

实时数据寄存器是一个56位的存储器。它以BCD码方式存储,包括年、月、日、星期、时、分、秒的数据,数据格式如图3所示。任何读/写操作或实时数据存取命令都通过发送或接收年数据的第一位“LBS”执行的。

*年数据(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~23或00~11):12小时进制,0为AM,1为PM;对于24小时进制,这一位没有意义,但必须设置为“0”或“1”。

*分数据(00~59)。

*秒数据(00~59)与测试标志。

*TEST:在测试模式变为“1”。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    (2)状态寄存器

状态寄存器是一个8位寄存器。该寄存器用来显示和设置实时时钟的工作模式,状态寄存器格式如下。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    Power:电源标志位,为只读位。

12/24:设置12小时制或24小时制:0为12小时制;1为24小时制。

INT1AE:设置从INT1脚输出的报警中断的状态。设定报警时间并设此位为“1”时INT1寄存器开始有效,0:报警中断输出禁止;1:报警中断输出允许。

INT1ME:确定INT1脚的输出为每分钟边沿中断或每分钟固定中断。为了设为每分钟固定中断输出,应将INT1ME和INT1FE置1。0:报警中断或可选的频率的固定中断输出;1:每分钟边沿中断或每分钟固定中断输出。

INT1FE:设定INT1脚的输出为每分钟固定中断(周期1分钟,占空比50%)或选定频率的固定中断。如果选定频率固定中断输出被允许时,INT1寄存器被认为是频率/事件的数据,0:报警中断或每分钟边沿中断输出;1:每分钟固定中断输出或选定频率固定中断输出。

INT2AE、INT2ME、INT2FE位用于设置从INT2脚输出的报警中断的状态,各位含义同上。

(3)两组报警时间/频率事件设置寄存器

有两组16位报警时间/频率事件设置寄存器,用于设置报警时间或频率事件,由INTxAE与INTxFE控制。设定的AM/PM标志位必须同12小时制或24小时制相对应,否则,设定的小时数将与报警数据不匹配。该寄存器为只写寄存器(x:1或2)。
javascript:window.open(this.src);" style="cursor:pointer;"/>
   

[1] [2]  下一页

Tags:

作者:佚名
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
  • 差的评价 如果您觉得此文章差,就请您
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:6,937.50000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号