串行E2PROM的类型及应用(上)

串行E2PROM的类型及应用(上)

  串行E2PROM是可在线电擦除和电写入的存储器,具有体积小、接口简单、数据保存可靠、可在线改写、功耗低等特点,而且为低电压写入,在单片机系统中应用十分普遍。

  串行E2PROM按总线形式分为三种,即I2C总线、Microwire总线及SPI总线三种。本文将以Microchip公司的产品为例对以上三种串行E2PROM进行介绍。

  一、I2C总线型

  I2C总线,是INTER INTEGRATED CIRCUIT BUS的缩写,即“内部集成电路总线”。I2C总线采用时钟(SCL)和数据(SDA)两根线进行数据传输,接口十分简单。Microchip公司的24XX系列串行E2PROM存储容量从128位(16×8)至256k位(32k×8),采用I2C总线结构。24XX中,XX为电源电压范围。

  1引脚

  图1是24AA00/24LC00/24C00型128位I2C总线串行E2PROM的引脚图。

  SDA是串行数据脚。该脚为双向脚,漏极开路,用于地址、数据的输入和数据的输出,使用时需加上拉电阻。

  SCL是时钟脚。该脚为器件数据传输的同步时钟信号。

  SDA和SCL脚均为施密特触发输入,并有滤波电路,可有效抑制噪声尖峰信号,保证在总线噪声严重时器件仍能正常工作。

  在单片机系统中,总线受单片机控制。单片机产生串行时钟(SCL),控制总线的存取,发送STRAT和STOP信号。

  2总线协议

  ●仅当总线不忙(数据和时钟均保持高电平)时方能启动数据传输。

  ●在数据传输期间,时钟(SCL)为高电平时数据(SDA)必须保持不变。在SCL为高电平时数据线(SDA)从高电平跳变到低电平,为开始数据传输(START)的条件,开始数据传输条件后所有的命令有效;SCL为高电平时,数据(SDA)从低电平跳变到高电平,为停止数据传输(STOP)的条件,停止数据传输条件后所有的操作结束。

  ●开始数据传输START后、停止数据传输STOP前,SCL高电平期间,SDA上为有效数据。

  ●字节写入时,每写完一个字节,送一位传送结束信号ACK,直至STOP;读出时,每读完一个字节,送一位传送结束信号ACK,但STOP前一位结束时不送ACK信号。

  3器件寻址

  START后,单片机发送一个控制字,该控制字包括Start位(S)、受控地址(7位,对24XX00来说前四位为1010,后三位无关系)、读写(R/W)选择位(“1”为读,“0”为写)及传送结束位ACK。24XX00的控制字格式如下:

  S 1 0 1 0 X X X R/W ACK

  24XX00随时监视总线上是否为有效地址,若受控地址正确且器件未处在编程方式下,则产生传送结束位ACK。

  4写操作 

  单片机送出开始信号后,接着送器件码(7位)、R/W位(“0”),表示ACK位后面为待写入数据字节的字地址和待写入数据字节,然后结束一个字节的写入。即S+写控制字(R/W位为“0”)+ACK(“0”)+字地址+ACK(“0”)+写入数据+ACK(“0”)+STOP。

  5读操作

  读操作有三种,读当前地址的内容、读指定地址的内容、读指定起始地址后的若干字节的内容。  读当前地址的内容为:S+读控制字(R/W位为“1”)+ACK+读出数据+no ACK+STOP

  读指定地址的内容为:S+写控制字(R/W位为“0”)+ACK+写入数据+ACK+读控制字(R/W位为“1”)+ACK+读出数据+no ACK+STOP

  读指定起始地址后的若干字节的内容为:S+写控制字(R/W位为“0”)+ACK+写入数据+ACK+读控制字(R/W位为“1”)+ACK+读出数据(1)+ACK+……+读出数据(n+x)+noACK+STOP

  24XX系列串行E2PROM存储芯片与单片机硬件接口只有SCL和SDA两根线,非常简单。文军维修

串行E2PROM的类型及应用(上)相关文档

最新文档

返回顶部