[异常解决] MPU6050启动异常读出陀螺仪和加速度计的值全为0的解决办法

简介:


 

 

在调试一个自己做的手环,每次用keil烧写好程序运行的蓝牙、陀螺仪都是正常的。但是掉电再上电之后蓝牙是好的、陀螺仪可以读出ID但是读出的加速度和角速度数据全为0。

下面是发生问题时main函数的前面部分:

首先看到一篇:《mpu6050需要一段时间上电然后再初始化!!》的文章,于是在前面加了个延时。

下面是添加一个延时的main函数前部分:

不过,还是有相同的问题!

然后,又找了一个《TM4C123GxL MPU6050读出陀螺仪和加速度计的值全为0》的文章,他出现的情况和我的非常像!

下面是作者最后给出的总结:

我根据他结论的第二点把代码做如下修改最终解决了问题:

1.将I2C初始化函数放在后面,main函数刚开始加延时

2.mpu6050初始化进行循环初始化直到写入成功 



本文转自beautifulzzzz博客园博客,原文链接:http://www.cnblogs.com/zjutlitao/p/5188240.html,如需转载请自行联系原作者

相关文章
|
12天前
|
传感器 存储 开发者
Arduino 中用于从传感器读取模拟和数字数据的函数
Arduino 提供了多种函数,用于从传感器读取模拟和数字数据。模拟数据通过 `analogRead()` 函数读取,数字数据则使用 `digitalRead()` 函数。这些函数简单易用,适用于各种传感器,帮助开发者轻松获取环境信息。
|
5月前
|
移动开发
技术好文:stm32寄存器版学习笔记06输入捕获(ETR脉冲计数)
技术好文:stm32寄存器版学习笔记06输入捕获(ETR脉冲计数)
247 0
|
6月前
|
定位技术
罗技鼠标接收器丢失或损坏后用另一个接收器配对的方法
罗技鼠标接收器丢失或损坏后用另一个接收器配对的方法
415 2
实验:MSP430F249 数码管计数到60自动清零(详细注释)
实验:MSP430F249 数码管计数到60自动清零(详细注释)
112 0
STM32 输入捕获的脉冲宽度及频率计算
STM32 输入捕获的脉冲宽度及频率计算
209 0
西门子S7-1200的运动控制功能、系统使能指令块、错误确认指令块、回参考点或设置参考点指令块的参数含义
今天我们来介绍西门子S7-1200的运动控制功能。西门子S7-1200的运动控制指令是通过使用相关工艺数据块和CPU的专用脉冲串输出来控制轴的运动。
西门子S7-1200的运动控制功能、系统使能指令块、错误确认指令块、回参考点或设置参考点指令块的参数含义
龙芯2K驱动开发——使用中断触发读取GPIO电平值上传给读取进程
龙芯2K驱动开发——使用中断触发读取GPIO电平值上传给读取进程
480 0
龙芯2K驱动开发——使用中断触发读取GPIO电平值上传给读取进程
【蓝桥杯嵌入式】STM32定时器的配置,解析预分频系数和重装载值与时钟频率的关系
【蓝桥杯嵌入式】STM32定时器的配置,解析预分频系数和重装载值与时钟频率的关系
1073 0
|
编解码 Shell 芯片
【沁恒WCH CH32V307V-R1开发板读取板载温度实验】
【沁恒WCH CH32V307V-R1开发板读取板载温度实验】
246 0