LoginSignup
6
2

More than 3 years have passed since last update.

ロジックアナライザを試すその2(I2C)

Posted at

I2Cをロジックアナライザで確認

こちらの続き。ただし、今回はMacでトライ。用いたロジックアナライザも同じ

PulseViewをMacにインストール

ここにある「Stable release builds」をインストールする。こちらの「Downloads」にあるものは私のMacでは動作せず。

PulseViewでの設定

はじめに


「fx2lafw」->「USB」->「Scan」->「Saleae」を選択。すると、次のようになるが、ここでは、D0(SDAを接続)とD2(SCLを接続)のみ使用するので、それ以外は右クリックして「Disable」する。

I2C設定

下記赤枠のマークをクリックすると、プロトコル選択画面が表示されるので、I2Cを選択する。


選択後、次のように表示される。

ここで、次のようにSDAをD0に、SCLをD2に割り当てる。

I2C通信の構成

I2Cコマンドレスポンスが明示的に見えるよう、MacからI2C制御で用いた構成である、USB-to-I2Cボード、I2Cデバイス(光センサー)、ソフトウェア(Coolterm)を用いる。配線は次の写真。

ここでは、ロジックアナライザに接続するためにI2Cハブ(右の方に見えるもの)を用いている。

実験

I2Cアドレス確認

光センサーのI2Cアドレスは「0x29」(7bit表記)。1バイトのデータ「0x00」を書き、1バイトのデータを読み込んでみる。詳細は、MacからI2C制御。以下、同様。

I2Cアドレスおよびデータ「0x00」の「AW:29」(Address Write:0x29)および「AR:29」(Address Read:0x29)がデコードされているのがわかる。

センサーON

光センサーをONするには、Controlレジスタ「0x80」にデータ「0x03」を書き込む。

同じくデコードされているのがわかる。

データ取得

光センサーデータData0LOWを取得する。レジスタは「0x8C」。

データ「0x9E」がCoolterm上で取得できていると同時に、ロジアナ上でもそのデータを見ることができる。

接続されていないI2Cアドレスにコマンドを送ってみる

例えば7bit表記で0x03に、1バイトのデータ「0x00」を書き、1バイトのデータを読み込んでみるが、、

レスポンスなし。

終わりに

実験成功。その次はSPIにトライしてみる。

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2