I2Cには、Inter-Integrated Circuit、I2C、IICなど、さまざまな名前があります。I2Cは2線式データ転送バスです。さまざまなコンピューターがこのバスを利用できます。
何ですか I2C ?
I2Cとして知られるインターインテグレーテッドサーキット、I 2 CまたはIICは、2線式データ転送バスです。フィリップスセミコンダクター(現 NXPセミコンダクターズ) が1982年にこのプロトコルを発明し、超高速性よりも低コストと実装の容易さが優先されるアプリケーションで広く使用されるようになりました。
2006年以降、ユーザーはIを実装するためにライセンス料を支払う必要はありません。 2 C、ただしNXPは支払いを必要とするスレーブ アドレスを割り当てます。現在、このテクノロジの派生製品として、TWI (Two-Wire-Interface) やSMBus (System Management Bus) も利用可能です。
I2C通信
私2 Cリンク システムは、データ (SDA) およびクロック (SCL) 接続を使用して通信し、1つ以上のマスター ノードとスレーブ ノード間で情報を転送します。以下に、その動作の簡単なガイドを示します。
1.プルアップ抵抗はSDAラインとSCLラインをハイにします。通常、これらの抵抗器は5Vまたは3.3Vですが、他の電圧が使用される場合もあります。
2.次に、送信デバイスはラインを接地してデータ出力を示します。
3.システムに新しいノードが必要な場合は、既存の共有SDAおよびSCLラインにそれを単に「クリップオン」することができます。複数のノードを扱う場合、この方法により配線要件が大幅に簡素化されます。
アドレス指定には7ビットシステムまたは9ビットシステムを使用できます。 2 Cデバイスですが、7ビット システムの方がはるかに一般的です。I上の各ノード2 Cセットアップには独自の個別アドレスが必要です。これは次のいずれかになります。
- 修理済み
- ジャンパーで設定
- はんだ接続で設定
I2Cの速度と用途
アドレス空間によって、単一のバスに収容できるノード数が制限され、適切な動作のためにはバスの合計静電容量が400ピコファラッド (pF) 未満である必要があり、これによりデータ転送が数メートルに制限されます。データ送信は8ビット バイト単位で行われ、受信側は受信を確認するために9番目のビットを生成します。I2Cの元の実装では、転送速度は100キロビット/秒に設定されていますが、最大5メガビット/秒 (超高速モード) までの他の速度も利用できます。
I2Cプロトコルの用途は幅広く、次のようなさまざまな目的で使用されます。
- HDMIコネクタを使用するモニターのディスプレイ識別データ(EDID)
- スピーカーの音量コントロール
- リアルタイムクロックモジュールへのアクセス
Windows、Mac、Linuxなど、さまざまなコンピューターがこのバスを利用できます。すべての主要なICメーカーは I2C を実装しており、ArduinoやRaspberry Piが製造する開発ボードやシングルボード コンピューターは、周辺機器通信用にこのプロトコルを一般的にサポートしています。ここで挙げたアプリケーションは、 I2C リンク システムを使用する可能性のほんの一部に過ぎません。メーカーは、このテクノロジを活用するために、常に新しいモジュールを開発しています。