MPU6050的旁路模式和直接在STM32的I2C接口挂多个设备有什么不同?

2019-08-18 21:06发布


例如我要使用MPU6050和HMC5883和MS5611这个三个I2C器件,有一种方法是把MPU6050设置成旁路模式,这时候不影响MPU6050正常读取,把5883和5611都挂在6050的拓展I2C接口上,读取这三个器件是用他们自己的地址读取。然而我也可以直接把这三个器件都接在STM32的一个I2C口上(例如PB6PB7),也是占用STM32一个I2C口,也是用三个器件自己的地址读取。这两种方法是不是没有区别?6050的拓展I2C口当用于旁路模式时是不是没什么用?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
trzhongty
1楼-- · 2019-08-19 18:07
 精彩回答 2  元偷偷看……
trzhongty
2楼-- · 2019-08-19 21:34
本帖最后由 trzhongty 于 2017-5-18 03:37 编辑

目前我猜想,这个功能也挺有意思的,比如说MPU9250 ,这个实际上是MPU6500 + 三轴磁力计, 前者支持SPI通讯,而后者不支持。后者挂载在 MPU9250的扩展I2C上, 当STM32与MPU9250通讯方式为I2C的时候,可以设置旁路模式,直接把磁力计也放在I2C总线上。然而,你更可以,使用SPI与MPU6500通讯,高速读取,并且同时 关闭 MPU9250的I2C控制器,然后将STM32的I2C接到 MPU9250的扩展I2C接口上,通过I2C来单独设置磁力计或者读取磁力计。这样就实现了SPI,I2C双通道读取MPU9250的数据。是不是很有意思。具体还得试试。

一周热门 更多>