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。坛友阿豪博士指出焊接可能有问题。存在这种可能,芯片焊脚焊接后不可见。然后使用了焊锡膏和热风枪,首次焊接时间很长,没有掌握焊锡膏用量,可能虚焊,也可能器件受热时间长,导致损坏。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。