【教程】小安派BW21-CBV-Kit——DMP6 读取 MPU6050 数据

[复制链接]
查看51 | 回复0 | 2025-1-10 08:51:03 | 显示全部楼层 |阅读模式

用料

示例

简介

本示例将演示使用 DMP6 从 MPU6050 获取数据。 MPU6050 配备了数字运动处理器 (DMP),用于处理运动算法的计算,如转换为三轴偏航/俯仰/滚动平面、转换为四元数或转换为欧拉角。

本指南将同样适用于这两个示例:

  1. MPU6050_DMP6.ino
  2. MPU6050_DMP6_using_DMP_V6v12.ino

这两个示例的区别在于所使用的 DMP 库。 MPU6050_DMP6.ino 的 DMP 库版本为 2.0。 对于 MPU6050_DMP6_using_DMP_V6v12.ino,DMP 库版本为 6.12。

实现流程

如下图所示,将 MPU6050 连接到电路板的 I2C_SDA 和 I2C_SCL。

image.png

在 "文件"->"示例"->"AmebaWire"->"MPU6050"->"MPU6050_DMP6 "或 "MPU6050_DMP6_using_DMP_V6v12 "中打开示例:

image.png

编译并运行示例。 在串行监视器中,应该可以看到开始 DMP 编程的提示。 在串行监视器上输入任意字符,然后按 "Enter "键。

image.png

您应该可以看到 DMP 计算出的输出值。

image.png

您可以选择取消其中一个选项的注释,以查看要打印输出的数据类型。 选项包括 OUTPUT_READABLE_QUATERNIONOUTPUT_READABLE_EULEROUTPUT_READABLE_YAWPITCHROLLOUTPUT_READABLE_REALACCELOUTPUT_READABLE_WORLDACCELOUTPUT_TEAPOT。 本例中使用的选项是 OUTPUT_READABLE_YAWPITCHROLL

ElectronicCats 的原始示例使用的是中断引脚。 使用中断引脚会导致 MPU6050 挂起,因此本示例只有在不使用中断引脚的情况下才能可靠运行。

代码参考

[1] ElectronicCats 的 MPU6050 库和示例:

https://github.com/ElectronicCats/mpu6050

用心做好保姆工作
回复

使用道具 举报

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

本版积分规则