usb 多cdc 异常

[复制链接]
 楼主| wllhhu 发表于 2025-6-22 10:38 | 显示全部楼层 |阅读模式
gd32f303rct6  usb 虚拟 5路 cdc acm,端点不够了, INT端点配置到了0x88这种没有的端点号上, 主机一直轮训这个无效的端点,请问有啥好的解决方法?
 楼主| wllhhu 发表于 2025-6-22 10:39 | 显示全部楼层
中断端点能在不配置的情况下,使得数据收发正常?
dukedz 发表于 2025-6-22 15:32 | 显示全部楼层
为啥要虚拟这么多 cdc?
不能一路 cdc?然后把原本 5 路的串口数据打包走 1 路 cdc 串口?
 楼主| wllhhu 发表于 2025-6-24 10:37 | 显示全部楼层
dukedz 发表于 2025-6-22 15:32
为啥要虚拟这么多 cdc?
不能一路 cdc?然后把原本 5 路的串口数据打包走 1 路 cdc 串口? ...

linux端使用的就是5路独立的通道映射到外面的5路485串口,所以都需要独立的通道
cr315 发表于 2025-6-24 16:12 | 显示全部楼层
减少CDC实例,每个实例都能分配到有效端点。
elephant00 发表于 2025-6-24 16:13 | 显示全部楼层
检查端点号是否在有效范围内,并避免重复配置。
jcky001 发表于 2025-6-24 18:13 | 显示全部楼层
在可能的情况下,考虑复用端点。
flycamelaaa 发表于 2025-6-24 19:14 | 显示全部楼层
修改USB描述符,每个CDC实例的端点描述符正确指向有效端点。
powerantone 发表于 2025-6-24 19:15 | 显示全部楼层
检查USB驱动代码,端点配置逻辑是否正确,有无硬编码或错误的端点号。
stormwind123 发表于 2025-6-24 20:15 | 显示全部楼层
用复合设备与IAD描述符。
probedog 发表于 2025-6-24 22:16 | 显示全部楼层
升级硬件或固件。
classroom 发表于 2025-6-24 22:16 | 显示全部楼层
USB协议分析仪捕获通信数据,检查端点配置和通信过程是否符合预期。
dukedz 发表于 2025-6-28 13:30 | 显示全部楼层
wllhhu 发表于 2025-6-24 10:37
linux端使用的就是5路独立的通道映射到外面的5路485串口,所以都需要独立的通道 ...

linux 环境可以考虑:
usb 只用一路 cdc 串口
linux 建立 5 个虚拟串口给 应用程序使用
这 5 个虚拟串口的数据经过一个程序转发给一路 usb cdc 串口,mcu 收到再拆分映射到外部 5 路 485 串口
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

9

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部