2010年6月8日火曜日

V-USBによるUSB2.0インタラプト転送デバイスの作成(1)

ATmega168汎用基板を使ったV-USBによる Low Speed USBデバイスを作って行きたいと思います。

日本橋のデジットでATmega168汎用基板と水晶発振器(12MHz)と抵抗等を買ってきました。
3.3V100mAの3端子レギュレーターを買ってきて基板にマウントしました。3.3VというのはUSB2.0規格で決まっている差動信号の電圧です。
3端子レギュレーターは5VのUSBバス電圧を3.3Vに降圧してくれます。
431のリファレンスを買ってきました。リファレンスICとは正確に一定電圧を出力するデバイスです。3.3Vを入力に対して室温にあまり影響なく約2.5V電圧を安定して出力します。アナログ・デジタル変換器を使用する時、この電圧が基準となります。
Aref端子には1.0Vが印加されるように半固定抵抗で調整しました。センサデバイスをくっつけてインタラプトIN転送をやってみたいと思います。つまり、センサ情報をUSBを使ってWindowsアプリケーションで表示させるわけです。温度計でも、湿度計でもいいです。





左の書籍はUSBコンプリートです。USB機器のバイブルです。













目的:USBデバイス作成を通じてUSB2.0 Windowsドライバの開発技術を習得する。

仕様は以下の通りにしたいと思います。

【USBデバイス要求仕様】
  • USB2.0 Low Speedデバイスとする。
  • インタラプトOUT転送を行なう。
  • コントロール転送は必ず行なう。#当たり前
  • 制御するデバイスはLED1個とする#OUTエンドポイント1を作る
  • ディスクリプタはEEPROMに格納する。
  • V-USBを使用する。
  • Windows GUIアプリケーションでチェックボタンをON・OFFすることでLEDを点灯させたり、消灯させる。(LED点灯は組込みソフトの世界の基本。)
  • WindowsドライバはWDMのお作法を使う。#KMDFお作法を使いたいが基本から。
以上が基本要求仕様になります。

とりあえず、これをたたき台にして細かいところを検討したいと思います。

上の写真でレセプタクル(USBミニBコネクタ)と基板の電源をつなぎました。そして、いきなりですが、PCのUSB端子と接続しました。USBのバスパワー5Vが入力され、3端子レギュレータからは3.3Vが出力されました。リファレンスからは2.5Vが出力され、半固定抵抗でA ref端子に入力する電圧を1.0Vに調整しました。

次は、V-USBのコンパイルとATmega168へのFWのダウンロードを行いたいと思います。

Keep Starting!!!

0 件のコメント: