首页 | 期刊简介 | 编辑部 | 广告部 | 发行部 | 在线投稿 | 联系我们 | 产品信息索取
2024年4月23日星期二
2011年第01期
 
2010年第12期
 
2010年第11期
2010年第11期
 
2010年第10期
2010年第10期
 
2010年第09期
2010年第09期
 
2010年第09期
2010年第08期
 
2010年第07期
2010年第07期
 
2010年第06期
2010年第06期
 
2010年第05期
2010年第05期
 
2010年第04期
2010年第04期
 
2010年第03期
2010年第03期
 
2010年第02期
2010年第02期
 
2010年第01期
2010年第01期
 
2009年第12期
2009年第12期
 
2009年第11期
2009年第11期
 
2009年第10期
2009年第10期
 
2009年第9期
2009年第9期
 
2009年第8期
2009年第8期
 
2009年第7期
2009年第7期
 
2009年第6期
2009年第6期
 
2009年第5期
2009年第5期
 
2009年第4期
2009年第4期
 
2009年第3期
2009年第3期
 
2009年第2期
2009年第2期
 
2009年第1期
2009年第1期
 
2008年第12期
2008年第12期
 
2008年第11期
2008年第11期
 
2008年第10期
2008年第10期
 
2008年第9期
2008年第9期
 
2008年第8期
2008年第8期
 
2008年第7期
2008年第7期
 
2008年第6期
2008年第6期
 
2008年第5期
2008年第5期
 
2008年第4期
2008年第4期
 
2008年第3期
2008年第3期
 
2008年第2期
2008年第2期
 
2008年第1期
2008年第1期
新型E PROM-CSI24C021及其在电话拨号控制器中的应用
New E PROM: CSI24C021 and its Application In Telephone Dialer Controller
■北方交通大学现代通信研究所 熊磊 张鹏 姚冬苹



概述


CSI24C021是Catalyst公司推出的新一代E2PROM,它集E2PROM, 精确复位控制器和看门狗(WDT)三种功能于一体,不仅减少了外围器件,缩小了对电路板空间的占用,提高了可靠性,同时也降低了系统功耗和成本,便于系统的小型化低功耗设计。

CSI24C021为I2C总线结构,只需2根线(SDA SCL)即可实现完善的全双工同步数据传送。芯片的存储容量为256字节;采用低功耗设计,可最低工作在2.7V;性能稳定,数据可保持长达100年,能反复擦写1,000,000次。


工作原理


1.看门狗(WDT)

单片机系统运行时受到外部干扰,程序有时会出现"跑飞",而进入死循环,导致整个系统瘫痪。为了防止这一现象的发生,在对系统稳定性要求较高的场合往往加入看门狗电路。CSI24C021内部集成了看门狗定时器,一旦系统死机,无法在1.6s内对CSI24C021进行一次操作(即改变SDA管脚上的电平),内部的看门狗定时器将会溢出,CSI24C021 将产生一个复位信号,强迫单片机重新启动。

2.数据读写

CSI24C021支持I2C 总线数据传送协议。I2C 总线是PHILIPS 公司推出的芯片间串行数据传输总线,2根线(SDASCL)即可实现完善的全双工同步数据传送,能够十分方便地构成多机系统和外围器件扩展系统。在I2C 总线数据传送协议中将器件分为主器件与从器件。主器件与从器件都可进行数据收发,但收发过程由主器件控制。CSI24C021是作为从器件来进行操作的。

一个完整的数据收发过程可分为以下五部分:启动总线、器件寻址、数据传送、终止总线和应答。

2.1总线的启动和终止

在SCL为高电平时,SDA上一个由高到低的跳变就可以启动总线,反之一个由低到高的跳变就会终止总线。CSI24C021捕捉到SDA上的变化后便会给予应答。

2.2应答

在成功完成1字节数据传输后,在SCL的一个由低到高再由高到低的周期里,保持SDA为低电平,即为应答信号。

2.3器件寻址

I2C器件没有片选信号,主器件依靠对从器件寻址中确定选中哪个I2C器件。I2C器件的从地址是由I2C总线委员会实行统一发配的。CSI24C021的从器件地址高4位为1010,接下来三位为任意位,最后一位 决定是进行读还是写操作。

2.4写操作

主器件启动总线后发送器件从地址(其中R/W=0),当收到CSI24C021的回应表示从器件已经选中,接着发送数据存放在CSI24C021中地址,收到回应后发送1字节数据,收到回应后继续发送数据直到数据全部发送完毕后,主器件结束总线,从而完成了数据写操作。由于CSI24C021的页写缓冲区为16字节,所以一次最多只能写入16字节数据,如果要写入的数据多于16个,就重复上一过程。

2.5读操作

主器件启动总线后发送从器件地址(其中R/W=0),收到CSI24C021的回应后发送读数据的地址,从而执行了一次"伪写操作",收到回应后,再次启动总线并发送从器件地址,此时置R/W =1,收到回应后,就可以开始读取数据。一次读操作可以将CSI24C021中所有的数据全部读出。


硬件连接


CSI24C021采用的是I2C总线结构,与AT89C51进行数据交换只需将SDA和SCL分别与AT89C51的I/O口相接便可。需要注意的是,即使不使用CSI24C021的复位功能,RESET上的上拉电阻和/RESET上的下拉电阻也不可缺少,否则芯片将不能正常工作。(如图1所示)


典型应用


下面以笔者设计开发的电话拨号控制器为例介绍CSI24C021的具体应用。

现在一些单位为了防止工作人员私自使用单位电话拨打长途电话,往往采用给电话加锁的方式予以控制。但这种方法不仅既不方便也不安全,而且只能控制长话而无法对其他电话(如信息台,IP电话)的拨打进行控制。为了解决这一问题笔者研制了电话拨号控制器,系统框图如图2所示。

电话拨号控制器主要由微处理器AT89C51、CSI24C021、双音多频收发器MT8880和继电器组成。其工作原理是:普通用户拨出的电话号码为模拟的双音多频码。首先由MT8880对其进行数字解码。解码后,单片机根据从CSI24C024中取出设置,对电话号码进行比较分析,如果判定该号码为普通用户允许拨打的号码,单片机将通过MT8880将号码拨出,同时通过继电器将本地电话与电话网接通,此时用户就可以进行正常通话。如果用户拨打禁止拨打的号码(如:长话,信息台),单片机将终止该项服务。高级用户需要使用电话时,首先按"#"以进入密码输入状态,输入的密码由MT8880解码并与从CSI24C021中读出的事先设置好的密码进行比较。确认无误后,用户就可以拨打其权限许可的电话号码了。此外高级用户还可以对拨号器进行设置(如修改密码,设置允许普通用户拨打的号码)。用户通话结束时,无论哪一方先行挂机,单片机都将通过继电器断开电话与电话网之间的连接。当MT8880监测到有电话呼入时,单片机将通过继电器将电话与电话网接通,因此该系统并不影响电话呼入。另外,根据实际需要,拨号器还可以设置多个用户级别。

在该系统中,CSI24C021中存储了高级用户的密码和允许普通用户拨打的电话号码族。密码设置方法与普通IC卡电话相同。设置号码族的方法如下:

如要允许普通用户拨打市内电话,以北京为例,北京市内固定电话为8位,分别以6和8开头。高级用户在密码输入正确后,按"*"号,进入号码族设置状态,接着输入6#######(#为非限定为位),最后输入"*"表示确认。听到"嘀嘀"两声,表示系统接受了6字头号码的设置。其它电话号码的设置方法与之类似。

此外,该系统还可以扩展常用电话号码记忆与快速拨号,电话使用情况记录等功能。

         
版权所有《世界电子元器件》杂志社
地址:北京市海淀区上地东路35号颐泉汇 邮编:100085
电话:010-62985649
E-mail:dongmei@eccn.com