[MCU] 都是读出的我最近一次写入的值

[复制链接]
956|20
 楼主| zwll 发表于 2020-3-8 14:48 | 显示全部楼层 |阅读模式
在DSP28035上面使用I2C读写EEPROM,基本上使用的是TI的例程,管脚也进行了相关的修改,但是读写会有问题:
1. 从示波器上观察,写进去的相序是对的。
2. 从示波器上观察,读出来的相序前面也没问题,关键是我无论读哪个地址,发现都是读出的我最近一次写入的值
wangzsa 发表于 2020-3-8 14:52 | 显示全部楼层

什么意思?不是很明白你说的什么,能再解释一下这个现象吗
 楼主| zwll 发表于 2020-3-8 15:01 | 显示全部楼层
比如:我最近一次往0x0000上面写0x0012,往地址0x0010上面写0x0056,之后我无论读哪个地址,都是读出来的0x0056,很纠结。
renyaq 发表于 2020-3-8 15:16 | 显示全部楼层

有没有试试逻辑分析 仪
houcs 发表于 2020-3-8 15:20 | 显示全部楼层

建议楼主仔细读一下EEPROM的数据手册,因为读和写都有很多种模式,你的读写时序是否满足其中的时序要求
morrisk 发表于 2020-3-8 15:23 | 显示全部楼层
比如24LC02写的话,有页写,字节写,读的时候有当前地址读,任意地址读,周期读
 楼主| zwll 发表于 2020-3-8 15:34 | 显示全部楼层
这几种模式具体的怎么设置?
dingy 发表于 2020-3-8 15:39 | 显示全部楼层
感觉你可能没有写进去,读的数据不过是你写的char *writbuff里面的数据,所以每次读就是最后一次的值。
renyaq 发表于 2020-3-8 15:44 | 显示全部楼层
写的时候有什么特别要求吗?
yinxiangh 发表于 2020-3-8 15:53 | 显示全部楼层
我也碰到了类似的问题,看了datasheet感觉时序也没啥问题,但是每次读出来的就是最后一次的数值,没法写进去,
xxmmi 发表于 2020-3-8 15:57 | 显示全部楼层
你的读取地址在哪里定义的
llia 发表于 2020-3-8 16:01 | 显示全部楼层
这个可能是程序错误了。
zhanglli 发表于 2020-3-8 16:05 | 显示全部楼层
是不是超出范围了?
tian111 发表于 2020-3-8 16:09 | 显示全部楼层
示波器测量引脚了吗
stly 发表于 2020-3-8 16:14 | 显示全部楼层
增加一个上拉电阻,增强驱动能力。
supernan 发表于 2020-3-8 16:19 | 显示全部楼层
看一下你的读取程序
xxmmi 发表于 2020-3-8 16:22 | 显示全部楼层
写入其他的数据呢?
wangpe 发表于 2020-3-8 16:26 | 显示全部楼层
怎么存储读取的变量的
zhuww 发表于 2020-3-8 16:32 | 显示全部楼层
有可能是你数据没有写入的
bqyj 发表于 2020-3-8 16:35 | 显示全部楼层
可能写入的时候无**常驱动IO。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

885

主题

11314

帖子

5

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