【USBアナライザとは】
今回USB2.0を扱うにあたり、オシロスコープでは解析が心許ないので、オービット社から
USBアナライザを借用しました。
品名は「USB-Streamscope US-F100A」 というもので、USB1.1対応のものですが、
Low SpeedとFull Speed両方に対応していますので、今回のPICのFull Speed対応の
USB2.0でも問題なく解析ができました。
ホストとUSBデバイスの間に挿入する形でこのスコープを接続すると、パラレルポート経由
でUSBのデータの送受信内容をパソコンに転送しモニタできるようになります。
USBホストとモニタ用パソコンは共用できますので、パソコンは1台あれば運用できます。
ただし、USB開発の最初の内はホスト側をストールさせてしまうことがありますから、
できれば別のパソコンを用意してモニタ専用にするのが安心です。
今回のUS-F100Aの上位モデルではパラレルポートの代わりにUSB2.0接続でモニタできる
ようになっています。
製品紹介の詳細は下記を参照下さい。
★オービット社 USBストリームスコープ
今回、このUSBストリームスコープを使ったお陰で無駄な時間を使わずにUSB接続の
開発を行うことができました。
【USBデータの表示】
実際にUSBストリームスコープでモニタしたデータの内容は、パラレルポート経由で取り出し
パソコンにUSBプロトコルとしてビジュアルに表示されます。
実際に接続したときの最初のプラグ&プレイ(Enumaration)の部分は下記のように表示
されました。
この表示で左側の部分だけで送受信のやりとりが一目でわかります。さらに右側で
内容の意味解析をしてくれますので、問題の解析が非常に簡単になります。
(クリックすると全体が見られます)
またUSBの場合、ホスト側から1msec周期でポーリングが行われますから、通常は上記の
表示の間に、ポーリングの空振りでデバイス側からNAKがたくさん返送されるやりとりが
あります。
しかし、この空振りの表示を省略することができるようになっていますので、図のように
意味のあるデータだけを選別して表示してくれます。これもプロトコル解析には有効です。
この設定は下図のような設定ダイアログでできるようになっていて、これ以外にいろいろな
条件設定で表示をさせることができます。
ログした結果をファイルとして保存しておき、そのログに対してもこのフィルタを設定できます
ので、一度ログしておけばいろいろな方法で解析をすることが可能です。