单片机控制实时时钟X1226设计方案_第1页
单片机控制实时时钟X1226设计方案_第2页
单片机控制实时时钟X1226设计方案_第3页
单片机控制实时时钟X1226设计方案_第4页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、单片机控制实时时钟X1226 的设计引言X1226 具有时钟和日历的功能,时钟依赖时、分、秒寄存器来跟踪,日历依赖日期、 星期、月和年寄存器来跟踪, 日历可正确显示至2099年,并具有自动闰年修正功能。拥有强大的双报警功能,能够被设置到任何时钟 /日历值上,精确度可到 1 秒。可用软件设置 1Hz、4096Hz或 32768Hz 中任意一个频率输出。X1226 提供一个备份电源输入脚VBACK ,允许器件用电池或大容量电容进行备份供电。 采用电容供电时, 用一个硅或肖特基二极管连接到 Vcc 和充电电容的两端,充电电容连接到 Vback 管脚,注意不能使用二极管对电池充电 (特别是锂离子电池

2、)。切换到电池供电的条件是 Vcc=Vback-0.1V ,正常操作期间,供电电压 Vcc 必须高于电池电压,否则电池电量将逐步耗尽。振荡器采用外接 32.768kH 的晶体,产生的振荡误差可通过软件对数字微调寄存器、 模拟微调寄存器的数值进行调节加以修正,避免了外接电阻和电容的离散性对精度的影响。 4Kb 的 EEPROM 可用于存储户数据。电路组成及工作原理X1226 可与各种类型的的微控制器或微处理器接口,接口方式为串行的 I2C 接口。其中数据总线 SDA 是一个双向引脚,用于输入或输出数据。其漏极开路输出在使用过程中需要添加 4.710k 的上拉电阻。本文介绍 89C51 单片机与

3、X1226 的接口方法,由于 89C51 单片机没有标准的 I2C 接口,只能用软件进行模拟。为了更直观地看到时间的变化,采用8 位 LED 数码管显示年、月、日或时、分、秒,用 PS7219A 驱动 LED 数码管,数码管选择0.5 英寸共阴极红色或绿色LED 数码管。由于 PS7219A 器件内含 IMP810单片机监控器件,复位输出高电平有效,因此在使用51 系统时,无须添加监控器件, 使用 PS7219A 的复位输出给 51 单片机复位即可,监控电压为 4.63V 。硬件设计原理图如图1 所示。在硬件通电调试过程中,不能用手去触摸X1226 的晶体振荡器,否则可能会导致振荡器停振,恢复

4、振荡器起振的方法是关闭电源(包括备份电源 )后重新上电。另外需要说明的是,测量振荡器时,不要用示波器的探头去测量X2 的振荡输出,应该用探头测量PHZ/IRQ 的振荡输出,以确定是否起振和振荡频率是否准确,测量时建议在该脚加一个 5.1k 的上拉电阻。软件设计X1226内含实时时钟寄存器(RTC) 、状态寄存器 (SR) 、控制寄存器(CONTROL) 、报警寄存器 (Alarm0 、Alarm1) 和客户存储数据的存储器。由于实时时钟寄存器和状态寄存器需要进行频繁的写操作,因此其存储结构为易失性SRAM 结构。其他寄存器均为EEPROM 结构,写操作次数通常在10 万次以上。X1226 初始

5、化程序框图如图2 所示,子程序 YS4 的作用是延时 4s。启动条件子程序: SETB SDALCALL YS4SETB SCLLCALL YS4CLR SDALCALL YS4CLR SCLLCALL YS4RET停止条件子程序: CLR SDALCALL YS4SETB SCLLCALL YS4SETB SDARET写操作X1226 初始化之后,单片机对 X1226 进行开始条件的设置,在写 CCR或 EEPROM 之前,主机必须先向状态寄存器写 02H ,确认应答信号,确认后写入 06H ,再确认应答信号。 确认后启动了写操作, 首先发送高位地址,然后发送低位地址。 X1226 每收到一

6、个地址字节后, 均会产生一个应答信号。在两个地址字节都收到之后, X1226 等待 8 位数据。在收到 8 位数据之后, X1226 再产生一个应答,然后单片机产生一个停止条件来终止传送。-X1226具有连续写入的功能,每收到1 字节后,响应一个应答,其内部将地址加一。 当计数器达到该页的末尾时,就自动返回到该页的首地址。这意味着单片机可从某一页的任何位置开始向存储器阵列连续写入 64 字节,或向 CCR 连续写入 8 字节的数据。写入 X1226 数据子程序 :MOV R5,#8SEND1: MOV A,DATASERLC AMOV DATASE,AMOV SDA,CSETB SCLLCAL

7、L YS4CLR SCLLCALL YS4DJNZ R5,SEND1RET读操作在上电时, 16 位地址的默认值为0000H 。X1226 初始化操作之后,单片机对 X1226 进行开始条件的设置,在写 CCR 或 EEPROM 之前,主机必须先向状态寄存器写02H ,确认应答信号,确认后写入06H ,再确认应答信号。确认后启动了写操作,首先发送高位地址,然后发送低位地址。X1226 每收到一个地址字节后, 均会产生一个应答信号。单片机发送另一个开始条件,将R/W 位设置为 1,接着接受 8 位数据。单片机终止读操作时,无需等待X1226 的应答信号,单片机即可设置停止条件。读出 X1226

8、数据子程序 : MOVR5,#8MOVDATARE,#0SETBSDACLR CREAD1: SETB SCLLCALL YS4MOV C,SDACLR SCLMOV A,DATARERLC AMOV DATARE,ALCALL YS4DJNZ R5,READ1RET振荡器频率在线补偿调节X1226 集成了振荡器补偿电路, 用户可通过软件在线对振荡器频率进行微调,这种微调通常针对两种情况。一种情况是在25 常温下,对振荡器因器件初始精度带来的频率偏差进行补偿;第二种情况是对因温度引起的频率漂移进行补偿。X1226内部设有数字微调寄存器(DTR) 和模拟微调寄存器 (ATR) ,两个寄存器均为非易失性寄存器。数字微调寄存器具有3 位数字微调位,调节范围为-30+30×10-6 。模拟微调寄存器具有6 个模拟微调位, 调节范围为 -37+116×10-6 。对于因外界环境温度变化引起的温漂补偿,要依据晶体的温度系数,在存储器中建立补偿参数表,不同厂家晶体的温度系数是不一样的,应根据产品数据手册进行选择。为了能够对温漂进行补偿, 要求系统中设置一个温度传感器,并尽量让它靠近 X1226 ,这样可以真实地反映振荡器的温度,原理图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论