打印

usb 多cdc 异常

[复制链接]
802|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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串口,所以都需要独立的通道

使用特权

评论回复
5
cr315| | 2025-6-24 16:12 | 只看该作者
减少CDC实例,每个实例都能分配到有效端点。

使用特权

评论回复
6
elephant00| | 2025-6-24 16:13 | 只看该作者
检查端点号是否在有效范围内,并避免重复配置。

使用特权

评论回复
7
jcky001| | 2025-6-24 18:13 | 只看该作者
在可能的情况下,考虑复用端点。

使用特权

评论回复
8
flycamelaaa| | 2025-6-24 19:14 | 只看该作者
修改USB描述符,每个CDC实例的端点描述符正确指向有效端点。

使用特权

评论回复
9
powerantone| | 2025-6-24 19:15 | 只看该作者
检查USB驱动代码,端点配置逻辑是否正确,有无硬编码或错误的端点号。

使用特权

评论回复
10
stormwind123| | 2025-6-24 20:15 | 只看该作者
用复合设备与IAD描述符。

使用特权

评论回复
11
probedog| | 2025-6-24 22:16 | 只看该作者
升级硬件或固件。

使用特权

评论回复
12
classroom| | 2025-6-24 22:16 | 只看该作者
USB协议分析仪捕获通信数据,检查端点配置和通信过程是否符合预期。

使用特权

评论回复
13
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

粉丝