2011年6月17日金曜日

Microsoft Flight Simulator用自動操縦パネルの製作・試作(その3)

下記を行うことができました。

1.HIDジョイスティックとHID準拠デバイスを作れた
HID準拠デバイスは7segLEDの表示内容をPCから出力指示するためのもの。
2.HIDジョイスティックではロータリエンコーダの左右の回転でオートパイロットの設定高度が変えられることを確認した。
3.LEDのダイナミック表示ができるようになった(PCからの通信で値を送るまでにはいたらず)
4.1.でHID複合デバイスとして作ることができた。
これで、一台でジョイスティック、LED表示デバイスを扱えるようになりハンドリングが楽になると思います。

PCからの通信が今までに経験がなく、サンプルプログラムがどれも微妙に旧い、ずれてる、というったものなので読みといていく作業が大変そう。

とりあえず7segLEDでお約束の?カウンタが動作しています。

複合デバイス(Composite Device)でゲームコントローラ、
HID準拠デバイスが同居

今回はまったところ。
・デスクリプタのWordAlignがずれていると微妙な動きになることがある。
→例えば、デバイスの名前がおかしくなるとか。
・サイプレスのサンプルが参考になった。
http://japan.cypress.com/?rID=12932
でも、微妙に製造元文字列が設定されないとかのバグ(仕様?)なぞが散りばめられている。
しかし、コンパイルすれば、キーボード、マウス、バルクデバイスが同居する。
・なんども抜き差ししているうちにはまった感じになり、デバイス削除だのベンダーIDだの変更をしたがそのうち認識してた・・・
・認識したのが開発機のみか、と疑いEEPROMに焼いて他のPCでも試した。ちゃんとうまくいった。
・最初、サイプレスのANなんどかデバイスの削除とかをやったり、ベンダIDを変えたりプロダクトIDを変えたりしてるうちになーんとなく治った。原因の分からない、もやもやした幕切れ

0 件のコメント:

コメントを投稿