完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,使用的官方提供的CH554.uvproj,代码是CH554-EVTEXAMUSBDeviceCompatibilityHID.c,只修改了设备描述符,配置描述符,报告描述符,其他没有动。
UINT8C CfgDesc[41] = { 0x09,0x02,0x29,0x00,0x01,0x01,0x00,0x80,0x64, 0x09,0x04,0x00,0x00,0x02,0x03,0x00,0x00,0x00, //以下为HID描述符 HID Keyboard, 2 endpoints 0x09,0x21,0x11,0x01,0x00,0x01,0x22,0xF3,0x01, 0x07,0x05,0x82,0x03,ENDP2_IN_SIZE,0x00,0x05, 0x07,0x05,0x02,0x03,ENDP2_OUT_SIZE,0x00,0x05, }; 报告描述符的长度设置为0xF3,0x01,在URB_FUNCTION_GET_DESCRIPTOR_FROM_INTERFACE中返回的长度是 0x233,多了64个字节,对比了改动代码之前的情况也是正确的。 可问题是返回的报告描述符只有前面的52个字节,其他都没有返回来。 |
|
相关推荐
1个回答
|
|
EVT例程中,默认处理返回长度的变量是UINT8类型,无法正确处理过长的描述符返回。针对修改一下代码。
|
|
|
|
只有小组成员才能发言,加入小组>>
463 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2868 浏览 2 评论
2357 浏览 1 评论
806浏览 2评论
CH569通过HSPI实现USB3.0和FPGA高速双向通讯
630浏览 1评论
491浏览 1评论
CH32F103C8T6使用当前官网上的CDC例程会出现设备描述符请求失败
356浏览 1评论
630浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 23:22 , Processed in 1.122813 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号