EZ-USBの組み立て・設定など

工作

EZ-USBをいじってみる準備。

【環境・部品】

  • WindowsXP Professional SP3
  • MINI EZ-USB(AN2131SC)ver.2.0
    • http://strawberry-linux.com
    • http://optimize.ath.cx/index.html
  • Keil uVision
    • EZ-USB_devtools_version_261700.zip
    • http://www.cypress.com/

【MINI EZ-USBの組み立て】

部品が細かすぎてフラックスを使わないと無理。

  • 白光(株)電子部品・PCB用フラックス No.001-02(http://www.hakko.com/japan/)
  • 白光(株)電子部品・PCB用フラックスリムーバー No.017-01(http://www.hakko.com/japan/)

【統合開発環境のインストール】

通常の「Typical」では統合開発環境はインストールされない。

  • Keil uVisionを実行する。
  • 「Custom」を選択する。
  • 「uVison2_4K_Demo」を選択する。

【コンパイル・書き込み】

  1. ソース作成。
  2. 「Keil uVision」を起動して新規プロジェクトを作成する。
  3. ソースをプロジェクトに加える。
  4. EZ-USBは内部RAMしかないため、プロジェクトファイルを修正する。
    • 「Project」→「Options for Target ‘Target1’」→「BL51Locate」
    • 「Code」に「0x0」、「Xdata」に「0x1000」を入力する。
    • http://optimize.ath.cx/mini_ezusb/fw.htm
  5. コンパイルする。「Project」→「Build Target」
  6. EZ-USBと計算機をUSBケーブルで接続する。
  7. デバイスマネージャで接続を確認する。
  8. 「EZ-USB Control Panel」を起動する。
  9. 「Download」を押して作成したHEXファイルを転送する。
  10. ソフトウェアUSBアナライザでやりとりを見る。
  11. デバイスマネージャでキーボードの項目に「HIDキーボード」が追加されていることを確認する。

【EEPROM】

MINI EZ-USB(AN2131SC)は内蔵RAMしか持たないため、電源を切ると書き込んだ
Firmwareは消えてしまう。

永続的に使用する場合は、EEPROM(8pin, 64kbit, 電源電圧5[V])を取り付けて焼く。

ストロベリーリナックス社製は初めからEEPROMが付属している。

  • 24LC64、24C64 (Microchip or ATMEL)
  • M24C64-WBN6 (ST Microelectronics)
  • http://akizukidenshi.com
  • http://optimize.ath.cx/mini_ezusb/alon.htm

【EEPROMに焼く方法】

  1. http://optimize.ath.cx/mini_ezusb/alon.htm
  2. 「Keil uVision」で通常通りコンパイルしてHEXファイルを作成する。
  3. IICのバイナリファイルに変換する。
    • C:\Cypress\USB\Bin\Hex2bix.exe -I [hex file]
  4. 「EZ-USB Control Panel」で「EPROM…」を選択してEEPROMにIICファイルを書き込む。

【EEPROMに焼いた後に元の状態に戻す方法】

EEPROMに書き込むと、それ以降プログラムの更新を受け付けなくなる。

EEPROMのSCL、又はSDA端子をGNDにショートさせた状態でパソコンと接続すれば、
書き込み前の状態に戻る。

スタンドアロン

【IO Ports】

AN2131仕様書(an21xx_5.pdf) P.60から・・・。

  • PORTxCFG
    • PortをI/O port(PORTxCFG=0)、又はAlternate Function(PORTxCFG=1)のどちらかに設定する。
  • OEx → 入力(OEx=0)、出力(OEx=1)を切り替える。
  • OUTx → 出力する値をレジスタに書き込む。
  • PINSx → Portの各PINの状態(High/Low)を示す。

【語句】

  • エンドポイントIN → 計算機からUSB機器へのデータ転送
  • エンドポイントOUT → 計算機からUSB機器へのデータ転送

【USBアナライザ】

  • USB Sniffer SnoopyPro ver.0.22 http://sourceforge.net/projects/usbsnoop/
  • USBCV R1.2.1(USBCheckの後継) http://www.usb.org/developers/tools.html
  • USBHTT 1.2 http://www.usb.org/developers/tools.html

【参考文献】

  • MINI EZ-USBhttp://optimize.ath.cx/index.html
  • サンプル
    • C:\Cypress\USB\Application Reference Materials\Support Information\Full Speed Devices\AN21xx & CY7C646xx\Examples
    • 「EZ Combo」
    • 「HID Keyboard」
    • 「EZ-USB External Interrupts」
    • 「EZ-USB Composite HID Keyboard-Mouse」
  • マニュアル。(C:\Cypress\USB\Doc)
  • AN2131 仕様書(an21xx_5.pdf)のP.60にI/Oポートの説明がある。
  • HID 仕様書 hid1_11.pdf
  • HUT 仕様書 hut1_11.pdf
  • MINI EZ-USB回路図 ver.2.1以降mini_ezusb.pdf
  • MINI EZ-USB回路図 ver.2.0以前http://optimize.ath.cx/mini_ezusb/sche2.htm
  • USBの説明(PICFUN)http://www.picfun.com/usbframe.html
  • UUSBD.DLL(フリーの汎用USBライブラリ)http://www.otto.to/~kasiwano/
  • Keil環境からSDCCへの移植http://fenrir.naruoka.org/archives/000438.html

Comments