00001
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 #ifndef _USB_COMMUN_HID_H_
00042 #define _USB_COMMUN_HID_H_
00043
00044
00047 #define HID_CLASS 0x03
00048 #define HID_SUB_CLASS_BOOT 0x01
00049 #define HID_PROTOCOL_KEYBOARD 0x01
00050 #define HID_PROTOCOL_MOUSE 0x02
00051
00052
00053
00056 #define SETUP_HID_GET_REPORT 0x01
00057 #define SETUP_HID_GET_IDLE 0x02
00058 #define SETUP_HID_GET_PROTOCOL 0x03
00059 #define SETUP_HID_SET_REPORT 0x09
00060 #define SETUP_HID_SET_IDLE 0x0A
00061 #define SETUP_HID_SET_PROTOCOL 0x0B
00062
00065 #define DESCRIPTOR_HID 0x21
00066 #define DESCRIPTOR_REPORT 0x22
00067 #define DESCRIPTOR_PHYSICAL 0x23
00069
00072 #define REPORT_TYPE_INPUT 0x01
00073 #define REPORT_TYPE_OUTPUT 0x02
00074 #define REPORT_TYPE_FEATURE 0x03
00076
00079 #define HID_BDC 0x0111
00080 #define HID_CLASS_DESC_NB_DEFAULT 0x01
00081
00084 #define HID_NO_COUNTRY_CODE 0 // Not Supported
00085 #define HID_COUNTRY_ARABIC 1 // Arabic
00086 #define HID_COUNTRY_BELGIAN 2 // Belgian
00087 #define HID_COUNTRY_CANADIAN_BILINGUAL 3 // Canadian-Bilingual
00088 #define HID_COUNTRY_CANADIAN_FRENCH 4 // Canadian-French
00089 #define HID_COUNTRY_CZECH_REPUBLIC 5 // Czech Republic
00090 #define HID_COUNTRY_DANISH 6 // Danish
00091 #define HID_COUNTRY_FINNISH 7 // Finnish
00092 #define HID_COUNTRY_FRENCH 8 // French
00093 #define HID_COUNTRY_GERMAN 9 // German
00094 #define HID_COUNTRY_GREEK 10 // Greek
00095 #define HID_COUNTRY_HEBREW 11 // Hebrew
00096 #define HID_COUNTRY_HUNGARY 12 // Hungary
00097 #define HID_COUNTRY_INTERNATIONAL_ISO 13 // International (ISO)
00098 #define HID_COUNTRY_ITALIAN 14 // Italian
00099 #define HID_COUNTRY_JAPAN_KATAKANA 15 // Japan (Katakana)
00100 #define HID_COUNTRY_KOREAN 16 // Korean
00101 #define HID_COUNTRY_LATIN_AMERICAN 17 // Latin American
00102 #define HID_COUNTRY_NETHERLANDS_DUTCH 18 // Netherlands/Dutch
00103 #define HID_COUNTRY_NORWEGIAN 19 // Norwegian
00104 #define HID_COUNTRY_PERSIAN_FARSI 20 // Persian (Farsi)
00105 #define HID_COUNTRY_POLAND 21 // Poland
00106 #define HID_COUNTRY_PORTUGUESE 22 // Portuguese
00107 #define HID_COUNTRY_RUSSIA 23 // Russia
00108 #define HID_COUNTRY_SLOVAKIA 24 // Slovakia
00109 #define HID_COUNTRY_SPANISH 25 // Spanish
00110 #define HID_COUNTRY_SWEDISH 26 // Swedish
00111 #define HID_COUNTRY_SWISS_FRENCH 27 // Swiss/French
00112 #define HID_COUNTRY_SWISS_GERMAN 28 // Swiss/German
00113 #define HID_COUNTRY_SWITZERLAND 29 // Switzerland
00114 #define HID_COUNTRY_TAIWAN 30 // Taiwan
00115 #define HID_COUNTRY_TURKISH_Q 31 // Turkish-Q
00116 #define HID_COUNTRY_UK 32 // UK
00117 #define HID_COUNTRY_US 33 // US
00118 #define HID_COUNTRY_YUGOSLAVIA 34 // Yugoslavia
00119 #define HID_COUNTRY_TURKISH_F 35 // Turkish-F
00123
00124
00127 #define HID_A 4
00128 #define HID_B 5
00129 #define HID_C 6
00130 #define HID_D 7
00131 #define HID_E 8
00132 #define HID_F 9
00133 #define HID_G 10
00134 #define HID_H 11
00135 #define HID_I 12
00136 #define HID_J 13
00137 #define HID_K 14
00138 #define HID_L 15
00139 #define HID_M 16
00140 #define HID_N 17
00141 #define HID_O 18
00142 #define HID_P 19
00143 #define HID_Q 20
00144 #define HID_R 21
00145 #define HID_S 22
00146 #define HID_T 23
00147 #define HID_U 24
00148 #define HID_V 25
00149 #define HID_W 26
00150 #define HID_X 27
00151 #define HID_Y 28
00152 #define HID_Z 29
00153 #define HID_1 30
00154 #define HID_2 31
00155 #define HID_3 32
00156 #define HID_4 33
00157 #define HID_5 34
00158 #define HID_6 35
00159 #define HID_7 36
00160 #define HID_8 37
00161 #define HID_9 38
00162 #define HID_0 39
00163 #define HID_ENTER 40
00164 #define HID_ESCAPE 41
00165 #define HID_BACKSPACE 42
00166 #define HID_TAB 43
00167 #define HID_SPACEBAR 44
00168 #define HID_UNDERSCORE 45
00169 #define HID_PLUS 46
00170
00171
00172
00173
00174 #define HID_BACKSLASH 49
00175
00176
00177
00178
00179
00180 #define HID_TILDE 53
00181 #define HID_COMMA 54
00182 #define HID_DOT 55
00183 #define HID_SLASH 56
00184 #define HID_CAPS LOCK 57
00185 #define HID_F1 58
00186 #define HID_F2 59
00187 #define HID_F3 60
00188 #define HID_F4 61
00189 #define HID_F5 62
00190 #define HID_F6 63
00191 #define HID_F7 64
00192 #define HID_F8 65
00193 #define HID_F9 66
00194 #define HID_F10 67
00195 #define HID_F11 68
00196 #define HID_F12 69
00197 #define HID_PRINTSCREEN 70
00198 #define HID_SCROLL LOCK 71
00199 #define HID_PAUSE 72
00200 #define HID_INSERT 73
00201 #define HID_HOME 74
00202 #define HID_PAGEUP 75
00203 #define HID_DELETE 76
00204 #define HID_END 77
00205 #define HID_PAGEDOWN 78
00206 #define HID_RIGHT 79
00207 #define HID_LEFT 80
00208 #define HID_DOWN 81
00209 #define HID_UP 82
00210 #define HID_KEYPAD_NUM_LOCK 83
00211 #define HID_KEYPAD_DIVIDE 84
00212 #define HID_KEYPAD_AT 85
00213 #define HID_KEYPAD_MULTIPLY 85
00214 #define HID_KEYPAD_MINUS 86
00215 #define HID_KEYPAD_PLUS 87
00216 #define HID_KEYPAD_ENTER 88
00217 #define HID_KEYPAD_1 89
00218 #define HID_KEYPAD_2 90
00219 #define HID_KEYPAD_3 91
00220 #define HID_KEYPAD_4 92
00221 #define HID_KEYPAD_5 93
00222 #define HID_KEYPAD_6 94
00223 #define HID_KEYPAD_7 95
00224 #define HID_KEYPAD_8 96
00225 #define HID_KEYPAD_9 97
00226 #define HID_KEYPAD_0 98
00227
00230 #define HID_MODIFIER_NONE 0x00
00231 #define HID_MODIFIER_LEFT_CTRL 0x01
00232 #define HID_MODIFIER_LEFT_SHIFT 0x02
00233 #define HID_MODIFIER_LEFT_ALT 0x04
00234 #define HID_MODIFIER_LEFT_GUI 0x08
00235 #define HID_MODIFIER_RIGHT_CTRL 0x10
00236 #define HID_MODIFIER_RIGHT_SHIFT 0x20
00237 #define HID_MODIFIER_RIGHT_ALT 0x40
00238 #define HID_MODIFIER_RIGHT_GUI 0x80
00241
00242
00243 #endif // _USB_COMMUN_HID_H_
00244