微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于AT24C02芯片的问题

关于AT24C02芯片的问题

时间:10-02 整理:3721RD 点击:
我想问问就是AT24c02需要另外的电源来供电的吗?还有芯片里面的地址是怎样排的?也就是你把数据写进去,读出来是怎样的时序呢?我希望断电的时候就把数据存进里面去,通电的时候就读取数据出来,然后就想问断电的时候是怎样是怎样把数据存进去的?本人才疏学浅,第一次使用这个芯片,望各位大虾指教指教。

此芯片有8个引脚,分别是(A0、A1、A2、GND、SDA、SCL、WP、VCC)——(跟1-8顺序对应)。
A0、A1、A2——可编程地址输入端;SDA——串行数据输入/输出端;SCL——串行时钟输入端;WP——写保护输入端,用于硬件数据保护,低电平正常读写,高电平可读不可写;
(1)针对第一个问题,显然是需要供电的,从Vcc接入电源。
(2)AT24C02存储容量为2Kb,内部分成32页,每页8B,共256B。操作时有两种寻址方式:芯片寻址和片内子地址寻址。
      1)芯片寻址:AT24C02的芯片地址为1010,其地址控制字格式为1010A2A1A0R/W。其中A2,A1,A0可编程地址选择位。A2,A1,A0引脚接高、低电平后得到确定的三位编码,与1010形成7位编码,即为该器件的地址码。R/W为芯片读写控制位,该位为0,表示芯片进行写操作。
      2)片内子地址寻址:芯片寻址可对内部256B中的任一个进行读/写操作,其寻址范围为00~FF,共256个寻址单位。
(3)数据写入方式有两种:字节写入和页写入
      1)字节写入:此方式下一次数据帧中只访问E^2PROM一个单元。单片机先发送启动信号——再发一个字节的控制字——再发一个字节的存储器单元子地址。这几个字节均得到E^2PROM响应后,再发送8位数据,最后发送1位停止信号。
       2)页写入:此方式下,在一个数据周期内可以连续访问一页(8个)E^2PROM存储单元。单片机先发送启动信号——再发一个字节的控制字——再发一个字节的存储器起始单元地址。这几个字节均得到E^2PROM响应后,再发送最多1页数据顺序存放在以指定起始地址开始的相继单元中,最后发送1位停止信号结束。
(4)读操作:读指定地址单元的数据和指定地址连续读。
      1)读指定地址单元的数据。单片机在启动信号后先发送含有片选地址的写操作控制字,E^2PROM应答后再发送一个字节的指定单元的地址,E^2PROM应答后再发送1个含有片选地址的读操作控制字,若E^2PROM作出应答,被访问单元数据就会按SCL信号同步出现在串行数据/地址线SDA上。
       2)指定地址连续读。此种方式的读地址控制与前面的指定地址读相同。单片机接收到每个字节数据后作出应答,只要E^2PROM检测到应答信号,其内部的地址寄存器就自动加1指向下一单元,并顺序将指向的单元数据送到SDA串行数据线上。
      在需要结束读操作时,单片机接收到数据后在需要应答的时刻发送一个非应答信号,接着在发送一个停止信号即可。
以上就是此芯片的全部读写过程。

经典的iic总线协议教材,通过iic,发送各种指令存入,通电后也是iic读取,具体可看各类单片机教程。由于内部是rom,断电后不丢失数据。至于所谓断电存数据,一个芯片没电能工作吗?

谢谢~!~!,我再看看行不行~!

哦~!好的,我再试试看,谢谢大虾的帮忙~!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top