簡體   English   中英

USB HID 鍵碼(鍵盤)

[英]USB HID keycodes (keyboard)

我正在嘗試在微控制器上實現筆記本電腦鍵盤。 我找不到某些 fn 按鈕的 usb 代碼。 usb 協議對更改顯示亮度、音量、媒體鍵的組合進行了描述,但還需要更多。 誰能告訴我在哪里可以找到禁用觸摸板或啟用飛行模式的 usb 代碼?

現在這是我的描述符。

  0x05, 0x01,                    //   USAGE_PAGE (Generic Desktop)
            0x09, 0x06,                    //   USAGE (Keyboard)
            0xa1, 0x01,                    //   COLLECTION (Application)
            0x85, 0x01,                    //   Report ID (1)
            0x05, 0x07,                    //   USAGE_PAGE (Keyboard)
            0x19, 0xe0,                    //   USAGE_MINIMUM (Keyboard LeftControl)
            0x29, 0xe7,                    //   USAGE_MAXIMUM (Keyboard Right GUI)
            0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
            0x25, 0x01,                    //   LOGICAL_MAXIMUM (1)
            0x75, 0x01,                    //   REPORT_SIZE (1)
            0x95, 0x08,                    //   REPORT_COUNT (8)
            0x81, 0x02,                    //   INPUT (Data,Var,Abs)
            0x95, 0x01,                    //   REPORT_COUNT (1)
            0x75, 0x08,                    //   REPORT_SIZE (8)
            0x81, 0x03,                    //   INPUT (Cnst,Var,Abs)
            0x95, 0x05,                    //   REPORT_COUNT (5)
            0x75, 0x01,                    //   REPORT_SIZE (1)
            0x05, 0x08,                    //   USAGE_PAGE (LEDs)
            0x19, 0x01,                    //   USAGE_MINIMUM (Num Lock)
            0x29, 0x05,                    //   USAGE_MAXIMUM (Kana)
            0x91, 0x02,                    //   OUTPUT (Data,Var,Abs)
            0x95, 0x01,                    //   REPORT_COUNT (1)
            0x75, 0x03,                    //   REPORT_SIZE (3)
            0x91, 0x03,                    //   OUTPUT (Cnst,Var,Abs)
            0x95, 0x06,                    //   REPORT_COUNT (6)
            0x75, 0x08,                    //   REPORT_SIZE (8)
            0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
            0x25, 0x65,                    //   LOGICAL_MAXIMUM (101)
            0x05, 0x07,                    //   USAGE_PAGE (Keyboard)
            0x19, 0x00,                    //   USAGE_MINIMUM (Reserved (no event indicated))
            0x29, 0x65,                    //   USAGE_MAXIMUM (Keyboard Application)
            0x81, 0x00,                    //   INPUT (Data,Ary,Abs)
            0xc0,                          //   END_COLLECTION 65
            0x05, 0x0C,                    //   Usage Page (Consumer)
            0x09, 0x01,                    //   Usage (Consumer Control)
            0xA1, 0x01,                    //   Collection (Application)
            0x85, 0x02,                    //   Report ID (2)
            0x05, 0x0C,                    //   Usage Page (Consumer)
            0x15, 0x00,                    //   Logical Minimum (0)
            0x25, 0x01,                    //   Logical Maximum (1)
            0x75, 0x01,                    //   Report Size (1)
            0x95, 0x08,                    //   Report Count (8)
            0x09, 0x6F,                    //   Brightness Increment
            0x09, 0x70,                    //   Brightness Decrement
            0x09, 0xB8,                    //   Usage (Eject)
            0x09, 0xCD,                    //   Usage (Play/Pause)
            0x09, 0xE2,                    //   Usage (Mute)
            0x09, 0xE9,                    //   Usage (Volume Increment)
            0x09, 0xEA,                    //   Usage (Volume Decrement)
            0x81, 0x02,                    //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
            0xC0,                          //   End Collection

我在無線控制部分找到了切換飛行模式的方法,這里有一個描述符。 仍然找不到禁用觸摸板的方法。

            0x05, 0x01,                    //   USAGE_PAGE (Generic Desktop)
            0x09, 0x0C,                    //   USAGE (Wireless Radio Controls)
            0xA1, 0x01,                    //   COLLECTION (Application)
            0x85, 0x03,                    //   Report ID (3)
            0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
            0x25, 0x01,                    //   LOGICAL_MAXIMUM (1)
            0x09, 0xC6,                    //   USAGE (Wireless Radio Button)
            0x95, 0x01,                    //   REPORT_COUNT (1
            0x75, 0x01,                    //   REPORT_SIZE (1)
            0x81, 0x06,                    //   INPUT (Data,Var,Rel)
            0x75, 0x07,                    //   REPORT_SIZE (7
            0x81, 0x03,                    //   INPUT (Cnst,Var,Abs)
            0xC0,                          //   END_COLLECTION

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM