最終更新:2023-06-20 (火) 02:32:02 (458d)
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の速度でシリアル通信を行うように使われるのが主な用途。
インターフェイス
- この2線だけで、制御側(マスタ)と、IC(スレーブ)の通信を行なう。
概要
- 個々のスレーブがアドレスを持っていて、データの中にアドレスが含まれている
- 1バイト転送毎に受信側からACK信号の返送をして、互いに確認を取りながらデータ転送を行っている
I2C/アドレス
- I2Cアドレスには7ビットと10ビットのバージョンがあります。
- 7ビットでデバイスを特定し、8番目のビットで書き込みか読み出しかを指定します
- 10ビットモードの場合は2階に分けてコントロールバイトを送信
データ
- アドレス
- RWビット
- Ack
転送
1バイトの書き込み
マスター スタート (S) スレーブアドレス W レジスタアドレス データ ストップ(P) スレーブ Ack Ack Ack
複数バイトの書き込み
マスター スタート (S) スレーブアドレス W レジスタアドレス データ データ ストップ(P) スレーブ Ack Ack Ack Ack
SPIとの違い
- 通信方式で類似のSPIと大きく異なるのは、個々のスレーブがアドレスを持って いて、データの中にアドレスが含まれていることと、1バイト転送毎に受信側から ACK信号の返送をして、互いに確認を取りながらデータ転送を行っていることです。
I2C-USB変換アダプタ
I2Cバス仕様
AVR
派生
関連
参考
- http://www.wdic.org/w/SCI/IICバス
- http://www.picfun.com/c15.html
- http://www.eleki-jack.com/mycom2/2007/10/avri2c1_usitwi.html#more
- http://www.eleki-jack.com/2007/04/1232.html#more
- http://avrwiki.jpn.ph/wiki.cgi?page=Getting Started Notes - TWI (I2C)
- http://www.geocities.jp/kuman2600/n15i2c.html#b
- http://monolizm.com/sab/pdf/第16回_プレゼン資料(IC2通信編).pdf