OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4995|回复: 4

模拟IIC写数据到EEPROM

[复制链接]

80

主题

188

帖子

0

精华

高级会员

Rank: 4

积分
679
金钱
679
注册时间
2013-8-16
在线时间
37 小时
发表于 2014-1-3 20:23:39 | 显示全部楼层 |阅读模式
大家好,我最近使用模拟的IIC写了许多数据到EEPROM中,这些数据分成一个一个包,每一包的数据占有一段独立的存储空间(在外接的EEPROM中)。例如:用户1 的数据占0x00~0xFF,用户2的数据占0x100~0x1FF,用户3……。如果我在给每个用户的每一个数据分配地址的时候是连续分配(如:第一个数据地址0x00,第二个数据0x01,第三个数据0x02,……),那在操作过程中,我们操作用户1的数据,对数据进行加工保存,只要不跳到其他用户中去处理其他用户的数据,则用户1的数据会根据修改的情况来改变,存储修改后的数据,数据无误。如果操作完用户1的数据,再去处理用户2或者其他用户的数据,那么当处理完其他用户的数据会再去查看用户1的数据,用户1的数据的值就变成其他值了,既不是当初修改后的值,也不是用户2对应数据的值,值的变化没有规律。这是什么原因阿?
如果我在分配地址的过程中每次接个1分配地址(如:第一个数据的地址0x00,第二个数据的地址0x02,第三个数据的地址为0x04,……),则不会出现上述的问题。这有是什么原因阿?还请各位高手指点指点,谢谢。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-1-3 20:33:27 | 显示全部楼层
先确定你的底层操作代码有没有问题.
你外记得 EEPROM是什么型号?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

80

主题

188

帖子

0

精华

高级会员

Rank: 4

积分
679
金钱
679
注册时间
2013-8-16
在线时间
37 小时
 楼主| 发表于 2014-1-4 09:43:24 | 显示全部楼层
操作确定没有问题,我使用的外界EEPROM是AT24c64
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-1-4 11:38:20 | 显示全部楼层
回复【楼主位】星空:
---------------------------------
你看下是不是底层驱动的问题?我就遇到过就是底层驱动的问题,不知道你这个和我这个是不是同样的问题,可以接个逻辑分析仪看下IIC的波形,看下有什么变化

或者你参考我这个代码看下http://www.openedv.com/posts/list/23380.htm
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-1-4 11:39:16 | 显示全部楼层
回复【楼主位】星空:
---------------------------------
原子哥的代码都兼容好几种信号的EEPROM,你也可以移植原子哥的例程的驱动试下
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-15 23:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表