HID 描述符 基本含义

http://eleccelerator.com/tutorial-about-usb-hid-report-descriptors/

1. Item

Report descriptors 是由 item 组合起来的, item 有多种类型

2. usage_page与 usage

在一个描述符中,首先要设置一个 Usage_page, 然后某些的usage才能被设置. 在官方文档中鼠标的例子中, 首先设置USAGE_PAGE (Generic Desktop), 然后才能使用 USAGE (Mouse). 当设置了 USAGE_PAGE (Button),然后才能使用USAGE_MINIMUM and USAGE_MAXIMUM指定不同的button,USAGE_PAGE就像一个命名空间,规定了其中哪些 USAGE 可以使用

3. collections

Collections用来组合你的数据, 相当于多个 usage page 的集合,一个collection并不对应 一条report, 只有 Input, Output, Feature

4. Report ID

被用来区分同一终端发不出的不同的 report, 当Report descriptors中有多个collection时,每一个 collection 前都要加一个report id用以区分

5. Logical Minimum 与 Logical Maximum

用来定义变量范围, 0~1 可以代表开关, -127-128 可以代表坐标范围

6. Usage Minimum 与 Usage Maximum

定义和一个数组关联的 Usage 的起始和末尾, 比如
USAGE_PAGE (Button)
USAGE_MINIMUM (1)
USAGE_MAXIMUM (3)
用来表示三个 button

7. Input、Output、Feature

8. report size 与 report count

Report size 一个usage使用几个bit
Report count 连续几个 usage

你可能感兴趣的:(HID 描述符 基本含义)