この記事、もう少し詳細に書く
オシロスコープにロジアナ機能がついていれば、いいのだが、安価なものにはほぼついていない。(ついているものもあるが、私は持持ってない)そのために、かいかえるほど、オシロの使用頻度が高くない、、という現状もある。
知人から、安価なロジアナがPCソフトがフリーで使えるものがあるよとのことで、EzUSBを使ったものを紹介してもらった。販売されているものはこれとか。
オープンソース物となると、いきなり敷居が上がってしまい、あんまりよくわかってないボンクラにはきついものがあるのだが、何とか動かせているので良しとしよう。実際に使うシーンがあるかは、謎。
EzUSB FX2LPが現在の正式なシリーズ名らしい、デバイスはCY7C68013A。これはCypress(現在はInfineon)のUSB-Bootloader付きのもの。SSOP56で実装しやすいし、小さい開発ボードがすでに出回っていないことなどから、いくつか回路図が残っているので作ってしまったら、と思った。(マイコンには興味はないがちょっとしたことで使えたりすれば面白いかな。まただれか買ってくれたら、うれしいし、期待はないけど)
基板AW ezusb-1.png ezusb-2.png
USBコネクタはMicroを採用した。これまでの経験で、mini-Bは案外接触不良になりやすいということが分かった。それほど、何度も挿抜しているということもあるが、プラグによってだが接触不良になったものがこれまで3本はある。
開発ボード
- オリジナル CY3689
マニュアルInfineon-CY3689_EZ-USB_FX2LP_Discovery_Kit_Guide-UserManual-v01_00-EN.pdf - コピー https://www.aitendo.com/product/3030
- 16chのロジアナの場合は、ポートPBとPDを使うようだ。
- オリジナルに倣って、PA0/PA1にLEDを仕込んだ。また3.3V電源起動用のLEDも接続
- 電源スイッチは無し
- これもオリジナルに倣って、EEPROMのSDA端子を開放にできるJumperを仕込んだ
- クロックは24M水晶(負荷12pF)、EEPROMは128Kbit
ほかにもさまざまあるようだが、回路図は大体どれも同じである。よって、CY3689のマニュアルに記載されている回路図そのままに必要ポートのみ配線する回路構成とした
Sigrok
そのオープンソースのロジアナが、Sigrokというそうです。https://sigrok.org/wiki/Main_Page ここに全部か至ると言われればそうなんでしょうが、あほには理解がしづらい部分も多い。
顛末
最終的には動いているようなのだが、今一つしっくりこないというか、ググっても記事が古いせいかその通りになってくれない。あらためて、chatGPTさんに聞くと、下記のように返事をいただいた。
Sigrokのインストール:
- Sigrokの公式ウェブサイト(https://sigrok.org)から、Windows用のSigrokパッケージをダウンロードします。
- ダウンロードしたファイルを実行し、指示に従ってSigrokをインストールします。
FX2LAFWドライバのインストール:
- FX2LAFWドライバは、SigrokでEzUSBボードをサポートするために必要なドライバです。
- FX2LAFWドライバは、Zadigというツールを使用してインストールすることができます。
- Zadigツールをダウンロードし、実行します。公式ウェブサイト(https://zadig.akeo.ie/)から入手できます。
- Zadigを起動し、メニューバーの「Options」→「List All Devices」を選択します。
- デバイスリストから、EzUSBボードを見つけて選択します。
- ドライバのリストで「fx2lafw」を選択します。
- 「Install Driver」ボタンをクリックして、FX2LAFWドライバをインストールします。
Sigrokの設定:
- Sigrokのインストールが完了したら、Sigrok PulseViewを起動します。
- 「File」→「Preferences」を選択します。
- 「Hardware」タブを選択し、EzUSBボードを追加します。
- 「fx2lafw」を選択し、設定を適切に行います。
EzUSBボードの接続と使用:
- EzUSBボードをWindows PCに接続します。USBケーブルを使用してボードをPCのUSBポートに接続します。
- PulseViewで「Connect」ボタンをクリックして、EzUSBボードを接続します。
- 必要な設定を行い、データのキャプチャや分析を行います。
これらの手順を実行することで、Windows PCでSigrokとFX2LAFWドライバを使用してEzUSBボードを認識し、ロジックアナライザとして使用することができるはずです。ただし、正しくドライバをインストールするためには、管理者権限を持つことが重要です。また、使用するEzUSBボードの型番によって手順が異なる場合があるため、詳細なドキュメントやメーカーのサポートを参照することをお勧めします。
説明は調べたものと同じではあるが、より分かりやすいか。
実装後、PCに接続すると不明デバイスという名前でデバイスが登録され、デバマネではVID=4B4、PID=8613と正しく見えるということは動いていると思える(JumperでEEPROM有無切り替えても結果同じ)。
その後Saleaeのソフトを入れて認識したら、Sigrokで使えるようになると書いている人が複数あったが、どちらも認識しなかった。これは無駄だったかもしれないがCypressのEzUSBFX3の開発帰途を入れるとデバマネの表示がEZUSB_FX2_NO_EEPROMになるため、動いていることは確信したが、その先に進めなかった。そこで、fx2lafwというファームなのかドライバなのか(?)を直接ググったところ、Windows用ドライバに行き着いた。
https://jp.drvhub.net/devices/network/cypress/fx2lafw
ドライバハブとあるから、ドライバを集めてるサイトみたいなものか? ダウンロード、解凍して、ドライバ更新でこれを指定すると、
この状態で、PulseViewを起動し、demo何とかってところをクリックしてConnect Deviceする
そしたら、fx2lafwってのがドロップダウンにあるからそれを選んで
Scanなんとかってところクリック、そうすると、OKボタンが出てくる(それまではグレーアウトしている)のでクリックすると、下記のようにデバマネ表示がfx2lafwになる
runすると、使えていそうだ。
とりあえず、ここまで。
CPUは3つ購入したので、あと2つ実装してみよう。K君ならもう少しいい解決方法を知っているかもしれないから、渡して情報をもらおう。
コメントを追加