I2C
関連記事
I²C I2C (Inter-IC) は、1982 年にフィリップスセミコンダクターズによって発明された、同期、マルチコントローラー/マルチターゲット (コントローラー/ターゲット)、パケット交換式、シングルエンドのシリアル通信バスです。
これは、汎用 I/O (GPIO) デバイスと通信するために多くのハードウェアボードで使用されます。
I2C の同様の拡張子は SMBus で、より具体的にはハードウェア監視の目的で使用されます。
インストール
I2C カーネルモジュールは、ほとんどのデフォルトのカーネルパッケージにすでに存在しています。
ユーザー空間ツールは、i2c-tools からインストールできます。最新のエッジは i2c-tools-gitAUR にあります。
SMBus 固有のツールは、lm_sensors からインストールできます。
モジュールのロード
場合によっては、起動時にモジュールをロードすることが必要になる場合があります:
/etc/modules-load.d/i2c-dev.conf
i2c-dev
これは、FS#76233 が修正された後は必要なくなります。
システムや使用状況によっては、i2c_i801
や i2c_smbus
などの他のハードウェア固有のモジュールもロードする必要がある場合があります。
モジュールが適切にロードされている場合は、/dev/i2c-*
デバイスが表示されるはずです。
/dev/i2c-*
デバイスの使用許可は、ユーザーを i2c
ユーザーグループ に追加することで付与できます。
使用方法
i2cdetect
はアクティブな I2C デバイスをすべて検出できます。
$ i2cdetect -l
i2c-0 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-1 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-2 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-3 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-4 smbus SMBus I801 adapter at f040 SMBus adapter i2c-5 i2c i915 gmbus dpb I2C adapter i2c-6 i2c i915 gmbus dpc I2C adapter i2c-7 i2c i915 gmbus misc I2C adapter i2c-8 i2c AUX B/DDI B/PHY B I2C adapter
I2C デバイスが既知のバスに接続されている場合、i2cdetect
はアクティブなアドレスをプローブできます:
$ i2cdetect 1
0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- 76 --
このプログラムは I2C バスを混乱させ、データ損失やさらに悪いことを引き起こす可能性があることに注意してください。