Wenn Sie sich den richtigen I2C-Bus ansehen, wurde zwischen Version 1 und Version 2 der GPIO-Header von I2C 0 auf I2C 1 geändert. Weitere Informationen zu den verschiedenen Pin-Änderungen finden Sie unter eLinux - RPi Low-Level-Peripheriegeräte .
i2cdetect 0
i2cdetect 1
sollten beide Busse separat scannen. Wenn Ihre Geräte nach einem der Anrufe angezeigt werden, ist dies der Bus, auf dem sie sich befinden.
Andernfalls können Sie die Pins überwachen und i2cdetect
erneut ausführen, wenn Sie Zugriff auf ein Oszilloskop haben . Sie suchen nach dem Spannungspegel, um eine digitale Sequenz zwischen hoch (3,3 V) und niedrig (0 V) an beiden Pins zu pulsieren.
Wenn Sie ziemlich sicher sind, dass die Pins nicht funktionieren, versuchen Sie, sie als einfache GPIO-Pins zu verwenden (0 & 1 für Rev. 1, 2 & 3 für Rev. 2) und fahren Sie sie manuell hoch. Überprüfen Sie sie mit a (3,3 V) Multimeter, dann fahren Sie sie niedrig und überprüfen Sie, ob sie niedrig sind (0V).
Wenn Sie nicht wissen, wie die GPIO-Pins manuell angesteuert werden, finden Sie hier ein Python-Beispiel und hier ein BASH-Beispiel.
Wenn sie auf Befehl nicht hoch und niedrig gehen, stimmt etwas mit den Pins nicht. Wenn dies der Fall ist, Sie I2C jedoch immer noch nicht zum Laufen bringen können, muss Ihr Problem weiter untersucht werden.