快捷搜索:

AT24C系列芯片的驱动设计

AT24Cxx系列EEPROM是由美国Mcrochip公司出品,1-512K位的支持I2C总线数据传送协议的串行CMOS E2PROM,可用电擦除,可编程自准时写周期(包括自动擦除光阴不跨越10ms,范例光阴为5ms)的。串行E2PROM一样平常具有两种写入要领,一种是字节写入要领,还有另一种页写入要领。容许在一个写周期内同时对1个字节到一页的多少字节的编程写入,1页的大年夜小取决于芯片内页寄存器的大年夜小。此中,AT24C01具有8字节数据的页面写能力,AT24C02/04/08/16具有16字节数据的页面写能力,AT24C32/64具有32字节数据的页面写能力

AT24CXX的驱动是基于IIC的,在基础的IIC上加入了一些通讯协议,详细如下

1.随机写

主器件发送肇端敕令和从器件地址

信息(R/W 位置 0)给从器件,主器件在收到从器件孕育发生应答旌旗灯号后,主器件发送 1 个 8 位字节地址写入 AT24C01/02/04/08/16 的地址指针,对付 AT24C31/64/128/256 来说,所不合的是主器件发送两个 8 位地址字写入 AT24C32/64/128/256 的地址指针。主器件在收到从器件的另一个应答旌旗灯号后,再发送数据到被寻址的存储单元。AT24Cxx 再次应答,并在主器件孕育发生竣事旌旗灯号后开始内部数据的擦写,在内部擦写历程中,AT24Cxx 不再应答主器件的任何哀求。

2.页写

在页写模式下,AT24C01/02/04/08/16/32/64/128/256可一次写入%208%20/16/16/16/16/32/32/64/64%20个字节数据。页写操作的启动和字节写一样,不合的是在于传送了一字节数据后并不孕育发生竣事旌旗灯号。主器件被容许发送%20P(AT24C01:P=7;AT24C02/04/08/16:%20P=15;AT24C32/64:P=31;AT24C128/256:P=63)个额外的字节。每发送一个字节数据后%20AT24Cxx%20孕育发生一个应答位,%20且内部低位地址加%201,高位维持不变。假如在发送竣事旌旗灯号之前主器件发送跨越%20P+1%20个字节,地址计数器将自动翻转,先前写入的数据被覆盖。%20接管到%20P+1%20字节数据和主器件发送的竣事旌旗灯号后,AT24Cxx%20启动内部写周期将数据写到数据区。

3.急速读

4.随机读

随机读操作容许主器件对寄存器的随意率性字 节进行读操作,主器件首先经由过程发送肇端旌旗灯号、从器件地址和它想读取的字节数据的地址履行一个伪写操作。在 AT24Cxx 应答之后,主器件从新发送肇端旌旗灯号和从器件地址,此时R/W 位置 1, AT24CXX 相应并发送应答旌旗灯号,然后输出所要求的一个 8 位字节数据,主器件不发送应答旌旗灯号但孕育发生一个竣事旌旗灯号。

随机读必要设定必要读的地址,然后有一次伪写入历程,这个伪写入是为了改动存储器内部的事情指针顺序读操作可经由过程急速读或选择性读操作启动。

5.顺序读

在 AT24Cxx 发送完一个 8 位字节数据后,主器件孕育发生一个应答旌旗灯号来相应,见告 AT24CXX主器件要求更多的数据,对应每个主机孕育发生的应答旌旗灯号 AT24Cxx 将发送一个 8 位数据字节。当主器件不发送应答旌旗灯号而发送竣事位时停止此操作。 从 AT24Cxx 输出的数据按顺序由 N 到 N+1输出。读操作时地址计数器在 AT24Cxx 全部地址内增添,这样全部寄存器区域在可在一个读操作内整个读出。当读取的字节跨越 E(AT24C01,E=127;AT24C02,E=255;AT24C04,E=511;AT24C08,E=1023;AT24C16,E=2047;AT24C32,E=4095;AT24C64,E=8191;AT24C128,E=16383;AT24C256,E=32767)计数器将翻转到零并继承输出数据字节 顺序读着实便是在前两个的根基上,一个数据读完了不发送noack二十发送ACK这样就可以不停读下去,必要自己计数由于存储器内部指针会自动轮回的以是只要按照时序图的标准来祝贺IIC根基驱动,就能实现一个存储器的驱动了。

责任编辑;zl

您可能还会对下面的文章感兴趣: