USBシステム: 実装の目的

jp

システム実装の動機

インタラクティブなアプリケーションでは、画面上のオブジェクトにユーザーのアクションを反映させる為の入力手段が必要になります。入力手段としては、シリアルターミナルからのキー入力や、ゲームPADの様な入力デバイスが良く用いられます。現在開発に利用しているFPGAプロトタイプボードには、FPGAのI/Oピンに接続されたUSBコネクタが用意されている事から、市販のゲームPADを利用した入力手段の実装を行いました。

シリアルターミナルを用いた場合の入力

シリアルケーブルで接続されたPCのターミナルソフトから、キー入力でデータを送信します。ターミナル上でPCのキーボードを押すと、そのコードが組み込みシステムのCPUに送られます。アプリケーションレベルで文字を判別して(例えば、Aで画面上のキャラクタを左に移動、Dで右に移動といったように)、それぞれのキー入力に応じた処理を行います。

usb_pic2

シリアル入力

USBを用いた場合の入力

市販のUSBデバイスを入力手段として使用します。シリアルターミナル用のPCを接続する事なくユーザー入力を行えるようになります。また、接続するUSBデバイスによって、2値のスイッチ情報だけではなく多値のデータを入力する事も可能になります。

usb_pic1

USB入力

USBの仕様書

USBの仕様書は、USB Implementers Forum, Inc*1のサイトから入手可能です。
今回USBデバイスとして使用するゲームPADはHID Classに分類される為、そのドキュメントも必要になります*2。

*1 http://www.usb.org/
*2 Device Class Definition for Human Interface Devices (HID)


Page 1 of 5 12345Next >
タイトルとURLをコピーしました