e-tipsmemo

ごった煮

EZ-USB FX2 開発環境設定・動作テスト

CypreeのEZ-USB FX2を開発するために必要なものをメモする

まずは登録しないといけないのが不便
あとサイプレスのサイトがとても重い。

開発ソフトウェア

Windows10のためのドライバ
http://japan.cypress.com/knowledge-base-article/drivers-ez-usb-fx1-fx2lp-and-fx3-kba94413


開発ソフトウェアはFX2LP用のSDKがあるがKeilコンパイラを使用してIDEも使いにくい
http://japan.cypress.com/documentation/development-kitsboards/cy3684-ez-usb-fx2lp-development-kit

メモ

EZ-USB FX2には8051という8bit CPUが載っており
Cypress付属のコンパイラ のKail Compilerでは4KBまでのプログラムしかコンパイルすることができない。

EclipseでFX3のSDKを入れる。これには同時にFX2LPの開発もできるようになっている。
www.cypress.com

この中には
Cypress Console
http://japan.cypress.com/documentation/software-and-drivers/suiteusb-34-usb-development-tools-visual-studio
も既に入っている。
f:id:katakanan:20171231115031p:plain

コンパイラは付属していなので
Keilコンパイラの代わりにSDCCコンパイラを入れる。
SDCC - Small Device C Compiler
SDCCをProgram Files以下にインストールするとEclipseがProgramをコマンドだと思うようになるのでC:\SDCCにインストールした。

すべてをインストールする。

プロジェクト作成

すべてのプログラムのCypressの中に
Cypress EZ USB SuiteというEclipseベースのIDEがある。
f:id:katakanan:20171231115636p:plain

File->Project でCypessを展開すると、FX2LP Projectがある
f:id:katakanan:20171231115731p:plain

Bulkloopをテンプレートにプリジェクトを作成できる。
f:id:katakanan:20171231115815p:plain

コンパイル

EclipseでBuild All

書き込みテスト

バイスマネージャーにCypress FX2LP No EEPROM Deviceと出ればOK
f:id:katakanan:20171231152441p:plain

Cypress Control Centerを起動して、Cypress No Flash を選択する。
f:id:katakanan:20171231152554p:plain

ツールバーのProgram FX2からRAMに
f:id:katakanan:20171231152654p:plain
ビルドしたサンプルプログラムのディレクトリ内にあるbulklo]op.hexを選択し、書き込む。

f:id:katakanan:20171231153108p:plain
左下のProgramm....が Successに変われば書き込み完了である。

f:id:katakanan:20171231153125p:plain

注意

RAMに書き込んだので電源を落としてしまうとプログラムは消えてしまう。デバッグ中はRAMに書き込んで、実用するときにFlash ROMに書き込むという思想のようだ。

動作

プログラムを書き込んで数十秒立つと、Cypress Control Center上でのFX2 の表示が
Cypress FX2LP Sample Deviceに代わっている。
f:id:katakanan:20171231153235p:plain

要素を展開して、Endpointを指定し、転送を開始すると0を
Byte to transferのサイズだけ送信するテストが動く。
Text to send にテキストを入力するとそのバイトサイズだけ転送される。
f:id:katakanan:20171231153411p:plain

次からは以下の書籍を参考にしていこうと思う。(しかし絶版らしい)

USB2.0インターフェース設計術

USB2.0インターフェース設計術