I2Cを学ぶ | 遥かなるひよこ道
I2Cはシリアル通信のバス形態で2本の信号線を使用して行う。
マスター(主人)がスレーブ(下僕)に対して基準クロックを送り、クロックに同期して双方向通信をする。(マスターは複数あってもよい)
接続できる機器数は線間容量がなんとかF以下ならOKとかだったはずでアマチュアレベルなら気にする必要は無い。
I2Cはフィリップス社の統一規格があるので配線方式から通信方式まですべて同じ。つまりI2C対応機器であればどれでも接続できるという

また、通信クロックの周波数はいくつか分類されてて
スタンダード・・・100kHz
ファストモード・・・400KHz
(他にも遅いやつ速いやつとある)
基本はスタンダードモードさえわかってればいいと思う

I2Cは図のような感じで構築する

I2C構図

I2C機器はSDA、SCLともにオープンコレクタもしくはオープンドレイン出力となっていて、アクティブローである。つまり何も無い状態では信号線のレベルはHということ。
(アクティブローだけどレベルは見たまんまで呼びます。)

通信も基本はこの形
   I2C通信

各通信のタイミングチャートは以下を参考

タイミングチャート

SCL(クロック)がHのときにSDA(データ)をLにするとスタートストップ信号になる

じゃあ、パルスはいつ出すのか。
→それは通信をしているあいだだけ

ACKはどんな波形や。
→データを送ったあとに1ビット分だけLになる

ACK

■参考
ストリナ I2C液晶付きLPCマイコン
仕事でここから結構買うこともあるモジュール系が豊富