2014-10-21 11:31:25 [显示全部楼层]
12946浏览
查看: 12946|回复: 6

[进阶] 关于外部EEPROM的使用

[复制链接]
学了Arduino两个月,UNO让人尴尬的内存,让有强迫症的我感觉不自在,尝试使用外部EEPROM时,却发现很多教程之间存在一个问题——仅仅适用于一种EEPROM,2K的代码,用得到32K的就不行了~经过两个月的苦心钻研,参考各位的库文件,经过自行修改和调试,写了一个兼容性较为客观的库文件(当然,大神可以无视这句话...:L留给同样喜欢Arduino的入门新手参考)
  1. #include <AT24CXXX.h>
  2. #include <Wire.h>
  3. AT24CXXX ROM_512;
  4. void setup()
  5. {
  6.   Wire.begin();        //启动I2C通信
  7.   Serial.begin(9600);
  8.   
  9.   ROM_512.Memory_Size(512);
  10.   //512K内部地址:  0x0000——0xffff
  11.   //32K内部地址:   0x0000——0x0fff
  12.   //2K内部地址:    0x0000——0x00ff
  13. }
  14. void loop()
  15. {
  16.   byte a0 = 0xff;  byte a1 = 0xff;
  17.   
  18.   //WriteByte(硬件地址位,内部地址位,一个字节数据)
  19.   ROM_512.WriteByte(0x50 ,0x0000 ,0xaa);
  20.   ROM_512.WriteByte(0x50 ,0x00ff ,0xbb);
  21.   
  22.   //Readbyte(硬件地址位,内部地址位)  
  23.   a0 = ROM_512.ReadByte(0x50 ,0x0000);
  24.   a1 = ROM_512.ReadByte(0x50 ,0x00ff);
  25.   
  26.   Serial.print("a0=");delay(10);
  27.   Serial.println( a0,HEX );delay(1000);
  28.   Serial.print("a1=");delay(10);
  29.   Serial.println( a1,HEX );delay(1000);
  30. }
复制代码
这个是最简单的一个,使用时要注意EEPROM的内存容量(Memory_Size),自己百度对应的datasheet,查看AT24CXXX系列EEPROM的内部地址最高为多少,因为超过了,它会自动覆盖,从0x0000开始重写~目前尝试过AT24C02,AT24C32,AT24C512的EEPROM,如果你们使用过程中遇到问题请留言,大家交流一下
PS:还是别用512K以上的EEPROM,512都解决不了,还是直接上SD卡吧;P

AT24CXXX.zip

4.19 KB, 下载次数: 2885

库文件+例程

zsh516  学徒

发表于 2014-11-4 21:14:24

最近遇到一个问题,也尝试了你的代码,,还是只能读数据,不能写入数据,我用的不是标准的eeprom,是集成在另一个芯片里的,还有就是,用了一块8051的调试板是可以往里面写入数据的,用arduino不行,不知道如何解决,求教
回复

使用道具 举报

zsh516  学徒

发表于 2014-11-5 09:12:53

方便加QQ联系吗
回复

使用道具 举报

zsh516  学徒

发表于 2014-11-5 09:12:53

方便加QQ联系吗
回复

使用道具 举报

加饭  高级技师
 楼主|

发表于 2014-11-7 13:02:46

zsh516 发表于 2014-11-4 21:14
最近遇到一个问题,也尝试了你的代码,,还是只能读数据,不能写入数据,我用的不是标准的eeprom,是集成在 ...

我也不是很专业,对于你的问题,无法给出准确的解释,但可以给你提个建议:芯片的写保护引脚是否被锁了?其次更换一下读取的地址位,看读取的数据与之前写入的是否一致~
另外查看相关数据手册,看一下该芯片的通信协议~
回复

使用道具 举报

小A  学徒

发表于 2014-11-18 13:30:00

大神请教一个问题
能不能向 EEPROM中写入程序,让
arduino来运行?
我现在有个程序39K大小,UNO完全用不了啊!
回复

使用道具 举报

luke02  学徒

发表于 2023-4-18 08:49:08

感谢share ,我下载了,可以学习一下,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail