Controlling I2C Bus with i2c-tools

Raspberry piにはI2Cを制御するモジュールが存在します。

今回はこれを使用して、デバイスを制御してみます。

事前準備

まずI2Cバスにアクセスする機能を有効にします。

$ sudo raspi-config

8 Advance Options -> A7 I2CをEnableにします、

リブートするとI2Cにアクセスできるようになっています。

デバイスを探してみる

手始めにI2Cバス1に接続されているデバイスをスキャンしてみます。

$ sudo i2cdetect -y 1

表示された結果の例

0 1 2 3 4 5 6 7 8 9 a b c d e f

00: -- -- -- -- -- -- -- -- -- -- -- -- --

10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

70: -- -- -- -- -- -- 76 --

スレーブアドレス0x76にあるデバイスが見えています。