如何重置Giantec GT24C64A EEPROM中的内部地址计数器?

问题描述 投票:0回答:1

我正在尝试使用

i2cgert
(或
i2ctransfer
)从 eeprom 中读取数据,但我无法重置 eeprom 的内部地址计数器。因此,我每次读取相同偏移量的不同值。
例如:

$ i2ctransfer -y 0 w1@0x52 0x00 r20@0x52
0x00 0x00 0x00 0x40 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x20 0x00 0x00 0x00  

$ i2ctransfer -y 0 w1@0x52 0x00 r20@0x52
0x05 0x00 0x00 0x20 0x00 0x00 0x00 0x30 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

您能否帮助我了解如何使用

i2ctransfer
i2cget
进行阅读并确保我从 eeprom 的开头开始阅读?

linux i2c eeprom
1个回答
0
投票

我不知道

i2ctransfer
的内部结构,尽管我用它来读取SFP 512字节EEPROM并且它有效。

这个来自DS,首先如何设置随机地址:

5.10.2 随机地址读取 选择性读取操作允许主设备选择 随机读取操作的任何内存位置。这 主设备首先执行“虚拟”写操作 发送起始条件、从机地址和字节 它希望读取的位置的地址。之后 GT24C64A 确认字节地址,主机 设备重新发送开始条件和从机地址, 这次 R/W 位设置为 1。然后EEPROM 使用 ACK 进行响应并发送所请求的数据。这 主设备不发送ACK,但会生成一个 停止条件。 (参见图 5-9。随机地址读取 图表。)

© www.soinside.com 2019 - 2024. All rights reserved.