gpt4 book ai didi

usb - 自定义 HID 设备 HID 报告描述符

转载 作者:行者123 更新时间:2023-12-03 14:39:06 27 4
gpt4 key购买 nike

我在生成 HID 描述符时遇到了一些问题。
我想使用简单的报告,ID1 用于输入,ID2 用于输出 64 字节数据。

我意识到尽管 RTFMing 和谷歌搜索,我仍然不知道 HID 描述符中的某些字段。

什么是可以找到所有描述符字段含义的提示或手册?我能找到的只是 HID 鼠标、操纵杆和键盘的示例。

例如 - REPORT_SIZE - 它的大小是字节还是位?为什么还有 REPORT_COUNT?
如果报告中有 64 个字节,LOGICAL_MAXIMUM 必须是 255 还是 255*64?

我是否应该为每个报告写 LOGICAL_MAX 和 MIN?

或者也许这个(通过猜测产生)就足够了?

char ReportDescriptor[39] = {
0x05, 0x01, // USAGE_PAGE (Generic Desktop)
0x09, 0x00, // USAGE (Undefined)
0xa1, 0x01, // COLLECTION (Application)
0x85, 0x01, // REPORT_ID (1)
0x09, 0x00, // USAGE (Undefined)
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x26, 0xff, 0x00, // LOGICAL_MAXIMUM (255)
0x75, 0x40, // REPORT_SIZE (64)
0x96, 0x00, 0x02, // REPORT_COUNT (512)
0x81, 0x82, // INPUT (Data,Var,Abs,Vol)
0x85, 0x02, // REPORT_ID (2)
0x09, 0x00, // USAGE (Undefined)
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x26, 0xff, 0x00, // LOGICAL_MAXIMUM (255)
0x75, 0x40, // REPORT_SIZE (64)
0x96, 0x00, 0x02, // REPORT_COUNT (512)
0x91, 0x82, // OUTPUT (Data,Var,Abs,Vol)
0xc0 // END_COLLECTION
};

最佳答案

我已经让 Windows 7 检测到我的自定义 HID 设备(通过猜测构建并从示例中窃取):

{
0x05, 0x01, // USAGE_PAGE (Generic Desktop)
0x09, 0x00, // USAGE (Undefined)
0xa1, 0x01, // COLLECTION (Application)
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x26, 0xff, 0x00, // LOGICAL_MAXIMUM (255)
0x85, 0x01, // REPORT_ID (1)
0x75, 0x08, // REPORT_SIZE (8)
0x95, 0x40, // REPORT_COUNT (64)
0x09, 0x00, // USAGE (Undefined)
0x81, 0x82, // INPUT (Data,Var,Abs,Vol) - to the host
0x85, 0x02, // REPORT_ID (2)
0x75, 0x08, // REPORT_SIZE (8)
0x95, 0x40, // REPORT_COUNT (64)
0x09, 0x00, // USAGE (Undefined)
0x91, 0x82, // OUTPUT (Data,Var,Abs,Vol) - from the host
0xc0 // END_COLLECTION
}; /* CustomHID_ReportDescriptor */

我不确定它是否会正常工作。我们会看到。

关于usb - 自定义 HID 设备 HID 报告描述符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21606991/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com