Inter-Integrated Circuit
別名: I2C, I²C
IC間の通信を行うためのシリアルバスのインターフェース。一本で送受信を行う半二重方式。クロックに同期する同期式。
インターフェース概要
I2Cデバイスはコントローラかターゲットのどちらかの役割に分かれる。
元々はマスターとスレーブと呼ばれていた。
コントローラが通信の制御を行う。
コントローラはターゲットのアドレスを指定して特定のターゲットと通信する。
https://scrapbox.io/files/62c72e46a806740020bd546a.png
引用: https://eiseilab.com/i2c/
I2Cでは2本の信号線がある。
Serial Clock Line (SCL): 名前の通りクロック用。コントローラがクロック信号を生成する。
Serial Data Line (SDL): 名前の通りデータ用。
信号線にはプルアップ抵抗を接続する。
VDDについては電源端子を参照。
SDAとSCLの信号
https://gyazo.com/ca67c5c91c09b0409f82827fd093b8b5
引用: https://eiseilab.com/i2c/
https://gyazo.com/961ea286b412a9d54abd2b9b35d2a414
引用: https://eiseilab.com/i2c/
START: SCL=HIGHでSDAをHIGH->LOW
STOP: SCL=HIGHでSDAをLOW->HIGH
参考
仕様書: https://www.nxp.com/docs/en/user-guide/UM10204.pdf