Raspberry讀取六軸加速度MPU6050

Raspberry使用I2C介面連線六軸加速度MPU6050

Raspberry與MPU6050連接圖如下。

Step1)啟用I2C,請參考Raspberry啟用I2C與SPI

Step2)查看/dev下是否多出了i2c-1或i2c-0

如果是/dev/i2c-1,則執行「sudo i2cdetect -y 1」

如果是/dev/i2c-0,則執行「sudo i2cdetect -y 0」

我的Raspberry是/dev/i2c-1,所以執行「sudo i2cdetect -y 1」,結果如下,發現MPU6050的位址在0x68,表示Raspberry已經跟MPU6050相連。

Step3)使用C從MPU6050讀取資料

(1)安裝i2c-dev函式庫

#sudo apt-get install libi2c-dev

(2)從GitHub下載專案PiBits ,該專案已經寫好從MPU6050讀取資料的C語言程式

#git clone https://github.com/richardghirst/PiBits.git

(3)切換資料夾

#cd PiBits/MPU6050-Pi-Demo

(4)該專案預設使用/dev/i2c-0,直接make會出現「Failed to open device: No such file or directory」錯誤,需修改成/dev/i2c-1,在檔案I2Cdev.cpp內所有「open("/dev/i2c-0", O_RDWR);」改成「open("/dev/i2c-1", O_RDWR);」

(5)重新make與執行

#make

#./demo-raw

結果如下