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通訊軟體