hid_usage_keyboard.h 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. /* This file is the part of the LUS32 project
  2. *
  3. * Copyright ©2016 Dmitry Filimonchuk <dmitrystu[at]gmail[dot]com>
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License");
  6. * you may not use this file except in compliance with the License.
  7. * You may obtain a copy of the License at
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. * Unless required by applicable law or agreed to in writing, software
  10. * distributed under the License is distributed on an "AS IS" BASIS,
  11. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. * See the License for the specific language governing permissions and
  13. * limitations under the License.
  14. */
  15. #ifndef _USB_HID_USAGE_KEYBOARD_H_
  16. #define _USB_HID_USAGE_KEYBOARD_H_
  17. /**\ingroup USB_HID
  18. * \addtogroup ISB_HID_USAGES_KEYBOARD HID Usages for Keyboard
  19. * \brief Contains USB HID Usages definitions for Keyboard/Keypad Page
  20. * \details This module based on
  21. * + [HID Usage Tables Version 1.12](http://www.usb.org/developers/hidpage/Hut1_12v2.pdf)
  22. * @{ */
  23. #define HID_PAGE_KEYBOARD 0x07
  24. #define HID_KEYBOARD_ERR_ROLL_OVER 0x01
  25. #define HID_KEYBOARD_POST_FAIL 0x02
  26. #define HID_KEYBOARD_ERR_UNDEFINED 0x03
  27. #define HID_KEYBOARD_A 0x04
  28. #define HID_KEYBOARD_B 0x05
  29. #define HID_KEYBOARD_C 0x06
  30. #define HID_KEYBOARD_D 0x07
  31. #define HID_KEYBOARD_E 0x08
  32. #define HID_KEYBOARD_F 0x09
  33. #define HID_KEYBOARD_G 0x0A
  34. #define HID_KEYBOARD_H 0x0B
  35. #define HID_KEYBOARD_I 0x0C
  36. #define HID_KEYBOARD_J 0x0D
  37. #define HID_KEYBOARD_K 0x0E
  38. #define HID_KEYBOARD_L 0x0F
  39. #define HID_KEYBOARD_M 0x10
  40. #define HID_KEYBOARD_N 0x11
  41. #define HID_KEYBOARD_O 0x12
  42. #define HID_KEYBOARD_P 0x13
  43. #define HID_KEYBOARD_Q 0x14
  44. #define HID_KEYBOARD_R 0x15
  45. #define HID_KEYBOARD_S 0x16
  46. #define HID_KEYBOARD_T 0x17
  47. #define HID_KEYBOARD_U 0x18
  48. #define HID_KEYBOARD_V 0x19
  49. #define HID_KEYBOARD_W 0x1A
  50. #define HID_KEYBOARD_X 0x1B
  51. #define HID_KEYBOARD_Y 0x1C
  52. #define HID_KEYBOARD_Z 0x1D
  53. #define HID_KEYBOARD_1 0x1E
  54. #define HID_KEYBOARD_2 0x1F
  55. #define HID_KEYBOARD_3 0x20
  56. #define HID_KEYBOARD_4 0x21
  57. #define HID_KEYBOARD_5 0x22
  58. #define HID_KEYBOARD_6 0x23
  59. #define HID_KEYBOARD_7 0x24
  60. #define HID_KEYBOARD_8 0x25
  61. #define HID_KEYBOARD_9 0x26
  62. #define HID_KEYBOARD_0 0x27
  63. #define HID_KEYBOARD_RETURN 0x28
  64. #define HID_KEYBOARD_ESCAPE 0x29
  65. #define HID_KEYBOARD_DELETE 0x2A
  66. #define HID_KEYBOARD_TAB 0x2B
  67. #define HID_KEYBOARD_SPACEBAR 0x2C
  68. #define HID_KEYBOARD_MINUS 0x2D
  69. #define HID_KEYBOARD_EQUAL_SIGN 0x2E
  70. #define HID_KEYBOARD_OPEN_BRACKET 0x2F
  71. #define HID_KEYBOARD_CLOSE_BRACKET 0x30
  72. #define HID_KEYBOARD_BACKSLASH 0x31
  73. #define HID_KEYBOARD_NONUS_HASH 0x32
  74. #define HID_KEYBOARD_SEMICOLON 0x33
  75. #define HID_KEYBOARD_APOSTROPHE 0x34
  76. #define HID_KEYBOARD_GRAVE_ACCENT 0x35
  77. #define HID_KEYBOARD_COLON 0x36
  78. #define HID_KEYBOARD_DOT 0x37
  79. #define HID_KEYBOARD_SLASH 0x38
  80. #define HID_KEYBOARD_CAPS_LOCK 0x39
  81. #define HID_KEYBOARD_F1 0x3A
  82. #define HID_KEYBOARD_F2 0x3B
  83. #define HID_KEYBOARD_F3 0x3C
  84. #define HID_KEYBOARD_F4 0x3D
  85. #define HID_KEYBOARD_F5 0x3E
  86. #define HID_KEYBOARD_F6 0x3F
  87. #define HID_KEYBOARD_F7 0x40
  88. #define HID_KEYBOARD_F8 0x41
  89. #define HID_KEYBOARD_F9 0x42
  90. #define HID_KEYBOARD_F10 0x43
  91. #define HID_KEYBOARD_F11 0x44
  92. #define HID_KEYBOARD_F12 0x45
  93. #define HID_KEYBOARD_PRINT_SCREEN 0x46
  94. #define HID_KEYBOARD_SCROLL_LOCK 0x47
  95. #define HID_KEYBOARD_PAUSE 0x48
  96. #define HID_KEYBOARD_INSERT 0x49
  97. #define HID_KEYBOARD_HOME 0x4A
  98. #define HID_KEYBOARD_PAGE_UP 0x4B
  99. #define HID_KEYBOARD_DELETE_FORWARD 0x4C
  100. #define HID_KEYBOARD_END 0x4D
  101. #define HID_KEYBOARD_PAGE_DOWN 0x4E
  102. #define HID_KEYBOARD_RIGHT_ARROW 0x4F
  103. #define HID_KEYBOARD_LEFT_ARROW 0x50
  104. #define HID_KEYBOARD_DOWN_ARROW 0x51
  105. #define HID_KEYBOARD_UP_ARROW 0x52
  106. #define HID_KEYPAD_NUMLOCK 0x53
  107. #define HID_KEYPAD_SLASH 0x54
  108. #define HID_KEYPAD_ASTERISK 0x55
  109. #define HID_KEYPAD_MINUS 0x56
  110. #define HID_KEYPAD_PLUS 0x57
  111. #define HID_KEYPAD_ENTER 0x58
  112. #define HID_KEYPAD_1 0x59
  113. #define HID_KEYPAD_2 0x5A
  114. #define HID_KEYPAD_3 0x5B
  115. #define HID_KEYPAD_4 0x5C
  116. #define HID_KEYPAD_5 0x5D
  117. #define HID_KEYPAD_6 0x5E
  118. #define HID_KEYPAD_7 0x5F
  119. #define HID_KEYPAD_8 0x60
  120. #define HID_KEYPAD_9 0x61
  121. #define HID_KEYPAD_0 0x62
  122. #define HID_KEYPAD_DOT 0x63
  123. #define HID_KEYBOARD_NONUS_BACKSLASH 0x64
  124. #define HID_KEYBOARD_APPLICATION 0x65
  125. #define HID_KEYBOARD_POWER 0x66
  126. #define HID_KEYPAD_EQUAL 0x67
  127. #define HID_KEYBOARD_F13 0x68
  128. #define HID_KEYBOARD_F14 0x69
  129. #define HID_KEYBOARD_F15 0x6A
  130. #define HID_KEYBOARD_F16 0x6B
  131. #define HID_KEYBOARD_F17 0x6C
  132. #define HID_KEYBOARD_F18 0x6D
  133. #define HID_KEYBOARD_F19 0x6E
  134. #define HID_KEYBOARD_F20 0x6F
  135. #define HID_KEYBOARD_F21 0x70
  136. #define HID_KEYBOARD_F22 0x71
  137. #define HID_KEYBOARD_F23 0x72
  138. #define HID_KEYBOARD_F24 0x73
  139. #define HID_KEYBOARD_EXECUTE 0x74
  140. #define HID_KEYBOARD_HELP 0x75
  141. #define HID_KEYBOARD_MENU 0x76
  142. #define HID_KEYBOARD_SELECT 0x77
  143. #define HID_KEYBOARD_STOP 0x78
  144. #define HID_KEYBOARD_AGAIN 0x79
  145. #define HID_KEYBOARD_UNDO 0x7A
  146. #define HID_KEYBOARD_CUT 0x7B
  147. #define HID_KEYBOARD_COPY 0x7C
  148. #define HID_KEYBOARD_PASTE 0x7D
  149. #define HID_KEYBOARD_FIND 0x7E
  150. #define HID_KEYBOARD_MUTE 0x7F
  151. #define HID_KEYBOARD_VOLUME_UP 0x80
  152. #define HID_KEYBOARD_VOLUME_DOWN 0x81
  153. #define HID_KEYBOARD_LOCK_CAPS_LOCK 0x82
  154. #define HID_KEYBOARD_LOCK_NUM_LOCK 0x83
  155. #define HID_KEYBOARD_LOCK_SCROLL_LOCK 0x84
  156. #define HID_KEYPAD_COMMA 0x85
  157. #define HID_KEYPAD_EQUAL_SIGN 0x86
  158. #define HID_KEYBOARD_INTERNATIONAL_1 0x87
  159. #define HID_KEYBOARD_INTERNATIONAL_2 0x88
  160. #define HID_KEYBOARD_INTERNATIONAL_3 0x89
  161. #define HID_KEYBOARD_INTERNATIONAL_4 0x8A
  162. #define HID_KEYBOARD_INTERNATIONAL_5 0x8B
  163. #define HID_KEYBOARD_INTERNATIONAL_6 0x8C
  164. #define HID_KEYBOARD_INTERNATIONAL_7 0x8D
  165. #define HID_KEYBOARD_INTERNATIONAL_8 0x8E
  166. #define HID_KEYBOARD_INTERNATIONAL_9 0x8F
  167. #define HID_KEYBOARD_LANG_1 0x90
  168. #define HID_KEYBOARD_LANG_2 0x91
  169. #define HID_KEYBOARD_LANG_3 0x92
  170. #define HID_KEYBOARD_LANG_4 0x93
  171. #define HID_KEYBOARD_LANG_5 0x94
  172. #define HID_KEYBOARD_LANG_6 0x95
  173. #define HID_KEYBOARD_LANG_7 0x96
  174. #define HID_KEYBOARD_LANG_8 0x97
  175. #define HID_KEYBOARD_LANG_9 0x98
  176. #define HID_KEYBOARD_ALTERNATE_ERASE 0x99
  177. #define HID_KEYBOARD_SYSREQ 0x9A
  178. #define HID_KEYBOARD_CANCEL 0x9B
  179. #define HID_KEYBOARD_CLEAR 0x9C
  180. #define HID_KEYBOARD_PRIOR 0x9D
  181. #define HID_KEYBOARD_RETURN_1 0x9E
  182. #define HID_KEYBOARD_SEPARATOR 0x9F
  183. #define HID_KEYBOARD_OUT 0xA0
  184. #define HID_KEYBOARD_OPER 0xA1
  185. #define HID_KEYBOARD_CLEAR_AGAIN 0xA2
  186. #define HID_KEYBOARD_CRSEL_PROPS 0xA3
  187. #define HID_KEYBOARD_EXSEL 0xA4
  188. #define HID_KEYPAD_00 0xB0
  189. #define HID_KEYPAD_000 0xB1
  190. #define HID_KEYPAD_OPEN_PARENTHESIS 0xB6
  191. #define HID_KEYPAD_CLOSE_PARENTHESIS 0xB7
  192. #define HID_KEYPAD_OPEN_BRACE 0xB8
  193. #define HID_KEYPAD_CLOSE_BRACE 0xB9
  194. #define HID_KEYPAD_TAB 0xBA
  195. #define HID_KEYPAD_BACKSPACE 0xBB
  196. #define HID_KEYPAD_A 0xBC
  197. #define HID_KEYPAD_B 0xBD
  198. #define HID_KEYPAD_C 0xBE
  199. #define HID_KEYPAD_D 0xBF
  200. #define HID_KEYPAD_E 0xC0
  201. #define HID_KEYPAD_F 0xC1
  202. #define HID_KEYPAD_XOR 0xC2
  203. #define HID_KEYPAD_CARET 0xC3
  204. #define HID_KEYPAD_PERCENT 0xC4
  205. #define HID_KEYPAD_LESS_THEN 0xC5
  206. #define HID_KEYPAD_GREATER_THEN 0xC6
  207. #define HID_KEYPAD_AMPERSAND 0xC7
  208. #define HID_KEYPAD_DOUBLE_AMPERSAND 0xC8
  209. #define HID_KEYPAD_PIPE 0xC9
  210. #define HID_KEYPAD_DOUBLE_PIPE 0xCA
  211. #define HID_KEYPAD_COLON 0xCB
  212. #define HID_KEYPAD_HASH 0xCC
  213. #define HID_KEYPAD_SPACE 0xCD
  214. #define HID_KEYPAD_AT 0xCE
  215. #define HID_KEYPAD_BANG 0xCF
  216. #define HID_KEYPAD_MEM_STORE 0xD0
  217. #define HID_KEYPAD_MEM_RECALL 0xD1
  218. #define HID_KEYPAD_MEM_CLEAR 0xD2
  219. #define HID_KEYPAD_MEM_ADD 0xD3
  220. #define HID_KEYPAD_MEM_SUBTRACT 0xD4
  221. #define HID_KEYPAD_MEM_MULTIPLY 0xD5
  222. #define HID_KEYPAD_MEM_DIVIDE 0xD6
  223. #define HID_KEYPAD_PLUS_MINUS 0xD7
  224. #define HID_KEYPAD_CLEAR 0xD8
  225. #define HID_KEYPAD_CLEAR_ENTRY 0xD9
  226. #define HID_KEYPAD_BINARY 0xDA
  227. #define HID_KEYPAD_OCTAL 0xDB
  228. #define HID_KEYPAD_DECIMAL 0xDC
  229. #define HID_KEYPAD_HEXADECIMAL 0xDD
  230. #define HID_KEYBOARD_L_CTRL 0xE0
  231. #define HID_KEYBOARD_L_SHIFT 0xE1
  232. #define HID_KEYBOARD_L_ALT 0xE2
  233. #define HID_KEYBOARD_L_GUI 0xE3
  234. #define HID_KEYBOARD_R_CTRL 0xE4
  235. #define HID_KEYBOARD_R_SHIFT 0xE5
  236. #define HID_KEYBOARD_R_ALT 0xE6
  237. #define HID_KEYBOARD_R_GUI 0xE7
  238. /** @} */
  239. #endif