问题标签 [mpu6050]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
42 浏览

arduino - ATMEGA328P-PU 需要上传,但无法通过串口通信

我正在使用独立的 ATMEGA328P-PU 从 mpu6050 获取加速度计数据并以波特率 115200 发送到串行,并将数据发送到另一个串行(到 HC05 蓝牙模块)。但问题是,有时我会遇到一个奇怪的场景,atmega328p-pu 通过 usb 到 ttl 转换器接受程序,但控制器无法通过串行发送任何数据。hc05蓝牙和usb串口的串口数据都是空白的。任何人都知道任何可能的原因。我正在使用以下代码。

我曾尝试检查 veroboard 上的连接,但这种情况有时会修复,有时会再次出现。

0 投票
1 回答
299 浏览

teensy - MPU 6050 加速度计发送 16 位无符号值

我正在使用 GY-521 分线板在 3.6 英寸上获取加速度计数据。据我了解,我应该期望它有带符号的(正负)值,但我得到的值是 0 到 65535。

所以这就是我得到的:

当传感器平放在桌子上时,我的 Z 轴读数约为预期的 16384。当我向任何方向旋转传感器直到 90 度时,值下降到 0。一旦我转动超过 90°,值就会跳跃高达 65500 左右,当我继续旋转时,一旦传感器倒置(所以 180°),它就会下降到 50000 左右。

所以在我看来,在旋转的前半部分,我得到了预期值,但是在下降到零后没有得到负值,而是跳转到无符号 16 位的最大值。

对于 X 和 Y 轴,我得到了类似的结果,但旋转了 90 度。因此,当传感器平放在桌面上时,两个轴的读数均为 0。当我向一个方向转动传感器时,该值在 90° 时上升到 16384,然后在 180° 后下降到 0。如果我向另一个方向转动传感器,该值会上升到 65500 左右,然后在 90° 时下降到 50000,然后在 180° 时回到 65500。

这是我使用的整个代码:

0 投票
1 回答
421 浏览

vhdl - VHDL 中带有 MPU6050 的 I2Cmaster 无法正常工作

对于我的爱好项目,我尝试制作一个与 MPU-6050 保持平衡的四轴飞行器。飞行控制器应该是FPGA Altera cyclone IV,因为它很有趣。我正在用 VHDL 对其进行编码。

无论如何,我被困在与 MPU-6050 的 I2C 通信上。作为基础,我使用了来自以下网址的 I2C 主 VHDL 代码:https ://www.digikey.com/eewiki/pages/viewpage.action?pageId=10125324 。

我尝试读取陀螺仪寄存器并在 8 个 LED 上打印出来,看看我是否有一些通信进来。

我尝试使用 1Hz 预分频器运行状态机中的所有 I2C 相位,并点亮一些 LED,以查看是否所有相位都已通过。情况就是这样。我已经为引脚分配了 2.5V 默认值,我使用 10k 上拉电阻。MPU6050 在 arduino 上运行完美。

结果:即使我旋转 MPU6050,所有 LED 都不会改变状态。所以没有交流。谁能帮助我我做错了什么?

0 投票
1 回答
375 浏览

microcontroller - ARM 上的 I2C 编程

我无法在 ARM CORTEX M3 进程上使用 I2C。我究竟做错了什么?我可以执行哪些测试来发现问题?

它是一个 GD32F130C8(主),我正在使用 KEIL 对其进行编程(使用 GD32F1x0 固件库)

从机是 MPU-6050(加速度计)

我用本地地址和 MPU-6050 设备定义了变量:

然后我以这种方式初始化 I2C PIN:

然后我以这种方式初始化 I2C:

然后定期(每秒)尝试从加速度计获取数据。没有错误,但变量“accelerometer_x_high”始终为零(这基本上是我的问题)。

以下代码每秒执行一次。如您所见,我将电源管理设置为 0,然后我请求注册加速度计数据,然后我尝试从从设备获取数据:

用示波器采集信号我得到以下结果: 通信解码

这是完整信号的截图: http ://www.tr3ma.com/Dati/IMG_1526.JPG

信号上也有奇怪的尖峰:

http://www.tr3ma.com/Dati/spike1.JPG

http://www.tr3ma.com/Dati/spike2.JPG

http://www.tr3ma.com/Dati/spike3.JPG

http://www.tr3ma.com/Dati/spike4.JPG

0 投票
1 回答
279 浏览

c - 如何将 MPU6050 设备数据发送到 IoT Hub

我正在尝试将加速度计数据从连接到 ESP8266 的 MPU6050 发送到 Azure IoT Hub。我正在使用 Arduino IDE。

我遵循了 Microsoft 的本教程:https ://docs.microsoft.com/en-gb/azure/iot-hub/iot-hub-arduino-huzzah-esp8266-get-started ?它使用 DHT11 传感器和 esp8266。我还完成了本教程:http : //archicode.be/esp8266-the-iot-prototyping-graal/,其中显示了将 ESP8266 连接到 Azure IoTHub 所需的库和方法。我用于测试 MPU6050 的代码在下面,来自https://playground.arduino.cc/Main/MPU-6050/#short

我如何以及在哪里包含此代码?有没有人有一个很好的参考?我将不胜感激任何帮助!:)

0 投票
1 回答
787 浏览

unity3d - 如何使用 mpu6050 和 arduino uno 控制立方体,使立方体随鼠标位置移动?

当我第一次用我的 mpu6050 尝试 arduino 代码时,串行监视器显示读数。但是,当我尝试将其与统一联系起来时,无法统一显示或使用读数。我被这个问题困住了。我试图使我统一创建的立方体随着鼠标位置移动,然后被 mpu 6050 替换。

Arduino代码

统一代码

0 投票
2 回答
832 浏览

python - 将连续数据写入 csv 文件

我在 python 中使用代码来获取传感器的数据,传感器测量不同轴的振动。该代码运行良好,但我试图将输出数据自动写入 csv 文件。

这是我正在使用的代码:

'''''

现在我尝试使用的书写顺序如下所示:

'''''''

但是这种写入 csv 代码的方法不起作用,我能知道为什么吗?

0 投票
1 回答
637 浏览

stm32 - MPU6050 在地址 0x68 上没有响应,但出现在 I2C 扫描地址中

当我在 STM32F303 上运行 I2C 扫描仪时,我看到两个设备都连接到总线。在地址 0x3C (OLED) 和地址 (0x68) MPU6050 上命名设备。这两个地址都特别同意数据表中的内容。

但是,当我尝试使用HAL_I2C_IsDeviceReady读取地址 0x68 上的WHO_AM_I寄存器时,我意识到它甚至超时。

检查设备是否就绪的函数(MPU6050_Init)

用于扫描 I2C 总线以查找可用设备的函数 (I2C_Scanner)

初始化 I2C 的函数 (MC_I2C1_Init)

预期结果将是检查设备是否可用、准备就绪并返回WHO_AM_I寄存器的内容

0 投票
1 回答
1479 浏览

stm32 - 如何使用STM32F4从MPU6050读取数据

我需要监视一个对象的加速。我正在使用 MPU6050(加速度计和陀螺仪)和控制器 STM32F401RBT6。下面的代码是我为此使用的解决方案。

我已经在 ATMEL Controler (Arduino) 上完成了它并且它有效,但不是在 STM32 上。我正在尝试读取 X Axis 的值并使用 USB CDC 显示它。这段代码为 ```Accel_X_RAW```` 变量设置了一个介于 0 和 65535 之间的值。在 Arduino 中,当对象停止时,参考值为 32768,但如果不使用 STM32 读取,则保持最大值(65535)没有运动。我不知道这段代码有什么问题,我尝试了很多选项,但它仍然不起作用。你能帮我吗。

0 投票
0 回答
89 浏览

embedded - STM32L072CZTx mpu6050 i2c 成功发送后没有ACK

我制作了一个带有 MPU-6050 和 STM32L072CZTx 的定制板。我的问题是,MPU-6050 在成功传输后没有确认。

我在 SCL 和 SDA 上有两个 4,7k 引体向上。重新启动 MCU 并不能解决问题。我必须拔掉电源才能让 MPU 再次 ACK 进行一些传输。

我正在使用 STM32 HAL 并添加了 2 张图像以进行说明。

我尝试了什么:

  • 更换 MPU6050
  • 降低 I2C 频率
  • 多得多...

谢谢你的帮助。

示波器

MPU6050原理图