ADI AN-1009应用笔记:ADM106x EEPROM的读写操作

简单PLD

6人已加入

描述

  ADM106x EEPROM的块擦除、块读取和块写入

  本应用笔记说明如何对ADM106x EEPROM空间的单一页面(32字节)进行块擦除、块写入和块读取。本文中为便于说明,假设需擦除、写入和读取的EEPROM范围为0xF8;0x00至0xF8; 0x1F。

  0xF8; 0x00至0xF8; 0x1F EEPROM空间的块擦除

  欲对EEPROM空间进行块擦除,请执行下列步骤。

  1. 将0x05写入寄存器0x90,使能EEPROM块擦除。

  2. 执行下面列出的所有SMBus操作。

  • 发送从机地址WRITE

  • 接收应答消息

  • 发送EEPROM高位地址(0xF8)

  • 接收应答消息

  • 发送EEPROM低位地址(0x00)

  • 接收应答消息

  • 发送STOP

  • 发送从机地址WRITE

  • 接收应答消息

  • 发送页擦除命令代码(0xFE)

  • 接收应答消息

  • 发送STOP

  3. 对于要擦除的EEPROM每一页,重复执行第2步中的程序。但是,低位地址(发送EEPROM低位地址)应递增32字节,例如:0x20、0x40、0x60、0x80、0xA0、0xC0和0xE0。

  4. 将0x01写入寄存器0x90,禁用EEPROM块擦除。

  0xF8; 0x00至0xF8; 0x1F EEPROM空间的块写入

  欲对EEPROM空间进行块写入,请执行下列步骤。

  1. 执行下面列出的所有操作。

  • 发送从机地址WRITE

  • 接收应答消息

  • 发送EEPROM高位地址(0xF8)

  • 接收应答消息

  • 发送EEPROM低位地址(0x00)

  • 接收应答消息

  • 发送STOP

  • 发送从机地址WRITE

  • 接收应答消息

  • 发送块写入命令(0xFC)

  • 接收应答消息

  • 发送要写入的字节数(0x20)

  • 接收应答消息

  • 发送32字节的数据

  • 每发送一个字节后从器件接收应答消息

  • 发送STOP

  2. 对于要写入的EEPROM每一页,重复执行第1步中的程序。但是,低位地址(发送EEPROM低位地址)应递增32字节,例如:0x20、0x40、0x60、0x80、0xA0、0xC0和0xE0。

  0xF8; 0x00至0xF8; 0x1F EEPROM空间的块读取

  欲对EEPROM空间进行块读取,请执行下列步骤。

  1. 将0x01写入寄存器0x90,使能配置寄存器连续更新。

  2. 执行下面列出的所有操作。

  • 发送从机地址WRITE

  • 接收应答消息

  • 发送EEPROM高位地址(0xF8)

  • 接收应答消息

  • 发送EEPROM低位地址(0x00)

  • 接收应答消息

  • 发送STOP

  • 发送从机地址WRITE

  • 接收应答消息

  • 发送块读取命令(0xFD)

  • 接收应答消息

  • 发送从机地址READ

  • 接收应答消息

  • 接收要读取的数据字节数(0x20)

  • 发送主机应答消息

  • 接收32字节的数据

  • 每接收一个字节后发送主机应答消息

  • 发送STOP

  3. 对于要读取的EEPROM每一页,重复执行第2步中的程序。但是,低位地址(发送EEPROM低位地址)应递增32字节,例如:0x20、0x40、0x60、0x80、0xA0、0xC0和0xE0。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分