基于实时时钟芯片X1227的电源控制器设计
关键词:实时时钟 I2C接口 单片机 电源控制器
引言
X1228是美国XICOR公司最新推出的实时时钟(RTC)芯片。与其它RTC芯片相比,X1228除有基本的时钟和报警功能外,还有4K位E2PROM存储器和复位输出、电压监控、看门狗定时、频率输出等功能。
X1228可以准确地用秒、分、时、日、星期、月、年来显示时间和日期,具有世纪字节,解决了两千年问题,自动实现闰年调整;有2路报警,可设置为按秒、分、时、日、月和星期任意组合的定时报警;还有1个可编程的频率输出引脚(PHZ),用于输出一个固定频率的方波信号;内部的4K位E2PROM存储器,可用于存储用户的设置参数或其它数据,其内容在电源失效时不会丢失;采用I2C总线与单片机接口,一次可传送多个字节的数据,数据传送的速率为400kHz;内部有电源监控电源监控电路,用于监测电源电压,并能在上电和掉电时输出复位信号,片内的看门狗定时器可编程为3个超时时间和关闭,还提供一个备用电源输入引脚(VBACK),接一电池作为备用电源,可在主电源(VCC)失效时保证芯片正常工作和时钟的连续运行。X1228因其计时准确、体积小、功能强,且与单片机接口方便、性价比高,在我们研制的开放式实验室管理系统电源控制器中得到了有效的应用。
图1 X1228内部结构框图
1 X1228的内部结构及工作原理
实时时钟芯片X1228的内部结构如图1所示,按功能基本分为实时时钟及报警、存储器和复位监控电路3个主要部分。
1.1 实时时钟及报警
X1228对时钟和报警的访问和设置都是通过时钟/控制寄存器CCR来实现的。CCR分为五个部分:
①报警寄存器0(Alarm 0)为8字节,地址0000H~0007H,非易失性E2PROM存储器;
②报警寄存器1(Alarm 1)为8字节,地址0008~000FH,非易失性E2PROM存储器;
③控制寄存器(Control)为4字节,地址0010H~0013H,非易失性E2PROM存储器;
④实时时钟(RTC)为8字节,地址0030H~0037H,易失性RAM存储器;
⑤状态寄存器(Status)为1字节,地址为003FH,易失性RAM存储器。
实时时钟(RTC)外部仅使用1个32.768kHz晶体来保持年、月、星期、日、时、分和秒的精确的内部表示。启动读命令并指定对应于RTC寄存器的地址可以读RTC,也可以通过写RTC寄存器来设置时间和日期。模拟微调寄存器ATR(低6位)用来调整X1和X2引脚间的片内负载电容,为5~39.5pF,这将使晶体选择有较大的余地。数字微调寄存器DTR(低3位)用来调整RTC的误差,达到长时间的高精度。
(凹丫丫范文网fanwen.oyaya.net收集整理)
两组报警寄存器的结构与内容和RTC寄存器相同,只是增加了使能位(在MSB位)。通过使能位和实时寄存器的设置,可以确定报警时间。例如:在表1中,通过把EDWn、EHRn、EMNn使能位置“1”,并把DWAn、HRAn、MNAn报警警察寄存器置为星期三8:00AM,即把X1228设置为每星期三8:00AM报警。当把EHRn、EMNn使能位置“1”,并把HRAn、MNAn报警寄存器置为9:15PM时,即把X1228设置为每天9:15PM报警。设置EMOn,并结合其它使能位和特定的报警时间,用户可以把X1228设置为每年同样的时间报警。控制寄存器INT中位IM为中断方式位,“0”为中断方式,“1”为脉冲方式;位AL1E和AL0E分别用来使能报警中断信号IRQ的输出;位FO1和FO0为可编程频率输出控制位,用来选择PHZ引脚上的振荡频率输出。
表1 时钟/控制寄存器CCR映像表