2015年3月15日日曜日

EZ-USB FX2LP を動かしてみる (4) 千里の道も一歩から

わたしは、システム系の設計能力ってあまり高くないんです.ARMにペリフェラルをごてごて貼りつけて、バスの調停に四苦八苦してるようなハイブローなシステムLSI開発者を何人も見てきましたし、何万行あるのか判らんfirmwareをチームで仕上げるハイブローなソフト開発者を何人も見てきましたが、わたしにはそんな連中に匹敵する能力はありません.そんなハイブローな技術者を見れたのは幸運でした.
わたしの本業はアナログ回路設計と電磁変換系の研究開発の領域で、そこでしか排他的な能力を発揮できません.業務としてソフトもverilogもFPGAもLSIもやったけれど、その分野には自分よりも優れた技術者はたくさんいました.技術者としての自分が排他的な地位を占める余地がもはや無いと悟ったのでソニーを辞めました.
自分の強みを挙げるならば、守備範囲の広さです.電磁変換~アナログ~LSI~firmware~サーボ~メカ~トラボ の担当者とまぁまぁ意思疎通できるぐらいに立ち回りたがる人とはあまりお目にかかったコトがなかった.技術者は自分で自分の守備範囲を狭く設定したがる生物なのですが、わたしはその逆で他人の領域を侵犯したがる性質があります.

----
上述のとおり、システム系能力が低いわたしは、ドキュメントの理解力が低いので読んでもよく判りません.読んだコトを実際に動かしてみて「あっているのね」と確認して一歩一歩進んでゆく能力しかありません.

そこで今回は、「IOポートをON/OFFトグルさせるだけのCプログラム」を書いてビルドしてDLして動かしてみます.

PC環境について
OSはwin7-64bitです.あらかじめDVKはインストールされているとします.DVKのインストールはその1で書きました.

開発ツールについて
EZ-USB FX2LPの開発ツールは、KeilのIDEをそのまま使います.Cypressが独自のIDEをリリースしてたりはしてません.

サンプルプログラム
こちらにサンプルプログラムを置きます.解凍すると TEST01 GPIOTOGGLE というフォルダが現れますので、
C:\Cypress\USB\CY3684_EZ-USB_FX2LP_DVK\1.1\Firmware
にフォルダごと置いてください.他の場所に置いたら動かないかもしれません.

いきなりビルド&DL
細かい解説はさておいて、いきなりビルドしちゃいましょう.

開発ツールのインストールはその1その2で済んでいるとして、いきなりprojectを起動します.
TEST01 GPIOTOGGLEの中にある、gpiotoggle.Uv2 というのをダブルクリックします.
するとKeilのIDEが起動します.

↓このようにすると、error abortしたんじゃないかと疑うぐらい一瞬でビルド完了します.
↓次は、USB接続してあるFX2LPの基板へバイナリプログラムをDLして動かします.わたしが使っているこの基板はCypressの純正基板ではありません.右下のJPは撤去しておきましょう.理由はその2を参照.
↓「USB Control Center」というwinアプリを起動します.いくつかバージョンがあるようで、win7-64bitでは動かないバージョンもあるようです.その2で書いた経緯で、わたしはこのフォルダにある実行ファイルを使います.起動してください.
C:\Cypress\Cypress Suite USB 3.4.7\CyUSB.NET\bin\CyControl.exe
すると、画面に「cypress FX2LP No EEPROM Device」と表示されるはずです.ここでしくじってたら素直に死にましょう.
↓デバイス名「cypress FX2LP No EEPROM Device」をクリックしてからこんな風にして、
DLするバイナリを問うダイアログが出ますから、TEST01 GPIOTOGGLE フォルダの中にある、gpiotoggle.hex を指定します.

↓FX2LPプリント基板にあるピンヘッダに、PA0~PA7があります.そのどれでもOKなのでオシロで観測すると、250kHz周期の矩形波が出ているはずです.CPUのフルスピードでトグルすると250kHzになるのでしょう.
これで、ビルド→DL→動作確認 まで成功です.

EEPROM焼き
FX2LP基板に載っているEEPROMに焼いて不揮発にするコトもできます.このCPU(56pin)にはEEPROMもFLASHも内蔵されていません.外付けで16kBのEEROMが基板上に載っています.それを焼きます.

↓さきほどの「USB Control Center」で、こうします.64kBだけどOKとします.
↓次に、基板上右下のJPをとりつけます.かならずこのタイミングで取りつけて下さい.さもないと、「USB Control Center」が基板を認識しない恐れがあります.

「USB Control Center」のダイアログが焼くファイルを聞いてますから、goiptoggle.iic を指定します.数秒で焼かれます.(拡張子は.iicですので注意)

基板のリセットボタンを押すと、オシロに25kHzが出てきます.EEPROMを焼けたのを確認できました.

ここで注意なのは、EEPROMを焼いた後にはもはや「USB Control Center」に認識されなくなります.認識してもらいたいたくば、JPを撤去してから基板をリセットしてください.

今回は以上にて終了.programとかの解説は次回へ.

その3へ   その5へ

かしこ

INDEXページへ
https://hirasakausb.blogspot.com/2019/03/ez-usb-fx2lp-index.html

0 件のコメント:

コメントを投稿