I2C無法寫入和讀出寄存器值

之前不小心把自己做的通過6124B控制dms模組的功能的源碼全給刪掉了,可是嚇死我了,沒辦法只能自己加班偷偷趕出來。

這次給我的教訓就是所有的源碼都應該留有備份,除非確認不需要的源碼。

 

憑藉着我的記憶,我其實已經把6124B的功能做出來了,只是因爲I2C讀寫失敗的問題導致一直接受不了dms的圖像。我用的是我之前寫的linux應用層的i2c設備文件的讀寫方式進行控制i2c接口的。一直以爲是沒有問題的。之所以寫入和讀取不成功是因爲6124B的寄存器地址是8bit的,而我之前寫的讀寫i2c的函數裏面的地址是16bit的。這導致了i2c從設備一直不能正確獲取到寄存器的地址。

 

解決:查看i2c的寄存器地址是8bit還是16bit。不同長度的地址會出現錯誤。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章