找回密码
 注册
关于网站域名变更的通知
查看: 382|回复: 1
打印 上一主题 下一主题

铁电存储器----FM24C16在多MCU系统中的应用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-10-10 14:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
铁电存储器技术原理、特性及应用美国Ramtron公司铁电存储器(FRAM)的核心技术是铁电晶体材料。这一特殊材料使铁电存储器同时拥有随机存取记忆体(RAM)和非易失性存储器的特性。
     铁电晶体的工作原理是:当在铁电晶体材料上加入电场,晶体中的中心原子会沿着电场方向运动,达到稳定状态。晶体中的每个自由浮动的中心原子只有2个稳定状态,一个记为逻辑中的0,另一个记为1。中心原子能在常温、没有电场的情况下,停留在此状态达100年以上。铁电存储器不需要定时刷新,能在断电情况下保存数据。由于整个物理过程中没有任何原子碰撞,铁电存储器有高速读写、超低功耗和无限次写入等特性。 铁电存储器和E2PROM比较起来,主要有以下优点:
    (1)FRAM可以以总线速度写入数据,而且在写入后不需要任何延时等待,而E2PROM在写入后一般要5~10 ms的等待数据写入时间;(2)FRAM有近乎无限次写入寿命。一般E2PROM的寿命在十万到一百万次写入时,而新一代的铁电存储器已经达到一亿个亿次的写入寿命。(3)E2PROM的慢速和大电流写入使其需要高出FRAM 2 500倍的能量去写入每个字节。由于FRAM有以上优点,其特别适合于那些对数据采集、写入时间要求很高的场合,而不会出现数据丢失,其可靠的存储能力也让我们可以放心的把一些重要资料存储于其中,其近乎无限次写入的使用寿命,使得他很适合担当重要系统里的暂存记忆体,用来在子系统之间传输各种数据,供各个子系统频繁读写。从FRAM问世以来,凭借其各种优点,已经被广泛应用于仪器仪表、航空航天、工业控制系统、网络设备、自动取款机等。在设计的碳控仪系统中,由于对控制碳势适时性的要求较高,而且系统由2个子系统构成,每个子系统都要频繁读写存储器,所以我们把原来的X25045换成FM24C16以满足要求。

" E3 T  g3 b3 s+ j) W# C     FM24C16是串行非易失存储器,存储容量为2 048×8 b,共分8页,每页256 B;工作电压为+5 V;接口方式为工业标准的2线接口:SDA和SCL;功能操作和串行E2PROM相似,有读和写两种操作状态,读、写时序和I2C总线类似。FM24C16的写操作可以分为2种:字节写和页面写。字节写就是每次写入单个字节,页面写可以一次写入整页(256 B)的数据。而且,由于没有写延时,数据写入速度很快(一般为μs级),特别是在页面写的时候,不需要数据缓冲,可以一次写入256 B的数据,真正实现页面写,这是其他E2PROM做不到的,比如AT24C16,在页面写的时候,每次最多能写入16 B数据。
+ q7 i0 l" Z3 y4 L6 J& |4 S% H
FM24C16的写操作时序中可分为起始位(START)、数据位、从应答位、停止位(STOP),其中,从应答位(因为FM24C16为从器件,mcu为主器件,所以称为从应答)是FM24C16在每接收一个字节数据后发出的应答信号,是检验数据写入是否成功的惟一标志。写入过程为:mcu通过SDA,SCL发出起始位,然后从SDA输出从器件固定地址位:1010,再输出3 b页选择位(选择写入数据到FM24C16的哪一页),再输出写控制位0(读为1,写为0),然后接收来自FM24C16的从应答位,如果没有收到从应答,则退出操作。在接收到从应答后,mcu从SDA串行输出8位FM24C16字节地址以确定写入数据的字节单元,并在收到从应答后发送1 b数据写入到FM24C16,然后等待从应答信号确认数据写入成功。如果是字节写,则由mcu发出停止位,结束写操作。如果是页面写,mcu输出第2个字节数据,FM24C16判断出mcu要继续写入数据后,自动使其内部的地址指针加1,并把数据写入到加1后的字节单元,然后给出从应答,mcu就继续写入数据到FM24C16。页面写操作时,当地址指针到7FH(页尾地址)单元的时候,在下一个写入周期时自动翻转到00H,写入的数据覆盖掉00H单元原来的数据。
, T7 g0 R/ _6 n) L1 p
具体写操作时序图和后面的读操作时序图比较繁琐,在这里不给出,如果需要,可以登录到Ramtron公司网站:http://www.Ramtron.com查阅技术资料,或者登录到其在大陆的代理商网站:http://www.Ramtron.com.cn/china/product/data.asp去查阅技术资料,也可以仿I2C总线时序图。FM24C16读操作比写操作较为复杂,相应也可以分为2种:字节读和页面读,相应于字节写和页面写,两种读的功能也是单字节和整页的区别。读操作的另一种分法可分为:立即读和任意读(包括连续读),其区别在于立即读是在写入数据后马上读数,而任意读和连续读则是随时读,所以,在他们操作时,必须先执行伪写,然后再读数。所谓伪写,是指执行写操作到写入数据之前,其目的是确定要读出的字节单元地址。下面对任意读的操作过程给予说明:执行写操作到写入数据前,也就是在收到输入字节单元地址后的从应答后,mcu再发送起始位,然后发送从器件固定地址(1010)、3 b页选择位和读控制位1,在收到从应答后,mcu从FM24C16里面读出1 B的数据。如果只读1 B的数据,则mcu发送一个无需应答信号,然后发送停止位结束读操作。如果是页面读,mcu就发一个主应答信号,继续读下一个字节数据,直到读出最后一个字节数据后,mcu发出无需应答信号和停止位结束读操作。
       在对FM24C16进行读、写操作的过程中,应该注意以下2个问题:
     (1)时序问题,这主要是指SDA,SCL的高低电平的时序。如果在读、写过程中时序不对或者不稳定,都会引起读、写失败,所以为了保证稳定,可以在程序中适当加入NOP语句延时,但不要过多,以免影响读、写速度。
     (2)SDA数据只能在SCL为低期间变化,在SCL82为高期间,SDA数据要保持不变,否则会被错误地认为是控制位而不是数据位,导致读、写失败。应用接口及程序FM24C16与单片机接口电路非常简单,下面以碳控仪系统中的应用为例给予说明,并给出部分子程序。应用接口图如图2所示,系统中采用2片AT89C55单片机,用其P2.0和P2.1口与SDA,SCL相连接,在SDA和SCL引脚接1.8 kΩ的上拉电阻到+5 V,工作电源也为+5 V,WP引脚接电源地以保证可以任意写入数据。2片AT89C55用P1.0,P1.1作为通讯口,来确定谁操作FM24C16:片1操作前,检测P1.0口,如果为高,则置低P1.1口,向片2发出占用FM24C16信号,然后再检测P1.0口,还为高,则进入操作,若为低,则退出操作并把P1.1口置高;如果P1.0口为低,则说明片2占用FM24C16,片1就放弃操作,等待下次查询和操作。片2的操作相对应于片1。这样,FM24C16不仅作为了公共数据区,而且也成为了2片mcu的一个模拟的通讯口,而且理论上来说,1片FM24C16上可以挂很多mcu,而可以省去不必要的mcu间的通讯。这就需要FM24C16承受快速、频繁读写,这是其他E2PROM望尘莫及的。
% o7 d/ p$ w0 i& Q3 a

& x0 `: C$ _# R  A3 s
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-7 05:06 , Processed in 0.078125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表