中国视频教程网论文大全www.eduvcd.com >>论文频道免费提供海量各专业精品高质量论文:经济论文,管理学论文,会计审计论文  [admin  2006年10月21日]         本站网址:http://lunwen.xue2xue.com 收藏本站网址,方便下次访问 | 设为首页
您现在的位置: 中国视频教程网 >> 论文库 >> 工 学 >> 电子机械 >> 论文正文
I2C串行芯片X1288及其在电子电能表中的应用
作者:xue2xue.COM 文章来源:lunwen.xue2xue.com 点击数: | | 设为首页 【字体:

摘要:介绍一种基于I2C总线接口多功能串行芯片X1288性能特点工作原理,给出X1288电子电能表设计中应用方法,同时给出X1288AT89C52连接电路。实际应用表明:X1288能简化电路设计并可提高硬件工作效率。

    关键词:X1288;I2C总线接口;电子电能表

1 引言

X1288美国Xicor公司生产一种集E2PROM、实时时钟、日历、CPU监控两路报警于一体多功能集成电路芯片。X1288时钟采用一种价格低廉32.768kHz晶振,具百分秒、秒、分、时、日、月、及星期信息,并可设定两个报警时间,其时钟报警寄存器双通道结构使得它能读写数据时仍保持时钟准确性。此外,X1288还可提供32k字节E2PROM阵列,并具有电源CPU监控功能。

X1288串行芯片一般采用I2C总线来实现与主控制器数据交换。I2C由Philips公司开发一种用于内部IC控制双向二线串行总线,通过该总线可很好地解决现代电子系统中众多IC之间,及IC与外界通信需要,并可大大简化电路设计,提高硬件电路工作效率。

2 X1288引脚定义

X1288芯片具有16脚SOIC或14脚TSSOP小体积封装形式。图1为14脚TSSOP封装引脚示意图,各引脚定义如下:

X1、X2:这两个引脚可分别用作片内振荡器反相放大器输入输出端。应用时需外接一个32.768kHz石英晶体,其作用为系统时钟/振荡器提供时间基准。

RESET:复位信号输出端。当看门狗超时或电压跌落到固定VTRIP门限时,此引脚将向主处理器发送一个低电平有效漏极开路输出信号,以使电路系统快速复位。

SDA:串行数据端,为漏极开路输出双向引脚,用于数据输入输出。实际应用时需接上拉电阻,并应与其它漏极或集电极开路输出端线相或。该端输入缓冲器总处于激活状态,输出电路可通过一个斜率控制下拉控制输出信号下降时间。设计时通常电路设计成400kHz二线接口。

SCL:串行时钟端口。

PHZ/IRQ:可编程频率/中断输出端。当编程为频率输出时,该端接到内部振荡器输出脚,以输出频率为32.768kHz、4096Hz或1Hz信号,也可以信号输出。当编程为中断输出时,该端可报警发生时激活,以向主机请求中断。

VBACK:备用电源输入端。当VCC小于VBACK-0.2V时,电源控制电路将切换至VBACK供电;而当VCC超过VBACK时,又自动切回VCC供电方式,图2其电源控制过程示意图。

3 X1288主要寄存器及其功能

X1228中时钟/控制寄存器(CCR)位于从E2PROM阵列中分离出来一个区域,地址位于[000]0h~[003]Fh之间。CCR一般被分成5段,可分别用于状态寄存器(1字节)、实时时钟(8字节)、控制寄存器(4字节)、报警寄存器1报警寄存器0(各8字节)。

3.1 状态寄存器(SR)

状态寄存器易失性,其地址003Fh。表1其命令格式,各命令字具体含义如下:

表1 状态寄存器(SR)

地址 名称 7 6 5 4 3 2 1 0 缺省值
003Fh SR BAT AL1 AL0 0 0 RWEL WEL RTCF 01h

BAT:后备电源标志位。当BAT为“1”时,表明器件使用后备电源。

AL1、AL0:报警选择位。X1288中有两个报警寄存器,若其中某一报警时间与实时时钟相同时,相应AL1或AL0位将变为“1”;当读取SR值后,该位又变为“0”。

RWEL:时钟/控制寄存器(CCR)写入控制位。对CCR进行写操作时,必须先使该位为“1”。

WEL:CCRE2PROM写入控制位。对CCRE2PROM进行写操作时,必须先使该位为“1”。同理,如果要写入时钟控制寄存器,也必须先写“02h”至SR(使RWEL为“1”),再写“06h” (使WEL为“1”)。

RTCF:掉电标志位。当全部电源(包括VCCVBACK)失效后,该位变为 “1”;而系统再次上电后,如果要对RTC进行第一次有效写操作,则应首先将使该位为“0”。

需要说明,虽然SR中第3、4位没有使用,但这些位必须置“0”。

图4

    3.2 实时时钟(RTC)

实时时钟寄存器地址0030h~0037h分别对应秒、分、时、日、月、、星期百分秒,并采用BCD码表示。通过启动一条读命令并确定相应地址,即可读取时间信息。因为时钟连续运行,而每次读操作都需要一定时间,这就有可能读操作过程中使时间发生改变。本器件由读命令将时间锁存分立锁存器中,因而可以避免读操作过程中时间发生变化。当一次读出并不由读操作引起时,系统将发出报警。

可以通过向RTC寄存器中写入数据来设定时间日期。通过一次不完全连续写操作可避免改变当前时间,RTC数据输入字节之前ACK位时,时钟下降沿会将当前时间值装载到分立缓冲器中,以使时钟继续运行。而此时新串行输入数据将取代缓冲器值。当有效写操作结束后,系统产生停止位时,这个新值才被装载到RTC寄存器中。向RTC写入单个字节并不对其它字节数据产生影响。

当X1288VCCVBACK都失效以后,即使再次上电后,其时钟也将停止增加,直到时钟寄存器中进行至少一个字节写操作以后。

读出设定时钟应注意:百分秒寄存器(SSEC)只读;小时寄存器(HR)中MIL位12/24时制选择位“1”为24时制,“0”为12时制,H21位AM/PM标志位“1”代表PM,“0”代表AM;星期中七天只用三位(DY0~2)来计数,其值0~6之间循环,数字代表星期中哪一天可由设计者决定,缺省值为0。

3.3 控制寄存器

表24个控制寄存器命令字列表,其中DTR数字化微调寄存器,它作用调整每秒计数值ppm误差,以便长时间内获得更好计时精度。DTR2符号位,“1”为正补偿,“0”为负补偿;DTR1、DTR0可分别提供10ppm、20ppm补偿。由DTR0~DTR2三位可表示-30ppm~+30ppm补偿范围。

表2 控制寄存器

地址 名称 7 6 5 4 3 2 1 0 缺省值
0013h DTR 0 0 0 0 0 DTR2 DTR1 DTR0 00h
0012h ATR 0 0 ATR5 ATR4 ATR3 ATR2 ATR1 ATR0 00h
0011h INT IM AL1E AL0E FO1 FO0 只读 只读 只读 00h
0010h BL BP2 BP1 BP0 WD1 WD0 只读 只读 只读 00h

ATR寄存器用来微调X1X2之间片内负载电容,其范围从+116ppm~-37ppm,具体电容值大小可由下式计算:

CART=[(ATR十进制值)×0.25]+11.0pF

实际上,数字模拟结合起来微调范围可高达+146ppm。BL中BP2~BP0位块保护位,这些位可用来决定对E2 PROM阵列中8个保护段某些具体段提供写保护(参见表3列);WD1、WD0用来设置看门狗时限。

表3 块保护位与E2PROM阵列保护区

BP2 BP1 BP0 被保护地址 阵列中被锁部分
0 0 0
0 0 1 6000h~7FFFh 高端1/4
0 1 0 4000h~7FFFh 高端1/2
0 1 1 0000h~7FFFh 全阵列
1 0 0 0000h~007Fh 第一页
1 0 1 0000h~00FFh 第二页
1 1 0 0000h~01FFh 前四页
1 1 1 0000h~03FFh 前八页

INT中断控制频率输出寄存器,其中AL1EAL0E报警中断信号(IRQ)输出使能位,这两位分别结合SR中AL1AL0,可用来指示报警否发生;IM脉冲中断方式控制位,当报警条件匹配时,IRQ将输出一个单次脉冲,若IM设为“1”,则脉冲输出周期性;FO1FO0频率输出控制位,主要用于选择内部振荡器三种分频输出之一并PHZ端输出。

3.4 报警寄存器

X1288有两个报警寄存器,地址分别0000h~0007h0008h~000Fh,通过这两个报警寄存器可设置两个报警时间。报警寄存器内容与RTC很类似,不同之处于其最高位被设置为使能位,而取消HR中12/24时制控制位。使能位规定哪些寄存器可用来与实时时钟寄存器作比较。通过设置EMOn位并结合其它使能位特定报警时间,用户可以建立同一时间(精确到秒)触发一次报警。用户可以通过轮询AL0AL1软标志来确定一次报警发生,或者使能IRQ输出作为一个硬件报警标志。当使能位都被设置成“0”时,整个系统无报警。

4 I2C总线数据传送方式

X1288应用时一般作为从器件通过串行I2C总线来实现与主控制器通信。其中,SDA用来接收、发送数据;SCL用于接收产生同步脉冲,当SCL为低时,SDA上数据发生变化,为高时表明可以接收SDA上数据。

I2C总线SCL为高且SDA线上出现一个下降沿时启动;而SCL为高且SDA线上出现一个上升沿时停止。启动停止信号都由主控器产生,这样,总线上带有I2C接口器件就能很容易地检测到这些信号。但对于不具备这种接口单片机来说,为能够准确地检测到这些信号,必须保证总线一个时钟周期内对SDA线至少进行两次采样。

I2C总线上应答信号用于表明数据传输成功信号。当发送设备发送启动位8位数据之后,第9个SCL有效时,接收设备将使SDA为低以产生有效应答信号,该信号可用来说明数据成功接收。当接收设备发送表明数据成功接收应答信号之后,发送设备可选择继续发送数据或发送停止位以结束发送,如发送设备没有收到接收设备应答信号,则说明发送失败,此时应重发。

一般况下,I2C总线上可同时接多个设备,每个器件都有唯一地址。X1288有两个从设备地址(从地址高4位):其中1010为访问E2PROM阵列;1101为访问CCR。从地址3~1位为器件选择位,它们规定为111,最低位R/W用于定义此操作读或写。I2C总线上传送每一个字节为8位,而启动一次I2C总线后传输字节数可以一个,也可以多个。每传送一个字节后,都必须跟随一个应答位,并且先发送数据位为最高位。全部数据传送结束后主控制器发送终止信号。X1288有两种写操作方式,分别为单字节写或页面写。图4对X1288完成一个字节写操作时序,由图可见,写操作共由四个字节组成,其中包括一个从地址字节、一个要访问地址字(2字节)、一个字节操作数。采用页面写时,它将以单字节写操作相同方式启动,但第一个字节传送之后不结束写周期,主机可发送多于63个字节到存储器阵列多于7个字节到CCR。X1288有三种基本读操作方式:当前地址读、随机读序列读。

5 应用实例

多用户电子电能表设计中,X1288实时时钟可保证系统时间正确性,并为多费率电价计量等提供准确时间;当由于外部干扰而产生死循环时,单片机能自动复位;32k字节E2PROM则可用于保证有用户电能累积值、预交电费余额异常故障等重要数据可靠保存灵活更改;当系统掉电时,系统中电源管理系统将会自动转为锂离子电池供电方式。

X1288与单片机接线如图5示, 由于AT89C52本身没有带I2C总线接口,设计中使用P1.6/ P1.7作为I2C总线接口SCL/SDA。本电路为单主系统,单片机只对X1288进行读写操作,因此可通过对I2C总线典型信号时序模拟编制应用程序。文献2中提供一套I2C总线数据模拟传送通用软件包,可方便地作为读写子程序来设计系统软件,其中包括基本启动、停止、发送应答位、发送非应答位子程序,同时还有应答位检查、发送一个字节数据、接收一个字节数据、发送n个字节数据接收n个字节数据等子程序。

6 结束语

X1288作为微处理器外围器件,它最基本功能组合一起,因而具有较高性价比,可大大降低电路板空间功耗,因此,系统可靠运行关键器件。


    I2C串行芯片X1288及其电子电能表中应用一文由学而学百万免费论文http://lunwen.xue2xue.com摘录,版权归作者有,转载请注明出处!欢迎访问xue2xue主站:www.xue2xue.com,如果感觉本站不错,请推荐本站给您朋友,如果对本站有什么建议敬请来信,谢谢!
{更多免费资料请到第一考试门户:http://www.zhongguokw.cn 中国考网.cn 招生求学-请到学而学:http://www.xue2xue.com中国招生求学网 }

相关名站推荐
相 关 文 章 按平台模式设计的虚拟I2C总线软件包V…
I2C总线控制的TV显示处理器TDA9332H及…
I2C总线控制的CD2518彩电
模拟I2C总线多主通信的通用软件包
利用PCI2040将TMS320VC5420桥接到PCI…
应用McBSP实现I2C总线控制器
基于DSP与CPLD的I2C总线接口的设计与…
新型IGBT/MOSFET驱动模块SKHI22A/B
基于CPLD的系统中I2C总线的设计
I2C器件接口IP核的CPLD设计
基于VHDL的I2C总线控制核设计
论文录入:xue2xue.COM    责任编辑:xue2xue.COM 
中国招生求学网
中国考网.cn
光华管理.cn
中国wap在线
中国视频教程网
学而学共享论文网
易武小说阅
wap在线
手机电子书.cn
海量免费书库
学而学文学网
xue2xue中国课件网
玄幻情色小说网
光华管理网
学而学教育资源网
15wap.cn
经典书城
世界经理人文库
手机小说.cn
更多友情链接...
| 设为首页 | 加入收藏 | 友情链接 | 版权申明 | 会员中心 |
学而学免费论文下载网【http://lunwen.xue2xue.com】:中国最大免费论文阅读下载中心,免费提供各学科最新海量论文:经济论文,管理学论文,会计审计论文,工商管理论文, 财务管理论文,公共管理论文,法学论文,理学论文,医药学论文,社会学论文,文学论文,教育类论文,工学论文,计算机论文,艺术类论文,英语论文,, 电子商务论文,电子通信网络论文等,论文每天更新,欢迎阅读下载。
本站注册序号:桂ICP备05013361号