i2cdetect tidak menangkap alamat APA PUN. Bagaimana saya bisa tahu jika I2C bekerja dengan benar?

8

Saya mengalami kesulitan menghubungkan Raspberry Pi pada dasarnya sensor I2C. Saya telah melalui banyak tutorial tentang cara mendapatkan driver I2C untuk bekerja dan koneksi saya sudah benar. Namun, i2cdetect (Atau kode berbasis I2C) tidak memberi saya alamat apa pun.

Apa langkah pemecahan masalah yang diperlukan untuk masalah ini? Bagaimana saya tahu jika pin dihancurkan atau tidak?

Saya menggunakan MPU6050 dan MAG3110 sebagai perangkat contoh.

Ahmed Farid
sumber

Jawaban:

4

Apakah Anda melihat bus I2C yang benar, antara rev 1 dan rev 2 header GPIO diubah dari menggunakan I2C 0 menjadi I2C 1, lihat eLinux - RPi Periferal level rendah untuk detail berbagai perubahan pin.

i2cdetect 0
i2cdetect 1

harus memindai kedua bus secara terpisah, jika perangkat Anda muncul setelah salah satu panggilan, maka itu adalah bus yang digunakan.

Gagal jika Anda memiliki akses ke osiloskop, Anda dapat memantau pin dan menjalankannya i2cdetectlagi. Anda mencari level tegangan untuk melakukan pulsa urutan digital antara tinggi (3.3V) dan rendah (0V) pada kedua pin.

Contoh jejak I2C

Jika Anda cukup yakin pin tidak berfungsi maka cobalah untuk menggunakannya sebagai pin GPIO sederhana (0 & 1 untuk rev 1, 2 & 3 untuk rev 2) dan secara manual dorong tinggi, periksa tinggi (3.3v) menggunakan multimeter, kemudian dorong rendah dan periksa rendah (0v).

Jika Anda tidak tahu cara menggerakkan pin GPIO secara manual, lihat di sini untuk contoh Python dan di sini untuk contoh BASH.

Jika mereka tidak menjalankan perintah tinggi dan rendah maka ada sesuatu yang salah dengan pin, jika mereka melakukannya tetapi Anda masih tidak bisa mendapatkan I2C untuk bekerja maka masalah Anda akan perlu penyelidikan lebih lanjut.

PiBorg
sumber
0

Berikut ini adalah panduan yang sangat bagus yang mungkin dapat membantu Anda!

http://www.instructables.com/id/Raspberry-Pi-I2C-Python/?ALLSTEPS

Mattias
sumber
Selamat datang di Raspberry Pi Stack Exchange! Sementara ini secara teoritis dapat menjawab pertanyaan, akan lebih baik untuk memasukkan bagian-bagian penting dari jawaban di sini, dan menyediakan tautan untuk referensi. Ini membantu melindungi terhadap "pembusukan tautan", di mana informasi yang ditautkan tidak lagi berada di tempat itu saat tautan itu semula diposting.
RPiAwesomeness