野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 83|回复: 0

解决野火MPU6050例程检测不到MPU6050模块的问题

[复制链接]
发表于 3 天前 | 显示全部楼层 |阅读模式
文章标签: 嵌入式硬件 c语言
编辑 版权
一、使用平台:F103霸道开发板V02

      使用软件例程:A盘(资料盘)\4-配套模块资料\传感器\野火【姿态传感器_MPU6050】模块资料\1-MPU6050配套例程\ebf_sensor_mpu6050_code_stm32_20211011\F103_霸道开发板\2.软件STM32-MPU6050

二、现象:下次并执行例程后,串口助手显示

[16:54:33.996]收←◆MPU6050 dectected error!
检测不到MPU6050模块,请检查模块与开发板的接线
没有检测到MPU6050传感器!

三、问题分析:

3.1 以下是对应输出该错误提示的函数,可以看到当读取到的 ID !=0x68时会报该错误,但没有输出读到什么数据,那我们把读到的ID打印出来看看

/**
  * @brief   读取MPU6050的ID
  * @param   
  * @retval  
  */
uint8_t MPU6050ReadID(void)
{
        unsigned char Re = 0;
    MPU6050_ReadData(MPU6050_RA_WHO_AM_I,&Re,1);    //读器件地址
        if(Re != 0x68)
        {
                printf("MPU6050 dectected error!\r\n检测不到MPU6050模块,请检查模块与开发板的接线");
                return 0;
        }
        else
        {
                printf("MPU6050 ID = %d\r\n",Re);
                return 1;
        }
               
}

3.2 可以看到,实际读到的ID为0x98,而野火代码里是和0x68进行对比,故而报错

[17:03:45.616]收←◆
MPU6050 ID = 0x98
MPU6050 dectected error!
检测不到MPU6050模块,请检查模块与开发板的接线
没有检测到MPU6050传感器!

3.3 将 if(Re != 0x68) 改为   if(Re != 0x98) ;可以正常获取到MPU6050的数据,问题解决!
[17:07:24.371]收←◆MPU6050 ID = 0x98

欢迎使用野火  STM32 开发板。

这是一个MPU6050测试例程

[17:07:24.879]收←◆
加速度:      148     -76   16420    陀螺仪:        3      63      -5    温度:    45.92
[17:07:25.379]收←◆
加速度:      140     -48   16448    陀螺仪:        3      63      -5    温度:    45.91

四、修改例程


/**
  * @brief   读取MPU6050的ID
  * @param   
  * @retval  
  */
uint8_t MPU6050ReadID(void)
{
  unsigned char Re = 0;
    MPU6050_ReadData(MPU6050_RA_WHO_AM_I,&Re,1);    //读器件地址
  if(Re != 0x98)
  {
    printf("\r\nReadD MPU6050 ID = 0x%x 与设定的ID值不同,请检查\r\n",Re);
    return 0;
  }
  else
  {
    printf("MPU6050 ID = 0x%x\r\n",Re);
    return 1;
  }
   
}




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-10-16 08:24 , Processed in 0.109899 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表