做过MS5611的,请问 读转换数据的问题

[复制链接]
 楼主| hob_hob 发表于 2016-3-25 18:33 | 显示全部楼层 |阅读模式
传感器:MS5611-01,通信:I2C 。可以RESET,也能读出PROG里的C1~C6的数据(2字节),但CONVERT(48H,58H)后,等10MS或20MS或100MS后,再读温度(D2)或压力值(D1),就会收不到SLAVE的应答(ACK),也读不出数据(3 字节)!
若在转换前,先读D1或D2值,则全为0.
请指教。
ningling_21 发表于 2016-3-28 17:10 | 显示全部楼层
I2C 时序是模拟的 ,还是硬件的? 时序没问题吧
 楼主| hob_hob 发表于 2016-3-30 20:24 | 显示全部楼层
ningling_21 发表于 2016-3-28 17:10
I2C 时序是模拟的 ,还是硬件的? 时序没问题吧

谢谢ningling_21:
I2C的时序是IO口模拟的。我也希望是时序错了,可前面读出了C1---C6的值,而且每次读出的都很稳定,每次也能收到SLAVE的ACK,但CONVERT后,再读出D1或D2,就没有了ACK了(若是CONVERT后,再读C1---C6,也是收不到ACK,卡那儿了)
CONVERT: START+0EEH+ACK+48H+ACK+STOP
               START+0EEH+ACK+00H+ACK+STOP----OK ,都能收到ACK
               START+0EFH+ACK---->卡了
 楼主| hob_hob 发表于 2016-3-31 16:02 | 显示全部楼层
问题已解决,发送寄存器的值,在别的地方被改动了。时序没有问题。
ningling_21 发表于 2016-4-4 12:19 | 显示全部楼层
hob_hob 发表于 2016-3-31 16:02
问题已解决,发送寄存器的值,在别的地方被改动了。时序没有问题。

解决了就好
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

68

帖子

0

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