PICに内蔵されているUSB機能の実験パート3
(USB機器を製作する場合の通信解析ツールなどの紹介)

〔パート1〕 〔パート2〕   〔パート4〕 〔パート5〕 〔パート6〕 〔マイコンのトップに戻る〕


前回のパート2では、CDCクラスを利用してパソコンとデータの送受信を行って見ました。

USB機器の開発・製作を行っていると、通信しているデータの内容を見てみたくなったりします、
USBのプロトコルアナライザ機器は値段が高くて手が出ません、そこでパソコンのアプリで表示出来る
ツールやUSBデバイスのディスクリプタを調べるツールなどをこのパート3では紹介しようと思います。

《USBView》

このツールは、Microsoftが提供しています、USBデバイスのベンダID・プロダクトIDとディスクリプタを
調べるツールです。

こちらのサイトからダウンロードします、簡単な使用方法も書いて有ります。

PS. *1)
ダウンロード方法が変わったようです、こちらのページからダウンロードし、
インストール時に”Debugging Tools for Windows”のみチェックをいれてインストールしましょう。
インストール先は、
64ビットOSなら”C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\usbview.exe”です。
32ビットOSなら”C:\Program Files\Windows Kits\10\Debuggers\x86\usbview.exe”と思います。

下画面は、パート2での[USB対応超小型マイコンボード]を接続した場合の内容を表示させた物です。
尚、Windows 7 Pro で表示させています。

USBView画面


《USBDeView》

このツールは、デバイス ディスクリプタの内容表示とUSBドライバの情報表示を行うツールです。

ダウンロード

@ こちらのサイトからダウンロードします。
  HPの最後の方に"Download USBDeview"の文字が有ります、
  これをクリックしてダウンロードしたら解凍させます。

A 日本語化する為のファイルをダウンロードします。
  "Download USBDeview"の文字の少し下方に"Japanese"文字(下赤枠)が有るのでこれを
  クリックしてダウンロードしたら解凍します。

USBDeViewのHP


  解凍した"USBDeview_lng.ini"ファイルを、@で解凍したフォルダの中に移動させればOKです。

B インストールは必要ないです"USBDeview.exe"を起動させるだけです。

USBDeViewの画面1

  一覧から「USB Serial Port」をクリックすれば下記画面が表示されます。

USBDeViewの画面2


《SnoopyPro》

USB通信のデータ内容をログし表示をしてくれるツールです。

こちらのサイトからダウンロードします。
ダウンロードし解凍したら"SnoopyPro.exe"を起動させるだけです。
windows 7(Pro)で動作させるには、Windows XP SP3 互換モードでないと動作しません。

互換モード

@ "SnoopyPro.exe"を右クリックし、[プロパティ]を表示させます。
A プロパティの「互換性」タブをクリック。
B 互換モードで"Windows XP SP3"を選択して、[適用][OK]をクリックします。
C 後は通常通り"SnoopyPro.exe"を起動させます。

操作方法

前頁、パート2での[USB対応超小型マイコンボード]を接続した場合の操作で説明します。

SnoopyPro操作1  @ SnoopyProを起動させます。

 A ツールバーのUSBマークツールをクリックします。
   下記[USB Devices]画面が表示されます。


SnoopyPro操作2

B 解析をしたいデバイス(ここでは"USB Serial Port")を選択します。

SnoopyPro操作3  C [USB Devices]画面の「File」→「Unpack Drivers」を順にクリックします。


SnoopyPro操作4  D 上手く行けばこの画面が表示されます。
   このまま[OK]ボタンをクリック


SnoopyPro操作5  E [USB Devices]画面の「File」→「Install Service」を順にクリックします。


SnoopyPro操作7  F [USB Devices]画面の「Edit」→「Install Sniffer」を順にクリックします。


SnoopyPro操作8  G [USB Devices]画面の「Edit」→「Restar Device」を順にクリックします。
   下記の[USBLog]画面が[SnoopyPro]のメイン画面に表示され、
   通信の記録取りが開始しています。

 H [USB Devices]画面は[X]で終了させてもOKです。


SnoopyPro操作9

I 既に"12 packets"程通信をしているみたいですね、記録はしているのですがこの時点では
   内容は表示されません。
J 「Tear Term」を起動させ、データ"123"を送信して見ました。
K [■]ボタンをクリックし記録を停止させます、すると下画面の様に記録内容を表示します。

SnoopyPro操作10

PCから"123"の文字が送られPICからはデータに+1されるので"234"が返される記録が残っていますね。
現在USBプロトコル仕様までは、まだ読んでないのでぇ、どんなやり取りが行われるのか不明ですので
このツールがどれだけ利用出来るのかも判りません。
それにしてもただ"123"と"234"を送受信しただけで"90 packets"えらいパケットのやり取りを行っている
様だがぁ、如何言う事ぉ。

次回以降で、少しだけUSBプロトコル仕様について記述しています。

《その他》

行く行くは、こちらの「ロジックアナライザー」を買いたいなぁと思ってはいるのですがぁ....
そうすれば、これにUSBプロトコール機能を追加して利用すれば良いと思うこの頃....
でもぉ、先立つ物がない.....欲しぃ....



追記(*1) 2019/03/01


【きむ茶工房ガレージハウス】
Copyright (C) 2006-2019 Shigehiro Kimura All Rights Reserved.