MINI EZ−USBは通常はPCと接続して使用しますが、下記の写真のように単体で使用することも可能です。この場合は、USBによる開発環境を備えた、8bitマイコンとみなすことが出来ます。
乾電池で動作するMINI EZ-USB
単体で使用するためにはEEPROMと呼ばれるプログラムを格納するための消去可能なROMを用意する必要があります。EZ-USBのプログラム領域は8Kbyte=64Kbitですので24LC64と呼ばれる64KbitのEEPROMを使用します。
24LC64は秋葉原の秋月電子などで数百円程度で購入できます。
EZ-USBのFWはEEPROM(24LC64)から供給される
Ver2.1以降の基板では基板裏面にTSSOPタイプのEEPROMを実装することが可能です。PROMのジャンパピンをショートにするとEEPROM有効になります。
写真の左上がEEPROMの1番ピン
MINI EZ-USBとEEPROMの接続は下記の回路図のようになります。スイッチを取り付けることにより、EEPROMを無効にすることが出来るので、開発中は便利かもしれません。(無効にして立ち上げることにより、Cypressのコントロールパネルを使ってFWのダウンロードやEEPROMの書き込みなどが出来ます。)
<EEPROMの書き込み>
EEPROMの書き込みはEZ-USBコントロールパネルのEEPROMボタンを押して、書き込むイメージファイル(iicファイル)を指定することにより行います。
このiicファイルはCypressの提供するツール C:\Cypress\USB\Bin\hex2bix.exe を使用して行います。起動方法はDOS窓で"hex2bix -I fw.hex"のように-IオプションをつけてHEXファイルを指定します。これでfw.iicファイルが得られます。
Keilの統合環境の中で自動的に生成するようにも出来ます。
Keilの統合環境でProject -> Options for Target 'Target1' を選択して
Output のタブを開いてください。
ここでhex2binが実行されるように設定します。
これでFWを更新すると自動的にiicファイルも生成されます。
<一度書き込んだEEPROMに再度FWを書き込む>
何故そうなるのかわからないのですが、一度ブート用(1バイト目が0xB2)に書き込んだEEPROMに対して、再度コントロールパネルを使用して書き込むことが出来ません。
これでは困りますので、これを回避する方法を伝授します。
まず、コントロールパネルが認識できるようにMINI EZ−USBを起動します。これにはEEPROMを接続せずに起動するか、あるいはEEPROMの6番ピン(SCL)をGNDにショートさせてUSBケーブルを接続します。
(うらたんさんの指摘により、5番ピン(SDA)をGNDにショートさせたほうが確実との指摘がありました。上記でNGの方は試してください。ご指摘感謝します。)
コントロールパネルから
C:\Cypress\USB\Examples\EzUsb\Vend_Ax\Vend_Ax.hex
をダウンロード(Downloadボタン)します。
そして下記のようにVendReqの項目をセットして、VendReqボタンを押します。
(これでEEPROMの1バイト目に0xffが書き込まれます)
その後、USBケーブルを抜き差ししても、EEPROMからプログラムをロードしなくなりますので、EEPROMボタンを使って書き込みたいEEPROMイメージ(iicファイル)を指定します。