USBマウスのレポート・ディスクリプタで悩む [タッチ・スイッチ]
(2014.01.29)
タッチ・スイッチ基板にUSBマウス機能を組み込もうとして、一つ判らないことが出てきました。Micrichip社のサンプル・プログラム(Device-HID-Mouse)はマウス・ポインタを操作するだけで、マウス・ボタンのON/OFFは行っていません。そもそも、Device-HID-Mouseにマウス・ボタン機能が組み込まれているのかどうかも判りません。orz
WEB検索を掛けて”HID-Mouse”に関する、情報を集めました。
<仕様書>
http://www.usb.org/developers/devclass_docs/HID1_11.pdf
<CQ出版 書籍抜粋?>
http://www.cqpub.co.jp/hanbai/books/33/33381/33381.pdf
<後閑さんの資料>
http://www.picfun.com/picclub/dai12/usbtech.pdf
<人と電子の工房さん>
http://esyokunin.dee.cc/30xSub_USB_Siyou/331_Siyou1_HidKb/331_Siyou1_HidKb.html
<きむ茶工房ガレージハウスさん>
http://www.geocities.jp/zattouka/GarageHouse/micon/USB/USB6.htm
”レポート・ディスクリプタ”が鍵を握っていることは判ったのですが、USB_DESCRIPTOR.Cの記述を見ても、その意味が掴めません。orz
で、ついにこの資料を見つけました。
<ルネサスエレクトロニクス>
http://documentation.renesas.com/doc/products/mpumcu/apn/rjj05b1417_m16cap.pdf
少し異なる部分もある(WHEEL機能が追加されている)のですがレポート・ディスクリプタの記述は殆ど一緒で、一つ一つの説明を読んでようやく理解することが出来ました。
Device-HID-Mouseのレポート・プロトコル・フォーマットは(多分)こんな感じです。
先頭バイトの下位3bitがマウス・ボタン
タッチ・スイッチ基板にUSBマウス機能を組み込もうとして、一つ判らないことが出てきました。Micrichip社のサンプル・プログラム(Device-HID-Mouse)はマウス・ポインタを操作するだけで、マウス・ボタンのON/OFFは行っていません。そもそも、Device-HID-Mouseにマウス・ボタン機能が組み込まれているのかどうかも判りません。orz
WEB検索を掛けて”HID-Mouse”に関する、情報を集めました。
<仕様書>
http://www.usb.org/developers/devclass_docs/HID1_11.pdf
<CQ出版 書籍抜粋?>
http://www.cqpub.co.jp/hanbai/books/33/33381/33381.pdf
<後閑さんの資料>
http://www.picfun.com/picclub/dai12/usbtech.pdf
<人と電子の工房さん>
http://esyokunin.dee.cc/30xSub_USB_Siyou/331_Siyou1_HidKb/331_Siyou1_HidKb.html
<きむ茶工房ガレージハウスさん>
http://www.geocities.jp/zattouka/GarageHouse/micon/USB/USB6.htm
”レポート・ディスクリプタ”が鍵を握っていることは判ったのですが、USB_DESCRIPTOR.Cの記述を見ても、その意味が掴めません。orz
//Class specific descriptor - HID mouse ROM struct{BYTE report[HID_RPT01_SIZE];}hid_rpt01={ {0x05, 0x01, /* Usage Page (Generic Desktop) */ 0x09, 0x02, /* Usage (Mouse) */ 0xA1, 0x01, /* Collection (Application) */ 0x09, 0x01, /* Usage (Pointer) */ 0xA1, 0x00, /* Collection (Physical) */ 0x05, 0x09, /* Usage Page (Buttons) */ 以下省略
で、ついにこの資料を見つけました。
<ルネサスエレクトロニクス>
http://documentation.renesas.com/doc/products/mpumcu/apn/rjj05b1417_m16cap.pdf
少し異なる部分もある(WHEEL機能が追加されている)のですがレポート・ディスクリプタの記述は殆ど一緒で、一つ一つの説明を読んでようやく理解することが出来ました。
Device-HID-Mouseのレポート・プロトコル・フォーマットは(多分)こんな感じです。
先頭バイトの下位3bitがマウス・ボタン
|
|
|
コメント 0