weixin_44849612 2019-10-07 23:01 采纳率: 100%
浏览 519
已采纳

stm32读取多个mpu9250的数据出现问题

我需要用stm32读取10个Mpu9250的数据,因为mpu9250中的磁力计的I2C地址无法改变,所以我用16路模拟开关CD74HC4067来轮询读取各个9250的数据,我是共用各个9250的SDA线,让HC4067分别控制10个9250的SCL线,通过分别置16路模拟开关的地址选择引脚的高低电平来轮流和每个9250通信,但是测试后发现,这10个9250的数据是串在一起的。也就是说无论我选择接通哪一路9250,但是动其他的9250这一路9250的数据也会有变化,不知道有没有大佬能指导我一下该怎么办?

     GPIO_SetBits(GPIOA,GPIO_Pin_12);
     GPIO_ResetBits(GPIOA,GPIO_Pin_13);
     GPIO_ResetBits(GPIOA,GPIO_Pin_14);
     GPIO_ResetBits(GPIOA,GPIO_Pin_15);
     delay_ms(2);
     MPU_Get_Gyroscope(&gx1,&gy1,&gz1);
     printf("%7.2d%7.2d%7.2d   ", gx1,gy1,gz1);
//   
     GPIO_ResetBits(GPIOA,GPIO_Pin_12);
     GPIO_SetBits(GPIOA,GPIO_Pin_13);
     GPIO_ResetBits(GPIOA,GPIO_Pin_14);
     GPIO_ResetBits(GPIOA,GPIO_Pin_15);
     delay_ms(2);
     MPU_Get_Gyroscope(&gx2,&gy2,&gz2);
     printf("%7.2d%7.2d%7.2d   ", gx2,gy2,gz2);
  • 写回答

4条回答 默认 最新

  • weixin_43716859 2019-10-10 22:42
    关注

    试着把scl线和sda线都用吗模拟开关分选试一下

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。