最終更新:2023-06-20 (火) 02:32:02 (310d)  

I2C
Top / I2C

Inter-Integrated Circuit

アイ・スクエアド・シー

2線式の同期式シリアル通信?

シンプルで製造コストを抑えることが速度よりも重要とされるような周辺機器向け。

I2Cに基づくIC同士なら、僅か2本の配線で、複数の周辺IC間の相互データ転送や制御ができる。対応するICにはシリアルEEPROMや、A/D、D/Aなどがある。

仕様

電圧

  • 最高で+5V
  • よく使われるのは +3.3V だが、他の電圧でも構わない

速度

  • 100kbps - スタンダードモード
  • 400kbps - ファーストモード
  • 3.4Mbps - ハイスピードモード

メモ

  • I2Cは同じ基板内などのように近距離で直結したデバイスと、100kbpsまたは400kbpsの速度でシリアル通信を行うように使われるのが主な用途。

インターフェイス

  • 信号線?
    • SCL - シリアルクロック線
    • SDA - シリアルデータ線がある。
  • この2線だけで、制御側(マスタ)と、IC(スレーブ)の通信を行なう。

概要

  • 個々のスレーブがアドレスを持っていて、データの中にアドレスが含まれている
  • 1バイト転送毎に受信側からACK信号の返送をして、互いに確認を取りながらデータ転送を行っている

I2C/アドレス

  • I2Cアドレスには7ビットと10ビットのバージョンがあります。
  • 7ビットでデバイスを特定し、8番目のビットで書き込みか読み出しかを指定します
  • 10ビットモードの場合は2階に分けてコントロールバイトを送信

データ

  • アドレス
  • RWビット
  • Ack

転送

1バイトの書き込み

  • マスタースタート (S)スレーブアドレスWレジスタアドレスデータストップ(P)
    スレーブAckAckAck

複数バイトの書き込み

  • マスタースタート (S)スレーブアドレスWレジスタアドレスデータデータストップ(P)
    スレーブAckAckAckAck

SPIとの違い

  • 通信方式で類似のSPIと大きく異なるのは、個々のスレーブがアドレスを持って いて、データの中にアドレスが含まれていることと、1バイト転送毎に受信側から ACK信号の返送をして、互いに確認を取りながらデータ転送を行っていることです。

I2C-USB変換アダプタ

I2Cバス仕様

AVR

派生

関連

参考