●IICバスについて
『1』 IICバスとは
IICバスとは、Inter IC BUS の略語であり、IC間や 装置内部のコミュニケーション用2線式
シリアルバスのことです。
IICバスは、データとクロックの2本の双方向制御線から成り立って います。
![]() |
|
インターフェース図 | |
Data Clock |
![]() |
波形 |
『2』 IICバスデータフォーマット
![]() |
IICバスフォーマット |
IIC信号フォーマットは、上図のように、スタート条件とストップ条件にはさまれた
9ビットのデータで構成されています。
上記は、1バイトデータ転送フォームですが、2バイトを越えるデータの場合には
ACKのあとに、次のバイトD7〜D0とACKが来て、その後ストップ条件が来ます。
●IICバスの第1バイト目フォーマット
IICバス上の第1バイト目は通常、機器のスレーブアドレス7ビット(D7〜D1)
と、そのスレーブアドレスを持つ機器に対する書き込み/読み込みを示す1
ビット(D0)で構成されています。
D0ビット=0 の場合 ・・・ 後ろに続くバイトは、その機器に対する書き込みであることを示します。
D0ビット=1 の場合 ・・・ その機器に対する読み込みであることを示します。
●IICバスの2バイト目 以降フォーマット
D7〜D0が転送する1バイトデータです。
『3』 IICバスの状態
@ バスのアイドル状態
バスがアイドル状態の時には、データ・クロックともにHighレベルです。
A IICバス通信の開始
クロックがHighレベルの時のデータの 立ち下がりエッジからバス通信が始まります。 受信側はこの条件でバス上のデータ取り込 みを開始します。 |
![]() |
スタートコンディション |
B IICバス通信の終了
クロックがHighレベルの時のデータの 立ち上がりエッジでバス通信を終了します。 受信側はこの条件でバス上のデータ取り込 みを終了します。 |
![]() |
ストップコンディション |
C データの転送
受信側は、クロックの立ち上がりエッジにて データを1ビットずつ取り込みます。 データはMSBから送出され、1データ 8ビットで構成されています。 8ビットデータの次の1ビットは必ず acknowledge(ACK)ビット が付加され、 機器間のシリアル通信のハンドシェークに 用います。 |
![]() |
データのサンプルタイミング |
![]() |
![]() |