49 #define USB_HID_SCLASS_NONE 0x00 50 #define USB_HID_SCLASS_BOOT 0x01 57 #define USB_HID_PROTOCOL_NONE 0 58 #define USB_HID_PROTOCOL_KEYB 1 59 #define USB_HID_PROTOCOL_MOUSE 2 66 #define USB_HID_DTYPE_HID 0x21 67 #define USB_HID_DTYPE_REPORT 0x22 68 #define USB_HID_DTYPE_PHYSICAL 0x23 75 #define USBREQ_GET_REPORT 0x01 76 #define USBREQ_GET_IDLE 0x02 77 #define USBREQ_GET_PROTOCOL 0x03 78 #define USBREQ_SET_REPORT 0x09 79 #define USBREQ_SET_IDLE 0x0a 80 #define USBREQ_SET_PROTOCOL 0x0b 87 #define USB_HID_REPORT_IN 0x01 88 #define USB_HID_REPORT_OUTPUT 0x02 89 #define USB_HID_REPORT_FEATURE 0x03 96 #define USB_HID_PROTOCOL_BOOT 0 97 #define USB_HID_PROTOCOL_REPORT 1 104 #define USB_HID_GENERIC_DESKTOP 0x01 105 #define USB_HID_BUTTONS 0x09 106 #define USB_HID_X 0x30 107 #define USB_HID_Y 0x31 108 #define USB_HID_Z 0x32 109 #define USB_HID_RX 0x33 110 #define USB_HID_RY 0x34 111 #define USB_HID_RZ 0x35 113 #define USB_HID_POINTER 0x01 114 #define USB_HID_MOUSE 0x02 115 #define USB_HID_JOYSTICK 0x04 116 #define USB_HID_GAME_PAD 0x05 117 #define USB_HID_KEYBOARD 0x06 119 #define USB_HID_PHYSICAL 0x00 120 #define USB_HID_APPLICATION 0x01 121 #define USB_HID_LOGICAL 0x02 123 #define USB_HID_USAGE_POINTER 0x0109 124 #define USB_HID_USAGE_BUTTONS 0x0509 125 #define USB_HID_USAGE_LEDS 0x0508 126 #define USB_HID_USAGE_KEYCODES 0x0507 134 #define HID_MOUSE_BUTTON_1 0x01 135 #define HID_MOUSE_BUTTON_2 0x02 136 #define HID_MOUSE_BUTTON_3 0x04 144 #define HID_KEYB_NUM_LOCK 0x01 145 #define HID_KEYB_CAPS_LOCK 0x02 146 #define HID_KEYB_SCROLL_LOCK 0x04 147 #define HID_KEYB_COMPOSE 0x08 148 #define HID_KEYB_KANA 0x10 156 #define HID_KEYB_LEFT_CTRL 0x01 157 #define HID_KEYB_LEFT_SHIFT 0x02 158 #define HID_KEYB_LEFT_ALT 0x04 159 #define HID_KEYB_LEFT_GUI 0x08 160 #define HID_KEYB_RIGHT_CTRL 0x10 161 #define HID_KEYB_RIGHT_SHIFT 0x20 162 #define HID_KEYB_RIGHT_ALT 0x40 163 #define HID_KEYB_RIGHT_GUI 0x80 170 #define HID_KEYB_USAGE_RESERVED 0x00 171 #define HID_KEYB_USAGE_ROLLOVER 0x01 172 #define HID_KEYB_USAGE_A 0x04 173 #define HID_KEYB_USAGE_B 0x05 174 #define HID_KEYB_USAGE_C 0x06 175 #define HID_KEYB_USAGE_D 0x07 176 #define HID_KEYB_USAGE_E 0x08 177 #define HID_KEYB_USAGE_F 0x09 178 #define HID_KEYB_USAGE_G 0x0A 179 #define HID_KEYB_USAGE_H 0x0B 180 #define HID_KEYB_USAGE_I 0x0C 181 #define HID_KEYB_USAGE_J 0x0D 182 #define HID_KEYB_USAGE_K 0x0E 183 #define HID_KEYB_USAGE_L 0x0F 184 #define HID_KEYB_USAGE_M 0x10 185 #define HID_KEYB_USAGE_N 0x11 186 #define HID_KEYB_USAGE_O 0x12 187 #define HID_KEYB_USAGE_P 0x13 188 #define HID_KEYB_USAGE_Q 0x14 189 #define HID_KEYB_USAGE_R 0x15 190 #define HID_KEYB_USAGE_S 0x16 191 #define HID_KEYB_USAGE_T 0x17 192 #define HID_KEYB_USAGE_U 0x18 193 #define HID_KEYB_USAGE_V 0x19 194 #define HID_KEYB_USAGE_W 0x1A 195 #define HID_KEYB_USAGE_X 0x1B 196 #define HID_KEYB_USAGE_Y 0x1C 197 #define HID_KEYB_USAGE_Z 0x1D 198 #define HID_KEYB_USAGE_1 0x1E 199 #define HID_KEYB_USAGE_2 0x1F 200 #define HID_KEYB_USAGE_3 0x20 201 #define HID_KEYB_USAGE_4 0x21 202 #define HID_KEYB_USAGE_5 0x22 203 #define HID_KEYB_USAGE_6 0x23 204 #define HID_KEYB_USAGE_7 0x24 205 #define HID_KEYB_USAGE_8 0x25 206 #define HID_KEYB_USAGE_9 0x26 207 #define HID_KEYB_USAGE_0 0x27 208 #define HID_KEYB_USAGE_ENTER 0x28 209 #define HID_KEYB_USAGE_ESCAPE 0x29 210 #define HID_KEYB_USAGE_BACKSPACE \ 212 #define HID_KEYB_USAGE_TAB 0x2B 213 #define HID_KEYB_USAGE_SPACE 0x2C 214 #define HID_KEYB_USAGE_MINUS 0x2D 215 #define HID_KEYB_USAGE_EQUAL 0x2E 216 #define HID_KEYB_USAGE_LBRACKET 0x2F 217 #define HID_KEYB_USAGE_RBRACKET 0x30 218 #define HID_KEYB_USAGE_BSLASH 0x31 219 #define HID_KEYB_USAGE_SEMICOLON \ 221 #define HID_KEYB_USAGE_FQUOTE 0x34 222 #define HID_KEYB_USAGE_BQUOTE 0x35 223 #define HID_KEYB_USAGE_COMMA 0x36 224 #define HID_KEYB_USAGE_PERIOD 0x37 225 #define HID_KEYB_USAGE_FSLASH 0x38 226 #define HID_KEYB_USAGE_CAPSLOCK 0x39 227 #define HID_KEYB_USAGE_F1 0x3A 228 #define HID_KEYB_USAGE_F2 0x3B 229 #define HID_KEYB_USAGE_F3 0x3C 230 #define HID_KEYB_USAGE_F4 0x3D 231 #define HID_KEYB_USAGE_F5 0x3E 232 #define HID_KEYB_USAGE_F6 0x3F 233 #define HID_KEYB_USAGE_F7 0x40 234 #define HID_KEYB_USAGE_F8 0x41 235 #define HID_KEYB_USAGE_F9 0x42 236 #define HID_KEYB_USAGE_F10 0x43 237 #define HID_KEYB_USAGE_F11 0x44 238 #define HID_KEYB_USAGE_F12 0x45 239 #define HID_KEYB_USAGE_SCROLLOCK \ 241 #define HID_KEYB_USAGE_PAGE_UP 0x4B 242 #define HID_KEYB_USAGE_PAGE_DOWN \ 244 #define HID_KEYB_USAGE_RIGHT_ARROW \ 246 #define HID_KEYB_USAGE_LEFT_ARROW \ 248 #define HID_KEYB_USAGE_DOWN_ARROW \ 250 #define HID_KEYB_USAGE_UP_ARROW 0x52 251 #define HID_KEYB_USAGE_NUMLOCK 0x53 252 #define HID_KEYB_USAGE_KEYPAD_SLASH \ 254 #define HID_KEYB_USAGE_KEYPAD_STAR \ 256 #define HID_KEYB_USAGE_KEYPAD_MINUS \ 258 #define HID_KEYB_USAGE_KEYPAD_PLUS \ 260 #define HID_KEYB_USAGE_KEPAD_ENTER \ 262 #define HID_KEYB_USAGE_KEYPAD_1 0x59 263 #define HID_KEYB_USAGE_KEYPAD_2 0x5A 264 #define HID_KEYB_USAGE_KEYPAD_3 0x5B 265 #define HID_KEYB_USAGE_KEYPAD_4 0x5C 266 #define HID_KEYB_USAGE_KEYPAD_5 0x5D 267 #define HID_KEYB_USAGE_KEYPAD_6 0x5E 268 #define HID_KEYB_USAGE_KEYPAD_7 0x5F 269 #define HID_KEYB_USAGE_KEYPAD_8 0x60 270 #define HID_KEYB_USAGE_KEYPAD_9 0x61 271 #define HID_KEYB_USAGE_KEYPAD_0 0x62 272 #define HID_KEYB_USAGE_KEPAD_PERIOD \ 281 #define USB_HID_COUNTRY_NONE 0x00 282 #define USB_HID_COUNTRY_ARABIC 0x01 283 #define USB_HID_COUNTRY_BELGIAN 0x02 284 #define USB_HID_COUNTRY_CANADA_BI \ 286 #define USB_HID_COUNTRY_CANADA_FR \ 288 #define USB_HID_COUNTRY_CZECH_REPUBLIC \ 290 #define USB_HID_COUNTRY_DANISH 0x06 291 #define USB_HID_COUNTRY_FINNISH 0x07 292 #define USB_HID_COUNTRY_FRENCH 0x08 293 #define USB_HID_COUNTRY_GERMAN 0x09 294 #define USB_HID_COUNTRY_GREEK 0x0A 295 #define USB_HID_COUNTRY_HEBREW 0x0B 296 #define USB_HID_COUNTRY_HUNGARY 0x0C 297 #define USB_HID_COUNTRY_INTERNATIONAL_ISO \ 299 #define USB_HID_COUNTRY_ITALIAN 0x0E 300 #define USB_HID_COUNTRY_JAPAN_KATAKANA \ 302 #define USB_HID_COUNTRY_KOREAN 0x10 303 #define USB_HID_COUNTRY_LATIN_AMERICAN \ 305 #define USB_HID_COUNTRY_NETHERLANDS \ 307 #define USB_HID_COUNTRY_NORWEGIAN \ 309 #define USB_HID_COUNTRY_PERSIAN 0x14 310 #define USB_HID_COUNTRY_POLAND 0x15 311 #define USB_HID_COUNTRY_PORTUGUESE \ 313 #define USB_HID_COUNTRY_RUSSIA 0x17 314 #define USB_HID_COUNTRY_SLOVAKIA \ 316 #define USB_HID_COUNTRY_SPANISH 0x19 317 #define USB_HID_COUNTRY_SWEDISH 0x1A 318 #define USB_HID_COUNTRY_SWISS_FRENCH \ 320 #define USB_HID_COUNTRY_SWISS_GERMAN \ 322 #define USB_HID_COUNTRY_SWITZERLAND \ 324 #define USB_HID_COUNTRY_TAIWAN 0x1E 325 #define USB_HID_COUNTRY_TURKISH_Q \ 327 #define USB_HID_COUNTRY_UK 0x20 328 #define USB_HID_COUNTRY_US 0x21 329 #define USB_HID_COUNTRY_YUGOSLAVIA \ 331 #define USB_HID_COUNTRY_TURKISH_F \ 339 #define USB_HID_INPUT_DATA 0x0000 340 #define USB_HID_INPUT_CONSTANT 0x0001 341 #define USB_HID_INPUT_ARRAY 0x0000 342 #define USB_HID_INPUT_VARIABLE 0x0002 343 #define USB_HID_INPUT_ABS 0x0000 344 #define USB_HID_INPUT_RELATIVE 0x0004 345 #define USB_HID_INPUT_NOWRAP 0x0000 346 #define USB_HID_INPUT_WRAP 0x0008 347 #define USB_HID_INPUT_LINEAR 0x0000 348 #define USB_HID_INPUT_NONLINEAR 0x0010 349 #define USB_HID_INPUT_PREFER 0x0000 350 #define USB_HID_INPUT_NONPREFER 0x0020 351 #define USB_HID_INPUT_NONULL 0x0000 352 #define USB_HID_INPUT_NULL 0x0040 353 #define USB_HID_INPUT_BITF 0x0100 354 #define USB_HID_INPUT_BYTES 0x0000 361 #define USB_HID_FEATURE_DATA 0x0000 362 #define USB_HID_FEATURE_CONSTANT \ 364 #define USB_HID_FEATURE_ARRAY 0x0000 365 #define USB_HID_FEATURE_VARIABLE \ 367 #define USB_HID_FEATURE_ABS 0x0000 368 #define USB_HID_FEATURE_RELATIVE \ 370 #define USB_HID_FEATURE_NOWRAP 0x0000 371 #define USB_HID_FEATURE_WRAP 0x0008 372 #define USB_HID_FEATURE_LINEAR 0x0000 373 #define USB_HID_FEATURE_NONLINEAR \ 375 #define USB_HID_FEATURE_PREFER 0x0000 376 #define USB_HID_FEATURE_NONPREFER \ 378 #define USB_HID_FEATURE_NONULL 0x0000 379 #define USB_HID_FEATURE_NULL 0x0040 380 #define USB_HID_FEATURE_BITF 0x0100 381 #define USB_HID_FEATURE_BYTES 0x0000 388 #define USB_HID_OUTPUT_DATA 0x0000 389 #define USB_HID_OUTPUT_CONSTANT 0x0001 390 #define USB_HID_OUTPUT_ARRAY 0x0000 391 #define USB_HID_OUTPUT_VARIABLE 0x0002 392 #define USB_HID_OUTPUT_ABS 0x0000 393 #define USB_HID_OUTPUT_RELATIVE 0x0004 394 #define USB_HID_OUTPUT_NOWRAP 0x0000 395 #define USB_HID_OUTPUT_WRAP 0x0008 396 #define USB_HID_OUTPUT_LINEAR 0x0000 397 #define USB_HID_OUTPUT_NONLINEAR \ 399 #define USB_HID_OUTPUT_PREFER 0x0000 400 #define USB_HID_OUTPUT_NONPREFER \ 402 #define USB_HID_OUTPUT_NONULL 0x0000 403 #define USB_HID_OUTPUT_NULL 0x0040 404 #define USB_HID_OUTPUT_BITF 0x0100 405 #define USB_HID_OUTPUT_BYTES 0x0000 412 #define USB_HID_BIAS_NOT_APPLICABLE \ 414 #define USB_HID_BIAS_RIGHT_HAND 0x01 415 #define USB_HID_BIAS_LEFT_HAND 0x02 416 #define USB_HID_BIAS_BOTH_HANDS 0x03 417 #define USB_HID_BIAS_EITHER_HAND \ 425 #define USB_HID_DESIGNATOR_NONE 0x00 426 #define USB_HID_DESIGNATOR_HAND 0x01 427 #define USB_HID_DESIGNATOR_EYEBALL \ 429 #define USB_HID_DESIGNATOR_EYEBROW \ 431 #define USB_HID_DESIGNATOR_EYELID \ 433 #define USB_HID_DESIGNATOR_EAR 0x05 434 #define USB_HID_DESIGNATOR_NOSE 0x06 435 #define USB_HID_DESIGNATOR_MOUTH \ 437 #define USB_HID_DESIGNATOR_UPPER_LIP \ 439 #define USB_HID_DESIGNATOR_LOWER_LIP \ 441 #define USB_HID_DESIGNATOR_JAW 0x0A 442 #define USB_HID_DESIGNATOR_NECK 0x0B 443 #define USB_HID_DESIGNATOR_UPPER_ARM \ 445 #define USB_HID_DESIGNATOR_ELBOW \ 447 #define USB_HID_DESIGNATOR_FOREARM \ 449 #define USB_HID_DESIGNATOR_WRIST \ 451 #define USB_HID_DESIGNATOR_PALM 0x10 452 #define USB_HID_DESIGNATOR_THUMB \ 454 #define USB_HID_DESIGNATOR_INDEX_FINGER \ 456 #define USB_HID_DESIGNATOR_MIDDLE_FINGER \ 458 #define USB_HID_DESIGNATOR_RING_FINGER \ 460 #define USB_HID_DESIGNATOR_LITTLE_FINGER \ 462 #define USB_HID_DESIGNATOR_HEAD 0x16 463 #define USB_HID_DESIGNATOR_SHOULDER \ 465 #define USB_HID_DESIGNATOR_HIP 0x18 466 #define USB_HID_DESIGNATOR_WAIST \ 468 #define USB_HID_DESIGNATOR_THIGH \ 470 #define USB_HID_DESIGNATOR_KNEE 0x1B 471 #define USB_HID_DESIGNATOR_CALF 0x1C 472 #define USB_HID_DESIGNATOR_ANKLE \ 474 #define USB_HID_DESIGNATOR_FOOT 0x1E 475 #define USB_HID_DESIGNATOR_HEEL 0x1F 476 #define USB_HID_DESIGNATOR_BALL_OF_FOOT \ 478 #define USB_HID_DESIGNATOR_BIG_TOE \ 480 #define USB_HID_DESIGNATOR_SECOND_TOE \ 482 #define USB_HID_DESIGNATOR_THIRD_TOE \ 484 #define USB_HID_DESIGNATOR_FOURTH_TOE \ 486 #define USB_HID_DESIGNATOR_LITTLE_TOE \ 488 #define USB_HID_DESIGNATOR_BROW 0x26 489 #define USB_HID_DESIGNATOR_CHEEK \ 497 #define USB_HID_QUALIFIER_NOT_APPLICABLE \ 499 #define USB_HID_QUALIFIER_RIGHT (0x01 << 5) 500 #define USB_HID_QUALIFIER_LEFT (0x02 << 5) 501 #define USB_HID_QUALIFIER_BOTH (0x03 << 5) 502 #define USB_HID_QUALIFIER_EITHER \ 504 #define USB_HID_QUALIFIER_CENTER \ 512 #define USBH_HID_MAX_USAGE 256 513 #define USBH_HID_CAPS_ARRAY_SZ (USBH_HID_MAX_USAGE/sizeof(uint32_t)) 538 uint8_t bDescriptorType;
545 PACKED tHIDClassDescriptorInfo;
564 uint8_t bDescriptorType;
592 tHIDClassDescriptorInfo sClassDescriptor[1];
665 #endif // __USBHID_H__ const tHIDKeyboardUsageTable g_sUSKeyboardMap
Definition: usbkeyboardmap.c:120
uint16_t bcdHID
Definition: usbhid.h:571
uint8_t bNumDescriptors
Definition: usbhid.h:585
uint8_t bCountryCode
Definition: usbhid.h:577
uint16_t wDescriptorLength
The total length of the HID class descriptor.
Definition: usbhid.h:543
void * pvCharMapping
Definition: usbhid.h:638
uint8_t ui8BytesPerChar
Definition: usbhid.h:624
#define USBH_HID_CAPS_ARRAY_SZ
Definition: usbhid.h:513
USB_CDC_GET/SET_LINE_CODING request-specific data.
Definition: usbaudio.h:288