你好,请问ch554对hid_report长度支持最大是多少?我这边测试时超128 byte时pc就识别不了,如下所示:
一. 以下在电脑上注册时,键盘的hid_report是59 byte, 在pc上可正常注册且键盘能正常使用;但鼠标的hid_report 是142 byte, 在pc上注册不了,在pc的设置管理器那会看到一个黄色的叹号,提示该设置无法启动。
二. 我改用hid_report为79 byte的鼠标时, 是可以正常使用的。不啥为啥超过128 byte就不行。
麻烦帮看下是什么问题,谢谢!
1. 设置描述符:
UINT8C DevDesc[18] =
{
0x12,0x01,0x10,0x01,0x00,0x00,0x00,0x08,
0x8A,0x24,0x67,0x83,0x00,0x01,0x01,0x02,
0x00,0x01
}
2. 配置描述符:
UINT8 CfgDesc[] =
{
0x09,0x02,0x3B,0x00,0x02,0x01,0x00,0xA0,0x19,
0x09,0x04,0x00,0x00,0x01,0x03,0x01,0x02,0x00,
0x09,0x21,0x11,0x01,0x21,0x01,0x22,0x8E,0x00,
0x07,0x05,0x82,0x03,0x08,0x00,0x04,
0x09,0x04,0x01,0x00,0x01,0x03,0x01,0x01,0x00,
0x09,0x21,0x11,0x01,0x21,0x01,0x22,0x3B,0x00,
0x07,0x05,0x81,0x03,0x08,0x00,0x0A
}
3. hid_report --鼠标
UINT8 RepDesc_0[]= //142 byte
{
0x05,0x01,0x09,0x02,0xA1,0x01,0x85,0x01,
0x09,0x01,0xA1,0x00,0x05,0x09,0x19,0x01,
0x29,0x05,0x15,0x00,0x25,0x01,0x95,0x05,
0x75,0x01,0x81,0x02,0x95,0x01,0x75,0x03,
0x81,0x01,0x05,0x01,0x09,0x30,0x09,0x31,
0x15,0x81,0x25,0x7F,0x75,0x08,0x95,0x02,
0x81,0x06,0x09,0x38,0x15,0x81,0x25,0x7F,
0x75,0x08,0x95,0x01,0x81,0x06,0xC0,0xC0,
0x05,0x0C,0x09,0x01,0xA1,0x01,0x85,0x03,
0x75,0x10,0x95,0x02,0x15,0x01,0x26,0x8C,
0x02,0x19,0x01,0x2A,0x8C,0x02,0x81,0x00,
0xC0,0x05,0x01,0x09,0x80,0xA1,0x01,0x85,
0x04,0x75,0x02,0x95,0x01,0x15,0x01,0x25,
0x03,0x09,0x82,0x09,0x81,0x09,0x83,0x81,
0x60,0x75,0x06,0x81,0x03,0xC0,0x05,0x01,
0x09,0x00,0xA1,0x01,0x85,0x05,0x06,0x00,
0xFF,0x09,0x01,0x15,0x81,0x25,0x7F,0x75,
0x08,0x95,0x07,0xB1,0x02,0xC0
}
4. hid_report --键盘
UINT8 RepDesc_1[ ]= //59 byte
{
0x05,0x01,0x09,0x06,0xA1,0x01,0x05,0x07,
0x19,0xE0,0x29,0xE7,0x15,0x00,0x25,0x01,
0x95,0x08,0x75,0x01,0x81,0x02,0x81,0x03,
0x95,0x05,0x05,0x08,0x19,0x01,0x29,0x05,
0x91,0x02,0x95,0x01,0x75,0x03,0x91,0x01,
0x95,0x06,0x75,0x08,0x15,0x00,0x26,0xA4,
0x00,0x05,0x07,0x19,0x00,0x2A,0xA4,0x00,
0x81,0x00,0xC0
}