i2cdetectはアドレスをキャッチしません。I2Cが正常に動作しているかどうかを確認するにはどうすればよいですか?


8

Raspberry Piを基本的に任意のI2Cセンサーに接続するのに問題があります。私はI2Cドライバーを機能させる方法について多くのチュートリアルを実行しましたが、接続は正しいです。それでも、i2cdetect(またはI2Cベースのコード)でアドレスが取得されません。

この問題に必要なトラブルシューティング手順は何ですか?ピンが破壊されているかどうかはどうすればわかりますか?

MPU6050とMAG3110をサンプルデバイスとして使用しています。

回答:


4

正しいI2Cバスを見ていますか、rev 1とrev 2の間で、GPIOヘッダーがI2C 0からI2C 1の使用に変更されました。さまざまなピンの変更の詳細については、eLinux-RPi低レベルペリフェラルを参照してください。

i2cdetect 0
i2cdetect 1

両方のバスを別々にスキャンする必要があります。デバイスがいずれかの呼び出しの後に表示される場合、それはそれらが接続しているバスです。

オシロスコープにアクセスできる場合は、ピンを監視してi2cdetect再実行できます。両方のピンで高(3.3v)と低(0v)の間のデジタルシーケンスをパルスする電圧レベルを探しています。

I2Cトレースの例

ピンが機能していないことがかなりわかっている場合は、単純なGPIOピン(回転1の場合は0と1、回転2の場合は2と3)として使用し、手動でHighに駆動します。マルチメーター、次にそれらを低く駆動し、それらが低い(0v)であることを確認します。

GPIOピンを手動で駆動する方法がわからない場合は、Pythonの例についてはこちらを、BASHの例についてはこちらを参照してください。

それらがコマンドで高くも低くもならない場合、ピンに何か問題がありますが、それでも、I2Cが機能しない場合は、問題をさらに調査する必要があります。


0

ここにあなたを助けるかもしれない本当に良いガイドがあります!

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


Raspberry Pi Stack Exchangeへようこそ!これは理論的には質問に答える可能性がありますが、答えの本質的な部分をここに含め、参照用のリンクを提供することが望ましいでしょう。これは、リンクされた情報がリンクが最初に投稿されたときの場所ではなくなった「リンクの腐敗」から保護するのに役立ちます。
RPiAwesomeness 2014年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.