I2C bus

【I2C busを分かりやすく解説】回路/システム構成編

I2Cのシステム構成

こんにちは。
ヘーシロー。です。

今回は、I2Cバスを用いた
システム構成について。

I2C busとは

$I^2C bus$ (アイスクエアシーバス: 以下(I2Cバス))は、
双方向通信の2線のバスです。

このI2Cバスも
バス線の一種ですので、
色々なデバイス(IC)がバス線上に接続されます。
その中でも、
マスタと呼ばれる制御ICがあり、
このマスタが、
I2Cバス上の各デバイスに命令を送ったり、
各デバイスの内部レジスタの情報を
読み取ったりします。

つまり、
このバスに接続されている各デバイスは、
バス上のマスターと通信し、
マスターの制御を受けます。

2線のバス線は、両方とも、
プルアップ抵抗を介して、
電源に接続されています。

I2Cのシステム構成

文章だけだと分かりずらいので、
I2C busで構成されるシステムの
代表例を図示します。

I2Cのシステム構成図1

CPU(あるいはマイコン)からの
制御信号はGPIO等のパラレル信号で
送り出されます。
そのパラレル信号を、
2線のI2C bus信号にして、
各デバイスに送り出すのが
Bus controller(バスコントローラ)です。

LED driverやmotor controller等、
複数のデバイスが、
I2C bus上に並列に接続されます。
各デバイスには、
I2C bus上のアドレスが
定められており、
各デバイスは、
自分のアドレスへの命令のみ
受け取ります。

この例では、
LED driverやmotor contolloer等を
どう動かすか
CPUにプログラミングしておく事により、
システムを動作させることが出来ます。

SCL/SDAは双方向バッファ

I2Cは、
双方向通信しますので、
SCL/SDAは、双方向バッファです。
出力のドライバは、
オープンドレイン型なので、
I2C busは、
プルアップ抵抗により、
VDDへ接続されます。
これも簡単な図にしてみました。

I2C バッファ図2

今日はここまで。
気まぐれに続きを書きますので、
気長にお待ちいただければと思います。

ABOUT ME
アバター
ヘーシロー。
地方大卒。エンジニア歴20年近いオジ。
最初の職場はブラック。
長年の忍耐を経て、
ブラック脱出を決意。
就職先の影も形もない状況で浪人する。
ブラック脱出後、メーカーや商社で、
自身の英語と技術知識に自信を持つ。
リスクをとっても
ブラックからは脱出すべきと確信。
リスクをとる個人が増えることを願い、
技術記事やキャリア形成、
英語について、
思うところを発信する。
error: Content is protected !!
%d人のブロガーが「いいね」をつけました。