资源描述:
《关于24CXX存储芯片及IIC的读写协议.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、所看过的对24系列I2C读写时序描述最准确最容易理解的资料,尤其是关于主从器件的应答描述和页写描述,看完后明白了很多。关于页写的描述,网络上绝大部分范程都没提到页写时的数据地址必须是每页的首地址才能准确写入,而且如果写入超过一页的数据会循环覆盖当前页的数据。 关于IIC总线 I2C总线:i2c总线是Philips公司首先推出的一种两线制串行传输总线。它由一根数据线(SDA)和一根时钟线(SDL)组成。i2c总线的数据传输过程如图3所示,基本过程为: 1、主机发出开始信号。 2、主机接着送出1字节的从机地址信
2、息,其中最低位为读写控制码(1为读、0为写),高7位为从机器件地址代码。 3、从机发出认可信号。 4、主机开始发送信息,每发完一字节后,从机发出认可信号给主机。 5、主机发出停止信号。 I2C总线上各信号的具体说明: 开始信号:在时钟线(SCL)为高电平其间,数据线(SDA)由高变低,将产生一个开始信号。 停止信号:在时钟线(SCL)为高电平其间,数据线(SDA)由低变高,将产生一个停止信号。 应答信号:既认可信号,主机写从机时每写完一字节,如果正确从机将在下一个时钟周期将数据线(SDA)拉低,以告诉主机
3、操作有效。在主机读从机时正确读完一字节后,主机在下一个时钟周期同样也要将数据线(SDA)拉低,发出认可信号,告诉从机所发数据已经收妥。(注:读从机时主机在最后1字节数据接收完以后不发应答,直接发停止信号)。 注意:在I2C通信过程中,所有的数据改变都必须在时钟线SCL为低电平时改变,在时钟线SCL为高电平时必须保持数据SDA信号的稳定,任何在时钟线为高电平时数据线上的电平改变都被认为是起始或停止信号。 作为一种非易失性存储器(NVM),24系列EEPROM使用的很普遍,一般作为数据量不太大的数据存储器。下面总结一下
4、其应用的一些要点。从命名上看,24CXX中XX的单位是kbit,如24C08,其存储容量为8kbit,即1kByte=1024Byte。 一、工作条件 1.工作电压(VCC) 24CXX:4.5V-5.5V 24CXX-W:2.5V-5.5V 24CXX-R:1.8V-5.5V 2.输入电平定义(VIH,VIL) VIH:0.7VCC-VCC+1 VIL:-0.45V-0.3VCC 二、硬件连接 1.上拉电阻RP的取值 由于I2C总线电容要满足小于400pf的条件。从以下波形可以看出,上拉电阻越大,总
5、线的电容越小,可以实现的数据传输率就越大,可达400khz。 2.写保护脚 芯片写保护脚是高电平有效,即WP接高电平时禁止写入 3.地址脚 24C01/24C02三个地址脚(E0,E1,E2)都有效,24C04只有E2,E1有效,24C08只有E2有效,24C16三个地址脚都无效,如下图所示,所谓地址脚无效是指不需要接入电路中(NC,notconnected),其对应的地址位要用来表示要操作的字节的高位地址。 24C32/24C64三个地址脚都有效; 24C128/24C256/24C512的地址脚E1和E0有
6、效,其余为NC; 24C1024的地址脚E1有效,其余为NC。 三、寻址方式 1.器件地址 当总线上连接多个I2C器件时,需要对器件进行寻址。器件地址如下表所示,其中E2,E1,E0是指三个引脚的状态,取决于是接地还是接高电平,R/W为1则为读操作,为0则为写操作。A8,A9,A10,A16指的是所要操作的字节地址的高位,后面会提到。 芯片bit7bit6bit5bit4bit3bit2bit1bit0 24C01/02/211010E2E1E0R/W 24C041010E2E1A8R/W 24C0
7、81010E2A9A8R/W 24C161010A10A9A8R/W 24C32/641010E2E1E0R/W 24C128/256/51210100E1E0R/W 24C102410100E1A16R/W 2.字节地址 在对芯片内的某一字节或一连续地址进行读写操作时,需要制定其地址或首字节的地址,不同芯片地址有不同的表示方式,如下表所示,其中有些芯片的地址位的高位存储在器件地址中。 芯片地址位数地址范围 24C01bit7-bit00x00-0x7F 24C02bit7-bit00x00-0x
8、FF 24C04A8,bit7-bit00x00-0x1FF 24C08A9,A8,bit7-bit00x00-0x3FF 24C16A10,A9,A8,bit7-bit00x00-0x7FF 24C32bit15-bit8,bit7-bit00x00-0xFFF 24C64bit15-bit