https://www.stcai.com/Customer/FileDownloadVerifyPass?fileid=606705&type=img
- char code HIDREPORTDESC[27] =
- {
- 0x05,0x0c, //USAGE_PAGE(Consumer);
- 0x09,0x01, //USAGE(Consumer Control);
- 0xa1,0x01, //COLLECTION(Application);
- 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;
- };
复制代码
对于0x81,0x02 // INPUT(Data,Variable);和0x91,0x02 // OUTPUT(Data,Variable); 的取值有点疑问,我查了资料Variable应该是固定长度的,但实际通信中USB数据的长度应该是不固定的,因此应该是Array才对啊,即这两项应该是0x81,0x00和0x91,0x00。
请大神帮忙看看,是我对Variable/Array理解有误,还是上位机程序里面做了填充?谢谢! |