[N32WBxxx] AT24C02型和AT24C512型EEPROM进行IIC通信时的IIC代码区别

[复制链接]
1357|2
 楼主| 无非0到1 发表于 2022-9-30 10:23 | 显示全部楼层 |阅读模式
本帖最后由 无非0到1 于 2022-9-30 10:23 编辑

      最近在使用N32WB452进行读写EEPROM,开发套件里面的IIC例程提供了读写AT24C02型EEPROM的例程,
经过测试验证可以正常读写,但是AT24C512型EEPROM时失败了,经过测试分析发现,由于两个型号的EEPROM内存不同,
导致IIC进行读写时的发送指令的要求不同。

AT24C02只有8*32=256个字节,所以只需要发送8位读写地址 2^8 = 256
AT24C512有128*512=65535个字节,所以需要发送16位读写地址2^16=65535
需要注意修改的是IIC从机设备的地址,这里都是0xA0不需要修改,
AT24C02:  读写只需要发8位地址,IIC从机地址:0xA0 (A0、A1、A2都接GND), 页大小:8字节,读写时只需要发送8位的地址;
AT24C512:读写需要发16位地址,IIC从机地址:0xA0  (A0、A1、A2都接GND),页大小:128字节,读写时先发送高8位地址,再发送低8位地址。


f8090f0fe3e556c17d948865a5a0fe8.jpg
bb813abc8d466e3ce55b218fdd8ca4d.jpg
软核硬核 发表于 2022-10-5 20:23 | 显示全部楼层
用AT24C512是不是还不如上Flash呢?
V853 发表于 2022-10-6 11:02 | 显示全部楼层
区别原来在这,一个系列的驱动代码确实不会有太大的区别~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

24

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部