I2C E2PROM问题

[复制链接]
1806|7
 楼主| yybj 发表于 2012-12-27 23:17 | 显示全部楼层 |阅读模式
现在遇到一个问题是:我保存的数据从1到3000,数据有3000个,每保存一个数据需要一个地址,也需要3000个地址,
而I2C_Send7bitAddress和I2C_SendData都是8位,最大不能超过256个地址和256个数据,现在本人有3000个数据,怎样保存超过256个地址和256个数据,希望大家提供编程程序以及算法,最好编程有注释
秋天落叶 发表于 2012-12-27 23:31 | 显示全部楼层
先要看下24LC16B的时序,读写操作时包括地址的。
xsgy123 发表于 2012-12-27 23:50 | 显示全部楼层
具体看一下EEPRROM 的I2C时序
sinadz 发表于 2012-12-28 00:02 | 显示全部楼层
找个例子好了,STM32的E2PROM应该很多
dtmcp 发表于 2012-12-28 06:39 | 显示全部楼层
可以根据时序自已改造API函数,3000的话,可以用批量写
江枫渔火 发表于 2012-12-29 16:19 | 显示全部楼层
这完全没有问题。
当你写的数据到了256+1个的时候,则可能要发送一条指令给24cxx,让它切换到另一页空间。你给24cxx发送指令和数据都不会需要超过8位。
如果你是连续写入或读出数据,你不必每次都给出数据地址,你只需要给出首个数据的地址位置即可。
ZG11211 发表于 2012-12-30 11:25 | 显示全部楼层
翻页啊
happy啦啦啦 发表于 2013-1-5 09:43 | 显示全部楼层
这个问题不难,你在同一个地址下都可以完成3000个数据的存储。这个地址和IIC的处理没有关系,只和你的EEPROM存储的地址段有关系,你可以设置一个标志位 把EEPROM的存储地址分成若干个256的空间。标志位可以从0,1,,2,3.。。。。。。。等等 存储多少都行,在写存储的时候 你先发送标志位,让然后在发送你要存储的数据。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

175

主题

2496

帖子

1

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