CH32V307 如何识别上位机HUB是全速还是高速?

如题,有没有相关的例程代码?

在测试USBHS模式的时候,发现接入计算机高速接口能正常枚举;但是接入USBFS的HUB就会枚举失败。


你好,HS口做设备时,可以通过这个寄存器判断和上行端口交互之后的速度类型

image.png


@TECH__ZC 感谢解答,但是仍有问题:

  1. 我在HS口使用了 WINUSB2.0 功能,也就是设备描述符报告的版本为 2.1 (0x0210)

  2. 在识别到HUB为FS速度时,切换了FS的配置描述符,但仍然枚举失败。

  3. 当我把设备描述符版本改为2.0时能正确枚举,各HID接口枚举正确,但WINUSB接口异常(这是正常现象)。

  4. 我的另外一款MCU,仅使用USBFS速率USB接口通信,在FS和HS都能正常枚举WINUSB2.1设备。


这就比较迷惑了,难道除了配置描述符不同以外,HS和FS的枚举还有什么地方需要处理吗?


你好,可以对比一下代码,有条件可以抓个包看下。


只有登录才能回复,可以选择微信账号登录