I2C - MPU6050 DMP6

材料准备

范例说明

介绍

此范例将示范使用 DMP6 从 MPU6050 取得资料。 MPU6050配备Digital Motion Processor(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,如下图所示。

3

在 “File” -> “Examples” -> “AmebaWire” -> “MPU6050”-> “MPU6050_DMP6” OR “MPU6050_DMP6_using_DMP_V6v12” 中开启范例。

3

编译并执行范例。 在Serial Monitor中,您应该可以看到开始 DMP 编程的提示。 在Serial Monitor上键入任意字符,然后按“Enter”。

4

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

5

您可以选择取消注释任一选项以查看要列印的资料类型。 选项包括 OUTPUT_READABLE_QUATERNION、OUTPUT_READABLE_EULER、OUTPUT_READABLE_YAWPITCHROLL、OUTPUT_READABLE_REALACCEL、OUTPUT_READABLE_WORLDACCEL 和 OUTPUT_TEAPOT。 在此范例中,使用的选项是 OUTPUT_READABLE_YAWPITCHROLL。
ElectronicCats 的原始范例有使用中断引脚。 使用中断引脚会导致MPU6050卡住,因此此范例只有在不使用中断引脚的情况下才能正常运作。

程式码说明

[1] ElectronicCats 提供的 MPU6050 函式库和范例:
https://github.com/ElectronicCats/mpu6050

请先确认已安装QQ通讯软体