HID(Human Interface Device)报告描述符是USB设备描述符的一种,用于定义人机接口设备(如键盘、鼠标、游戏手柄等)与主机之间的通信方式和数据格式。Report Descriptor包含了设备的所有输入、输出和特征报告的详细信息。
以下是一个简单的HID报告描述符示例,定义了一个具有两个按键的键盘设备:
const unsigned char hid_report_descriptor[] = {
0x05, 0x01, // USAGE_PAGE (Generic Desktop)
0x09, 0x06, // USAGE (Keyboard)
0xa1, 0x01, // COLLECTION (Application)
0x05, 0x07, // USAGE_PAGE (Keyboard)
0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl)
0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI)
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x25, 0x01, // LOGICAL_MAXIMUM (1)
0x75, 0x01, // REPORT_SIZE (1)
0x95, 0x02, // REPORT_COUNT (2)
0x81, 0x02, // INPUT (Data,Var,Abs)
0x95, 0x01, // REPORT_COUNT (1)
0x75, 0x08, // REPORT_SIZE (8)
0x81, 0x03, // INPUT (Cnst,Var,Abs)
0xc0 // END_COLLECTION
};
通过以上信息,您可以更好地理解HID报告描述符中的Report ID及其相关概念和应用。
领取专属 10元无门槛券
手把手带您无忧上云