シリアル通信でのデータ制御方法

チョコです。

かふぇルネのスレッドにシリアル通信を用いたセンサ等の制御で,考え違いをしている例があるので,考え方をまとめなおしてみました。

シリアル通信を用いたセンサ等の制御では,コマンドやデータ以外にセンサ内のどのレジスタを対象にするかを指定して,読み書きを行う必要があります。

SPIの場合には,スレーブを選択して,一連の通信の中で送信と受信を組み合わせて処理可能です。

しかし,I2Cバスでは,データの転送方向は最初に指定するだけです。そのため,スレーブからデータを読み出す場合には,2回に分けて処理する必要があります。