- 打卡等级:偶尔看看I
- 打卡总天数:10
- 最近打卡:2026-03-21 14:26:05
已绑定手机
新手上路
- 积分
- 28
|
我现在需要一个USBkeybord传输字符,同时也需要通过HID控制通讯用于参数配置。
基于62-基于HID协议的USB键盘范例 和 60-HID(Human Interface Device)协议范例 我想在把HIDREPORTDESC的描述放在一起。 然后增加0x85 id用于区分不用的数据。 第一步: 在 62-基于HID协议的USB键盘范例 里面添加 0x85 0x02 REPORT_ID 为0x02 ,插入电脑之后,直接无法识别设备。
疑问点: 我这个思路是否可以? 是否有demo,或者怎么样的解决思路。
// 具体描述如下:
char code HIDREPORTDESC[96] = // 65+2+27+2
{
0x05,0x01, //USAGE_PAGE(Generic Desktop);
0x09,0x06, //USAGE(Keyboard);
0xa1,0x01, //COLLECTION(Application);
0x85,0x02, // REPORT_ID 0x0A;
0x05,0x07, // USAGE_PAGE(Keyboard);
0x19,0xe0, // USAGE_MINIMUM(224);
0x29,0xe7, // USAGE_MAXIMUM(255);
0x15,0x00, // LOGICAL_MINIMUM(0);
0x25,0x01, // LOGICAL_MAXIMUM(1);
0x75,0x01, // REPORT_SIZE(1);
0x95,0x08, // REPORT_COUNT(8);
0x81,0x02, // INPUT(Data,Variable,Absolute);
0x75,0x08, // REPORT_SIZE(8);
0x95,0x01, // REPORT_COUNT(1);
0x81,0x01, // INPUT(Constant);
0x19,0x00, // USAGE_MINIMUM(0);
0x29,0x65, // USAGE_MAXIMUM(101);
0x15,0x00, // LOGICAL_MINIMUM(0);
0x25,0x65, // LOGICAL_MAXIMUM(101);
0x75,0x08, // REPORT_SIZE(8);
0x95,0x06, // REPORT_COUNT(6);
0x81,0x00, // INPUT(Data,Array);
0x05,0x08, // USAGE_PAGE(LEDs);
0x19,0x01, // USAGE_MINIMUM(1);
0x29,0x03, // USAGE_MAXIMUM(3);
0x15,0x00, // LOGICAL_MINIMUM(0);
0x25,0x01, // LOGICAL_MAXIMUM(1);
0x75,0x01, // REPORT_SIZE(1);
0x95,0x03, // REPORT_COUNT(3);
0x91,0x02, // OUTPUT(Data,Variable,Absolute);
0x75,0x05, // REPORT_SIZE(5);
0x95,0x01, // REPORT_COUNT(1);
0x91,0x01, // OUTPUT(Constant);
0xc0, //END_COLLECTION;
#if 0
0x05,0x0c, //USAGE_PAGE(Consumer);
0x09,0x01, //USAGE(Consumer Control);
0xa1,0x01, //COLLECTION(Application);
0x85,0x01, // CONSUMER_REPORT_ID 0x01
0x15,0x00, // LOGICAL_MINIMUM(0);
0x25,0xff, // LOGICAL_MAXIMUM(255);
0x75,0x08, // REPORT_SIZE(8);
0x95,0x40, // REPORT_COUNT(64);
0x09,0x01, // USAGE(Consumer Control);
0xb1,0x02, // FEATURE(Data,Variable);
0x09,0x01, // USAGE(Consumer Control);
0x81,0x02, // INPUT(Data,Variable);
0x09,0x01, // USAGE(Consumer Control);
0x91,0x02, // OUTPUT(Data,Variable);
0xc0, //END_COLLECTION;
#endif
};
|
|