EEPROM的详细分析

EEPROM的详细分析

公众号: 数字积木

本例的EEPROM型号为AT24CM01,在电路中的引脚连接如下图所示:

1,该器件的特性如下:

  • 时钟支持标准模式(100KHZ),快速模式(400KHZ),极快速模式(1MHz)。

  • 支持标准电压(VCC=2.5v-5.5v),低压模式(VCC= 1.7v-5.5v)。

  • 工业级温度范围:-40℃至85℃。

  • 内部容量为1Mbit(131072*8bit)

  • 双向数据传输端口。

  • 256字节页写入模式。

--允许字节写入和部分页写入。

  • 随机读和按顺序读数据。

  • 内置错误检测和校正。

  • 高可靠性:

--1,000,000次写入。 --数据保持100年。 2,该芯片的引脚分布(两种不同的封装)

引脚名称描述NC不连接A1器件地址输出1A2器件地址输入2GND电源地VCC电源WP写保护。1:开启写保护,禁止写入,0:正常写模式SCL串行数据线SDA串行数据线如果A2,A1或WP引脚没有被外部驱动,它们在内部被拉到GND。 3,器件原理框图 从该器件的原理框图可以看出,该器件的SDA引脚是一个双向端口,并且输出端口为开漏输出,需要在引脚出接上上拉电阻才能输出高电平,组成线与逻辑。

该EEPROM的器件地址定义如下: 地址的高4位是预定义好的,值为"1010",bit3,bit2根据引脚A2,A1连接的电平来决定,在该设计中,A2,A1均为0,bit1位为寄存器地址的最高位(A16),bit0位为读写选择位。写时为0,读时为1。

该EEPROM的的寄存器地址为双字节,定义如下

首先发送寄存器地址的高8位字节地址,然后发送寄存器地址的低8位字节地址。 在一个电路中使用多个该芯片的电路连接:将各个芯片的数据线和地址线和主机的数据和地址线相连,同时外接上拉电阻。给不同的器件分配不同的器件地址(A1,A2),两个地址为最多可以分配4个地址,故一个主机IIC端口最多可以挂载4个该芯片。

器件的操作与通信: IIC有一下操作状态: 空闲状态(IDLE):时钟和信号总线均为高。 开始信号(START):处理器让SCL时钟保持高电平,然后让SDA数据信号由高变低就表示一个开始信号。同时IIC总线上的设备检测到这个开始信号它就知道处理器要发送数据了。 停止信号(STOP):处理器让SCL时钟保持高电平,然后让SDA数据信号由低变高就表示一个停止信号。同时IIC总线上的设备检测到这个停止信号它就知道处理器已经结束了数据传输,我们就可以各忙各个的了,如休眠等。 数据传输:SDA上的数据只能在SCL为低电平期间翻转变化,在SCL为高电平期间必须保持稳定,IIC设备只在SCL为高电平期间采集SDA数据。 响应信号(ACK):单片机发完8bit数据后就不再驱动总线了(SDA引脚变输入),而SDA和SDL硬件设计时都有上拉电阻,所以这时候SDA变成高电平。那么在第8个数据位,如果外接IIC设备能收到信号的话接着在第9个周期把SDA拉低,那么处理器检测到SDA拉低就能知道外接IIC设备数据已经收到。IIC数据从最高位开始传输(小端传输)。 非应答信号(NAK):在连续读数据时,当读取完最后一个字节数据时,从机不产生响应信号。 该芯片支持字节写入和页写入(一次连续最多写入256个字节),字节写入的时序如下图所示,每写完成一个字节,从机都会有一个响应信号. 1,字节写入时序:

  1. 发送开始信号。

  2. 器件地址+写标志(0)。

  3. 等待器件应答。

  4. 写第一字节地址。

  5. 等待器件应答。

  6. 写第二字节地址。

  7. 等待应答。

  8. 写数字字节。

  9. 等待应答。

  10. 发送停止信号。

2,页写入时序图:

该器件支持3中模式的读操作: 当前地址读, 随机地址读, 顺序读取。 1,当前地址读 内部数据字地址计数器保存上次读或写操作期间访问的最后一个地址上增加一个地址。只要保持电源,此地址一直有效。被维持到这个部分。读取过程中的地址翻转是从最后一页的最后一个字节到内存第一页的第一个字节。

2,随机地址读取

3,顺序读取

  • 15
    点赞
  • 79
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
dsp中使用i2c协议来存储eeprom是一种常见的应用场景,下面我将通过一个实例来详细介绍这个过程。 首先,i2c是一种串行通信协议,用于在主设备和从设备之间进行数据传输。而eeprom是一种电子可擦写可编程只读存储器,可以在电源关闭的情况下持久保存数据。 在dsp中,使用i2c协议访问eeprom通常需要按照以下步骤进行: 1. 初始化i2c总线:在使用i2c之前,需要初始化i2c总线,设置控制寄存器和时钟等参数。这些参数通常根据eeprom的规格手册来配置。 2. 设置从设备地址:根据eeprom的规格手册,设置该eeprom的从设备地址。在i2c总线上,每个从设备都有一个唯一的地址,通过这个地址可以识别和访问该设备。 3. 写入数据:使用i2c协议,发送写入命令和数据到eeprom,将要保存的数据写入到eeprom的存储区域。 4. 读取数据:使用i2c协议,发送读取命令到eeprom,并从eeprom的存储区域读取数据。可以通过读取指定地址或者连续读取多个地址的方式获取需要的数据。 5. 关闭i2c总线:在完成数据读写操作后,关闭和释放i2c总线资源。 总结起来,dsp中使用i2c存储eeprom的实例分析主要涉及初始化i2c总线、设置从设备地址、写入数据、读取数据以及关闭i2c总线等过程。这些步骤可以根据具体的dsp和eeprom的规格手册进行具体的实现和调试。通过使用i2c协议来存储eeprom,可以实现dsp与外部存储器之间的数据交互,扩展dsp系统的存储容量和功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值