[MSP430] 模拟IIC通讯问题

[复制链接]
1516|7
 楼主| tongtong1220 发表于 2016-9-4 16:31 | 显示全部楼层 |阅读模式
大家好,我使用430和AT24C02用IIC通信。从示波器上看,写时序正常,AT24C02也正常返回ACK,读时时序也正常,但AT24C02输出的数据全部都是高(0XFF)。请问哪里弄错了吗?
JY-DX-JY 发表于 2016-9-5 11:58 | 显示全部楼层
换个AT24C02
JasonWangSE 发表于 2016-9-5 12:27 | 显示全部楼层
写完延时5ms
NE5532 发表于 2016-9-5 13:13 | 显示全部楼层
应答正常么?
liufabing 发表于 2016-9-5 16:15 | 显示全部楼层
如3楼所说,写完后只是在缓存,还需要延时一个写周期的时间(具体时间可看AT24C02规格书).
airwill 发表于 2016-9-6 18:38 | 显示全部楼层
读出全 FF, 是因为没有写进去. 除了时序和延时的问题, 芯片还有个 WP 引脚, 你看看是不是设置成了写保护了?
ningling_21 发表于 2016-9-8 08:39 | 显示全部楼层
可能数据没写进去,所以读出全为FF


 楼主| tongtong1220 发表于 2016-9-8 20:51 | 显示全部楼层
谢谢大家的回复。问题已经解决。问题不是出在WP引脚了。具体是怎么解决的我也闹不明白。我最后的操作是这个样子的。本来我的程序是先连续在0X01 和0X02连个地址中,然后读取当前地址的值,也就是0X02地址的数值。数据读取不成功。后来我把写0X02的语句注释掉,想着单独写一个数试试。发现读写0X01地址变得正常了。然后我去掉0X02的注释,读取0X01的数据和0X02的数据,发现0X02数据读取还是0XFF。再后来我试了试0X03和0X04已经其他的。发现只有0X01的数据写入正常。接着0X00和0X01后发现,里面这两个地址的数据读写正常,最后再试着写入其他地址数据,奇怪的发现所有地址读写正常。最终我也没想明白里面的原因是那个?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

25

帖子

0

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