STM32和MPU6050的I2C通信失效原因分析

2019-12-08 14:36发布

本帖最后由 JYJT 于 2019-12-6 18:13 编辑

想用硬件I2C实现数据读取。试了试AT24系列读写没有问题。MPU6050就有问题了。我看主要区别如下图:
mpu6050cut.png (6.44 KB, 下载次数: 0) 下载附件 前天 16:54 上传
主要是里面repeat start(RA) ,AT24系列eeprom不需要,但是mpu6050等一系列陀螺仪和磁力计,都需要这个repeat start。使用HAL库的人,我已经不知道从哪儿入手解决~

这里坛友ddplys指出RA是register address。确实如此。我用的QMC5883,和LSM6DS,比较偏门。但是时序差不多。MPU6050的手册我看得不够仔细。这里的repeat start是第二S。坛友阿豪博士指出焊接可能有问题。存在这种可能,芯片焊脚焊接后不可见。然后使用了焊锡膏和热风枪,首次焊接时间很长,没有掌握焊锡膏用量,可能虚焊,也可能器件受热时间长,导致损坏。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
ddplys
1楼-- · 2019-12-08 20:32

QQ截图20191206172628.png (18.44 KB, 下载次数: 0)

下载附件

前天 17:27 上传


AT24系列不需要是错误的。
JYJT
2楼-- · 2019-12-08 20:58
阿豪博士 发表于 2019-12-6 17:17
这个 很有可能是 器件焊接的问题!

有可能如你所说,这个片子的封装,手工焊接不友好,焊接后也不能测试虚焊。
JYJT
3楼-- · 2019-12-09 00:22
ddplys 发表于 2019-12-6 17:28
AT24系列不需要是错误的。

谢谢你去翻看手册。这里的ACK是slave回复。而RA是master给出~
ddplys
4楼-- · 2019-12-09 00:54
 精彩回答 2  元偷偷看……
cjxu
5楼-- · 2019-12-09 06:44
不怕被封ID吗。。
JYJT
6楼-- · 2019-12-09 09:49
cjxu 发表于 2019-12-6 18:04
不怕被封ID吗。。

怕,已经修改了标题

一周热门 更多>