MPU6050可以讀取ID值是0x68,但是讀取到的原始數據為零(下面虛擬示波器圖中溫度值是36.529是單位轉換公式中的值被打印出來了,實際值也是零)。經論壇搜尋,發現MPU6050出現問題的原因有幾個:
一是在它初始化之前沒有進行復位MPU6050和延時處理,
二是MPU6050已經壞掉了,
三是晶振可能沒焊好或壞了,
四是IIC時序沒有處理好(IIC通信協議中的延時對不同的單片機需要相應做調整)... ...
經過幾天的搜尋后,最后抱着試試的態度換了MPU6050芯片,發現溫度值正常了(將手放上面后溫度值就開始有所回升--MPU6050芯片的問題),希望能幫助到遇到同樣困難的你。
附圖一(MPU6050不能讀取原始數據):
附圖二(更換MPU6050后,正常讀取數據):
參考帖:https://blog.csdn.net/qq_26039737/article/details/79214887