键帽高度尺寸图及USB协议中HID设备描述符和键值表

2022-10-04 16:29:25 浏览数 (2)

一图顶所有,有需要的直接看图吧。

意外收到了一名网友的打赏,能否留个言。互动一下?

键帽规格

HID设备描述符

按键值

HID Usage ID table 文字速查:

Key

HID Usage

HID Usage ID

Key

HID Usage

HID Usage ID

`(~)

07

35

X

07

1B

1

07

1E

C

07

06

2

07

1F

V

07

19

3

07

20

B

07

05

4

07

21

N

07

11

5

07

22

M

07

10

6

07

23

,(<)

07

36

7

07

24

.(>)

07

37

8

07

25

/(?)

07

38

9

07

26

SHIFT_R

07

E5

0

07

27

CTRL_L

07

E0

-(-)

07

2D

ALT_L

07

E2

=( )

07

2E

SPACE

07

2C

BACK SPACE

07

2A

ALT_R

07

E6

TAB

07

2B

CTRL_R

07

E4

Q

07

14

NUM

07

53

W

07

1A

(7)

07

5F

E

07

08

(4)

07

5C

R

07

15

(1)

07

59

T

07

17

(8)

07

60

Y

07

1C

(5)

07

5D

U

07

18

(2)

07

5A

I

07

0C

(0)

07

62

O

07

12

(*)

07

55

P

07

13

(9)

07

61

[({}

07

2F

(6)

07

5E

]())

07

30

(3)

07

5B

(¦)@1

07

31

(DEL)

07

63

CAPS

07

39

(-)

07

56

A

07

04

( )

07

57

S

07

16

(ENTER)

07

58

D

07

07

ESC

07

29

F

07

09

F1

07

3A

G

07

0A

F2

07

3B

H

07

0B

F3

07

3C

J

07

0D

F4

07

3D

K

07

0E

F5

07

3E

L

07

0F

F6

07

3F

;(:)

07

33

F7

07

40

'(")

07

34

F8

07

41

K42

07

32

F9

07

42

ENTER

07

28

F10

07

43

SHIFT_L

07

E1

F11

07

44

K45

07

64

F12

07

45

Z

07

1D

SCROLL

07

47

INS

07

49

(/)

07

54

DEL

07

4C

PRINT

07

46

LEFT

07

50

PAUSE

07

48

HOME

07

4A

BREAK(PAUSE CTRL)

07

48

END

07

4D

UP

07

52

WWW Back

0C

0224

DOWN

07

51

WWW Forward

0C

0225

PAGE UP

07

4B

WWW stop

0C

0226

PAGE DOWN

07

4E

WWW Refresh

0C

0227

RIGHT

07

4F

WWW Search

0C

0221

WIN_L

07

E3

WWW Favorite

0C

022A

WIN_R

07

E7

WWW Home

0C

0223

APP

07

65

Mail

0C

018A

N-CHG(131)

07

8B

Mute

0C

00E2

CHG(132)

07

8A

Volume

0C

00E9

ROMA(133)

07

88

Volume -

0C

00EA

K14

07

89

Play/Pause

0C

00CD

K56

07

87

Stop

0C

00B7

K107

07

85

PreTrack

0C

00B6

KL

07

91

Nexttrack

0C

00B5

KR

07

90

Media Select

0C

0183

POWER

01

81

My Computer

0C

0194

SLEEP

01

82

Calculator

0C

0192

WAKE UP

01

83

实例

鼠标发送给PC的数据每次4个字节 BYTE1 BYTE2 BYTE3 BYTE4 定义分别是: BYTE1 -- |--bit7: 1 表示 Y 坐标的变化量超出-256 ~ 255的范围,0表示没有溢出 |--bit6: 1 表示 X 坐标的变化量超出-256 ~ 255的范围,0表示没有溢出 |--bit5: Y 坐标变化的符号位,1表示负数,即鼠标向下移动 |--bit4: X 坐标变化的符号位,1表示负数,即鼠标向左移动 |--bit3: 恒为1 |--bit2: 1表示中键按下 |--bit1: 1表示右键按下 |--bit0: 1表示左键按下 BYTE2 -- X坐标变化量,与byte的bit4组成9位符号数,负数表示向左移,正数表右移。用补码表示变化量 BYTE3 -- Y坐标变化量,与byte的bit5组成9位符号数,负数表示向下移,正数表上移。用补码表示变化量 BYTE4 -- 滚轮变化。 由于手上没有USB鼠标,对BYTE1的4-7位没有测试,对于BYTE2 BYTE3做个测试,BYTE1的4-7全为0的时候,BYTE2 BYTE3的正负表示鼠标移动方向

键盘发送给PC的数据每次8个字节 BYTE1 BYTE2 BYTE3 BYTE4 BYTE5 BYTE6 BYTE7 BYTE8 定义分别是: BYTE1 -- |--bit0: Left Control是否按下,按下为1 |--bit1: Left Shift 是否按下,按下为1 |--bit2: Left Alt 是否按下,按下为1 |--bit3: Left GUI 是否按下,按下为1 |--bit4: Right Control是否按下,按下为1 |--bit5: Right Shift 是否按下,按下为1 |--bit6: Right Alt 是否按下,按下为1 |--bit7: Right GUI 是否按下,按下为1 BYTE2 -- 暂不清楚,有的地方说是保留位 BYTE3--BYTE8 -- 这六个为普通按键 键盘经过测试。 例如:键盘发送一帧数据 02 00 0x04 0x05 00 00 00 00 表示同时按下了Left Shift ‘a’ ‘b’三个键

0 人点赞