gpt4 book ai didi

c - 使用 pic16 从 eeprom 中读取数据

转载 作者:行者123 更新时间:2023-11-30 19:33:42 28 4
gpt4 key购买 nike

我目前正在使用带有 eeprom (24LC16BI/OT) 的 pic16f1825,并且我正在尝试从 eeprom 中读取数据。 eemprom 上已经有一个文件,但我遇到的麻烦是我要使用什么地址,因为我正在阅读数据表,它说读取的地址是 1010,R/W 位为 1。地址也是如此或者我是否还需要使用不同的地址,因为我想浏览文件来搜索关键字,如果我这样做,我是否每次都需要有不同的地址来读取不同的内容?

最佳答案

对于读取操作,EEPROM具有“顺序读取模式”

8.3 Sequential Read

Sequential reads are initiated in the same way as a random read, except that once the 24XX16 transmits the first databyte, the master issues an acknowledge as opposed to a Stop conditionin a random read. This directs the 24XX16 to transmit the nextsequentiallyaddressed 8-bit word (Figure 8-3).

我会尝试简化步骤:

  1. 发送开始条件。
  2. 发送写控制信号,即 10100000
  3. 您收到 ACK 信号
  4. 然后发送您想要开始的读取地址。如果它位于开头,则只需 00000000
  5. 您收到 ACK 信号。
  6. 发送开始条件,停止写入模式并启动新的读取模式。
  7. 发送读取控制字节10100001
  8. 您获得第一个数据字节
  9. 您发送 ACK 信号
  10. 您将获得下一个数据字节。
  11. 继续 9-10,直到发送停止条件。

步骤 1-5 使 EEPROM 的内部地址指针指向您想要开始的读取地址(在上述情况下为 00000000)。其余的由芯片内部处理。它在主机发出每个 ACK​​ 信号后递增指针。这样,您就可以读取整个范围。

关于c - 使用 pic16 从 eeprom 中读取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45107143/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com