I2Cの概要

1980年代にPhilipsが開発したI2Cは、エレクトロニクスで最も一般的なシリアル通信プロトコルの1つになっています。 I2Cは、コンポーネントが同じPCB上にあるか、ケーブルを介して接続されているかにかかわらず、電子部品またはICとIC間の通信を可能にします。 I2Cの主な機能は、単一の通信バス上に多数のコンポーネントを搭載し、わずか2本のワイヤで処理できるため、I2Cはシンプルさと低コストのスピードを必要とするアプリケーションに最適です。

I2Cプロトコルの概要

I2Cは、シリアル通信プロトコルで、PCB上のチップ間の通信用に設計された2本の信号線のみを必要とします。 I2Cはもともと100kbps通信用に設計されていましたが、3.4Mbitまでの速度を達成するために長年に渡ってより高速なデータ伝送モードが開発されています。 I2Cプロトコルは公式な標準として確立されており、I2C実装と良好な下位互換性の間の良好な互換性を提供します。

I2C信号

I2Cプロトコルは、2つの双方向信号線のみを使用して、I2Cバス上のすべてのデバイスと通信します。 使用される2つの信号は次のとおりです。

I2Cが複数の周辺機器との通信に2つの信号しか使用できない理由は、バスに沿った通信がどのように処理されるかにあります。 各I2C通信は、残りの通信が通信を受信することが意図されている周辺機器のアドレスを呼び出す7ビット(または10ビット)アドレスで始まります。 これにより、I2Cバス上の複数のデバイスが、システムの必要に応じてマスタデバイスの役割を果たすことができます。 通信の衝突を防ぐために、I2Cプロトコルにはアービトレーションと衝突検出機能があり、バスに沿ったスムーズな通信が可能です。

利点と限界

通信プロトコルとして、I2Cには多くの利点があります。これは、多くの組込み設計アプリケーションにとって最適です。 I2Cには次の利点があります。

これらの利点をすべて備えているため、I2Cにはいくつかの制限があります。 最も重要なI2Cの制限事項は次のとおりです。

アプリケーション

I2Cバスは、高速ではなく低コストで簡単な実装が必要なアプリケーションに最適です。 たとえば、特定のメモリICの読み取り、DACとADCへのアクセス、 センサの読み取り 、ユーザ指示アクションの送信と制御、ハードウェアセンサの読み取り、複数のマイクロコントローラとの通信などがI2C通信プロトコルの一般的な使用です。