EEPROM原理与应用.ppt_第1页
EEPROM原理与应用.ppt_第2页
EEPROM原理与应用.ppt_第3页
EEPROM原理与应用.ppt_第4页
EEPROM原理与应用.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、EEPROM Introduction,AR硬件 李东 00176431,Page 2,目录,EEPROM器件简介 I2C EEPROM器件介绍 SPI EEPROM器件介绍,Page 3,EEPROM是Electrically-Erasable Programmable Read Only Memory的简称,中文意为:电可擦可编程只读存储器。所谓只读存储器是因为可以用管脚设置或软件命令方式设置其工作于只读方式,并没有和可擦可编程的说法矛盾。可以支持100万次擦写,数据保存100年以上。一般来说,EEPROM适用于存储诸如初始化配置数据、单板重要信息等场合,这种场合的要求是:数据存储量比较少

2、、访问速率要求不高、掉电后数据不丢失。因此EEPROM,特别是串行EEPROM是最佳选择,它还能节省单板的空间,我们公司用的都是串行EEPROM。串行EEPROM按照硬件接口的不同可以分为两种: 1、I2C接口EEPROM; 2、SPI接口EEPROM。 以下对这两种串行EEPROM分开来做介绍。,EEPROM 器件简介,Page 4,8PIN的I2C接口EEPROM的管脚图如图所示: 8PIN的I2C接口EEPROM管脚,I2C接口EEPROM管脚说明,Page 5,14PIN-EEPROM比8PIN-EEPROM多出来的管脚都是NC脚,并且不常用,所以此处就不介绍。 I2C接口EEPROM

3、使用两根线进行读写操作,一根为时钟线(SCL)、另一根为数据线(SDA)。SDA为双向信号,同时由于EEPROM只能是I2C总线中的Slave,所以SCL为输入信号。和标准的I2C总线一样,SDA的输出为Open-drain方式。 WP为写保护管脚,高电平使能。 A2:0为地址输入管脚,用来作为EEPROM地址识别位,不同的EEPROM使用的位数不同。 VCC为电源管脚,不同的EEPROM有不同的电源电压要求。同时,不同的供电电压支持的最高时钟频率也不同,电压越高支持的时钟频率也越高。I2C接口EEPROM支持的最高时钟频率一般为100KHz400KHz。 GND为地管脚。,I2C接口EEPR

4、OM管脚说明,Page 6,I2C接口EEPROM操作分析,控制字节格式,Page 7,I2C接口EEPROM操作分析,I2C接口EEPROM传输控制字节格式见上图。 S:开始传输指示。 Control Code:所有I2C接口EEPROM统一的控制码,4位组成“1010”。 Chip Select Bits:EEPROM地址识别位,3位组成A2:0,分别对应器件管脚A2:0的输入电平,当Master器件的I2C总线上挂接多片EEPROM时,可以由此做片选。但是有的EEPROM A2:0这3个管脚未用或者用了12个,那么此处地址识别位中,多余的位可以用来做EEPROM内部存储Block选择(如

5、果需要的话)。 R/W:读写命令,“1”为读;“0”为写。 ACK:Acknowledge bit。,Page 8,I2C接口EEPROM写操作,字节写操作(Byte Write): 字节写操作序列见上图。 一次只写1个字节。 Master先发出Start指令,接着是控制字节EEPROM正常响应,发出Acknowledge bit然后Master再送出要写入的EEPROM存储单元地址EEPROM正常响应,发出Acknowledge bitMaster再送出数据EEPROM正常响应,发出Acknowledge bitMaster发出Stop指令,结束本次写操作。 其中地址位长度视EEPROM容量

6、来定,按目前公司使用的EEPROM容量来看,地址不超过2个字节。,Page 9,I2C接口EEPROM写操作,页写操作(Page Write): EEPROM内有Page Write Buffer,不同容量EEPROM的Page Write Buffer大小不同(可参见表1)。Page写时,数据先写入Page Write Buffer,等到Master发出Stop指令后才往存储单元写。 页写操作序列见上图。 跟字节写不同的是:Master写完1个字节后不发Stop指令,继续送出数据,直到写满EEPROM的Page Write Buffer为止。 EEPROM内部有地址循环计数器,每写入1个字节

7、地址加1,当地址加到当前Page的上界时,如果还继续写的话,地址就会回到当前Page的下界。,Page 10,I2C接口EEPROM写操作,页写操作(Page Write): 以24LC08为例,它的存储结构为:4(block)2568(bit) ,Page Write Buffer大小为16bytes。那么Page Write时,在Control Byte指定Block选择位“B1B0”,在Word Address指定8位地址“A7A6A5A4A3A2A1A0”。那样“B1B0”和“A7A6A5A4”就指定了当前Page Write是哪个Page,“B1B0A7A6A5A40000”为当前P

8、age的下界,“B1B0A7 A6A5A41111”为当前Page的上界,而“A3A2A1A0”指定了从当前Page的哪个单元开始写。内部地址循环计数器就从“A3A2A1A0”开始计数,每写1次加1,当计数值为“1111”时,如果继续写的话,计数值就回到“0000”。 所以一次Page Write操作时,数据不要超过1个Page的长度,否则会造成数据覆盖。,Page 11,I2C接口EEPROM读操作,当前地址读操作: 当前地址读操作序列见上图。 Master每对EEPROM进行一次读/写操作,EEPROM内部地址计数器就会加1,因此当前地址单元为前一次访问的下一个地址单元。 Current

9、Read方式就利用这个原则省略了地址,Master只需送出包含读命令的控制字节就行。 Master接收1个字节后,无效Acknowledge bit,并送出Stop指令,结束当前读操作。,Page 12,I2C接口EEPROM读操作,任意读操作: 任意读操作序列见上图。 Master要先送出写操作命令,并且送出地址,地址可以是任意的。 Master要重新发出开始指令来结束写操作,然后再送出包含读命令的控制字节。 Master接收1个字节后,无效Acknowledge bit,并送出Stop指令,结束当前读操作。,Page 13,I2C接口EEPROM读操作,连续读操作: 连续读操作序列见上图。

10、 跟当前地址读/任意读不同的是:Master接收到1个字节后,不发出Stop指令,而是继续送出Acknowledge bit,继续接收。 每读1次EEPROM地址计数器加1;同样是循环计数,读操作地址计数边界为整片EEPROM地址边界,不同于Page Write地址计数边界。因此连续读方式可以读完整片EEPROM。,Page 14,I2C接口EEPROM读操作,Acknowledge bit检测: 执行写操作时,不论是Byte Write还是Page Write,EEPROM只有接收到Master发出的Stop指令后,才触发内部的写周期。 在内部写周期内,EEPROM不会响应Master的指令

11、。所以Master要检测内部写周期什么时候结束。Master写操作和EEPROM内部写周期检测流程如下图:,Page 15,I2C接口EEPROM读操作,Acknowledge bit检测: 第1步:Master往EEPROM写数据。 第2步:Master结束写操作,并触发EEPROM内部写周期。 第3步:检测开始,Master发出开始指令。 第4步:Master发送包含写命令的控制字节。 第5步:Master检测EEPROM送出的Acknowledge bit:如果是“0”,表示EEPROM内部写周期已结束,可以进行后续的操作;如果是“1”,则表示EEPROM内部写周期还没有结束,这时候应该

12、跳回到第3步,进行循环检测。,Page 16,不同I2C接口EEPROM之间区别,目前,公司使用Microchip公司、Atmel公司的I2C接口EEPROM。它们之间的主要区别见下表:,Page 17,SPI接口EEPROM管脚说明,SPI接口EEPROM的管脚图如图所示:,Page 18,SPI接口EEPROM管脚说明,S:片选输入,高电平有效。 C:时钟输入。 D:串行数据输入。 Q:串行数据输出。 ORG:存储结构选择,上拉或悬空时选择为16-bit方式,下拉时选择为8-bit方式。 Vcc/Vss:电源/地。不同的EEPROM有不同的电源电压要求,同时,不同的供电电压支持的最高时钟频

13、率也不同,电压越高支持的时钟频率也越高。Microchip公司的SPI接口EEPROM最高时钟频率能达到3MHz,Atmel公司的最高能达到2MHz,ST公司的最高能达到1MHz。 PE:Program Enable,写保护输入,只有Microchip公司的SPI接口EEPROM才有,上拉或悬空时可以正常写,下拉时写保护。Atmel、ST公司的SPI接口EEPROM中该管脚为NC脚。,Page 19,SPI接口EEPROM操作分析,不同容量的SPI接口EEPROM操作指令中的地址码长度不同,并且同样的EEPROM在8-bit方式时,地址码长度比16-bit方式时多一位。下表列出的是93LC76

14、的操作指令集,以供参考。其中各指令的含义如下: READ:读。 EWEN:擦除、写使能。 ERASE:擦除。 ERAL:全擦除。 WRITE:写。 WRAL:全写。 EWDS:擦除、写禁止。,Page 20,SPI接口EEPROM操作分析,93LC76指令集ORG=1(16-bit) 93LC76指令集ORG=0(8-bit),Page 21,擦除、写禁止/使能操作指令序列 擦除、写使能指令序列如上图左,擦除、写禁止指令序列如上图右。 时钟未画,后续的图中一样。 此时数据输出管脚为高阻态,也未画出。 当EEPROM上电后或者执行了擦除、写禁止指令后,处于擦除、写禁止状态,此时禁止擦除、写操作,

15、但允许读操作。此时若要想进行擦除或写操作,必须先执行擦除、写使能指令。,SPI接口EEPROM擦除、写禁止使能操作,Page 22,读操作序列 读操作序列见上图。 数据输出(Q)管脚先输出1个“0”bit,然后再由高位到低位顺序输出数据,如果是连续地读,那么后续的输出就没有这个“0”Bit。 16-bit或8-bit方式由ORG引脚电平选择。 只要片选(S)继续为高,并且时钟继续提供,那么EEPROM地址指针会自动增加,就能连续地输出数据,这样就能读出整片EEPROM的数据。Atmel公司SPI接口EEPROM不支持连续读操作。,SPI接口EEPROM读操作,Page 23,写操作序列 写操作

16、序列见上图。 只写一个指定的存储单元。 写操作中已包含了自动擦除操作,所以不需要额外的擦除指令。 16-bit或8-bit方式由ORG引脚电平选择。,SPI接口EEPROM写操作,Page 24,SPI接口EEPROM触发内部Programming的条件: 1、ST公司的:当EEPROM在时钟的上升沿完成最后一位(写和全写操作时为数据位,擦除和全擦除时为地址位)的采样,片选(S)必须在下一个时钟上升沿之前拉低,以触发EEPROM内部的Programming。 2、Atmel公司的:EEPROM完成最后一位(写和全写操作时为数据位,擦除和全擦除时为地址位)的采样后就触发内部Programming

17、。 3、Microchip公司的:EEPROM在时钟上升沿完成最后一位(写和全写操作时为数据位,擦除和全擦除时为地址位)的采样的同时触发内部Programming。 Master对SPI接口EEPROM是否完成内部Programming的检测: 1、ST、Atmel公司的要求Master在片选(S)低电平保持了至少TSLSH(见前面SPI接口EEPROM传输协议介绍)时间,但是在EEPROM完成Programming之前将其拉高,并通过EEPROM的数据输出(Q)管脚电平来检测是否完成Programming,Q=“0”表示Busy,Q=“1”表示Ready。 具体的片选(S)低电平时间长度可以

18、参见芯片手册。 2、Microchip公司的在检测EEPROM是否完成内部Programming时,不需要Master将片选(S)拉低。,SPI接口EEPROM写操作,Page 25,全写操作序列 全写操作序列见上图。 往整片EEPROM里写相同的数,不需要指定具体的地址。 16-bit或8-bit方式由ORG引脚电平选择。 全写操作中已包含了自动擦除操作,所以不需要额外的擦除指令。 Microchip、Atmel、ST公司EEPROM触发内部Programming的条件、对是否完成Programming的状态检测方法,分别跟写操作时一样。,SPI接口EEPROM全写操作,Page 26,擦除操作序列 擦除操作序列见上图。 只擦除指定的一个存储单元。 擦除操作使得存储单元数据变成全“1”,不需要Master输入数据。 16-bit或8-bit方式由ORG引脚电平选择。 Microchip、Atmel、ST公司EEPROM触发内部Programming的条件、对是否完成Programming的状态

温馨提示

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

评论

0/150

提交评论