完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
通过usb hound分别监控到ch567和电脑枚举的过程,左图是电脑主机的usb2.0,右图是ch567的usb2.0。
可以看出usb的版本号、PID、bcddevice、设备序列号都是不一样的。圈圈说PID、序列号不一样会导致加载的驱动不同,所以我猜测是因为这个原因导致两者枚举的过程不一样,ch567才会重新枚举一次,设备才能正常工作。 请问是什么原因会导致两者的描述符不一样的? |
|
相关推荐
8个回答
|
|
通过usb hound分别监控到ch567和电脑枚举的过程,左图是电脑主机的usb2.0,右图是ch567的usb2.0。
可以看出usb的版本号、PID、bcddevice、设备序列号都是不一样的。圈圈说PID、序列号不一样会导致加载的驱动不同,所以我猜测是因为这个原因导致两者枚举的过程不一样,ch567才会重新枚举一次,设备才能正常工作。 请问是什么原因会导致两者的描述符不一样的? |
|
|
|
第二次就变成这样了...
CTL 80 06 00 01 00 00 12 00 IN 12 01 10 02 00 00 00 40 1d 2a 01 00 00 00 01 02 00 01 |
|
|
|
有尝试过其他设备吗?重新枚举是硬件自动完成,还是需要手动复位这种?
|
|
|
|
其它设备没发现右这样的情况,重新枚举是主机请求,然后设备再响应。没有手动复位的过程。
|
|
|
|
那既然自动重新枚举,后面的枚举能够成功吗?
|
|
|
|
后面枚举是成功的,只是为什么会出现这样的情况。是同一个设备啊,同样的接口,装的也是同一个驱动,为什么第一次枚举得到的描述符是不相同的。
|
|
|
|
你仔细看下,除了设备描述符,配置描述符也不一样。你看下配置描述描述的设备类别。麻烦贴完整点。
|
|
|
|
设备类别(bDeviceClass)这个域是在设备描述符(Standard Device Descriptor)里的,不是配置描述符的,而且这个域是没变过的。
|
|
|
|
只有小组成员才能发言,加入小组>>
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2604 浏览 2 评论
2138 浏览 1 评论
ch554g的板子准备烧录程序,用串口总是显示等待设备连接是为啥
1013浏览 14评论
请问ch32v307用ch-link调试或者读写有什么特殊操作方法吗?
906浏览 13评论
Windows系统下如何确定COM口为CH340/CH341设备?
2230浏览 12评论
684浏览 12评论
CH32V307以太网接近满速后,几秒或几十秒后就死机怎么解决?
1970浏览 11评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-5-2 11:34 , Processed in 0.653916 second(s), Total 50, Slave 45 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号