硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1031|回复: 9
收起左侧

如何在RL-USB中虚拟2个串口加1个HID?

[复制链接]

12

主题

75

回帖

111

积分

初级会员

积分
111
发表于 2021-9-8 23:28:14 | 显示全部楼层 |阅读模式
使用的STM32F415,RL-USB 6.14.1,通过RTE环境加了3个USB Device
每一个单独都是好用的,合起来后

USBD_Initialize         (1U);         // USB Device 1 Initialization
USBD_Initialize         (0U);         // USB Device 0 Initialization

USBD_Connect            (1U);         // USB Device 1 Connect
USBD_Connect            (0U);         // USB Device 0 Connect



USBD_Initialize执行第1个的那个设备能被电脑识别出来
请问要怎么做,才能让这3个设备同时出来呢?         
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106882
QQ
发表于 2021-9-9 08:58:33 | 显示全部楼层
F415的USB Device只有一个,添加一个就可以。

然后添加虚拟串口和HID例化即可
回复

使用道具 举报

12

主题

75

回帖

111

积分

初级会员

积分
111
 楼主| 发表于 2021-9-9 12:58:38 | 显示全部楼层
eric2013 发表于 2021-9-9 08:58
F415的USB Device只有一个,添加一个就可以。

然后添加虚拟串口和HID例化即可

能具体描述一下怎么弄吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106882
QQ
发表于 2021-9-9 15:12:51 | 显示全部楼层
yangskyhigh 发表于 2021-9-9 12:58
能具体描述一下怎么弄吗?

那个RL-USB的help文档里面有个说明的,你可以看下。
回复

使用道具 举报

12

主题

75

回帖

111

积分

初级会员

积分
111
 楼主| 发表于 2021-9-10 21:46:20 | 显示全部楼层
eric2013 发表于 2021-9-9 15:12
那个RL-USB的help文档里面有个说明的,你可以看下。

谢谢回复
照着文档里的例子(它是一个MSC和一个HID混合)
配置了2个CDC 串口(第1CDC的中断端点1,批量端点2,第2个CDC的中断端点3,批量端点4)或者
1个CDC 串口(中断端点1,批量端点2)和HID(中断端点3)
在设备管理器里还是出现感叹号,提示
“该设备无法启动。 (代码 10)

{操作失败}
请求的操作不成功。”
回复

使用道具 举报

12

主题

75

回帖

111

积分

初级会员

积分
111
 楼主| 发表于 2021-9-10 21:57:53 | 显示全部楼层
eric2013 发表于 2021-9-9 15:12
那个RL-USB的help文档里面有个说明的,你可以看下。

终于知道原因了
STM32F415只有1个端点0,3个IN和OUT端点,即序号(1-3)
一个CDC要占用2个端点,一个HID占用1个端点
因此最多1个CDC和1个HID,而不可以2个CDC。
之前把HID的端点号设置了5,自然也是不行
回复

使用道具 举报

12

主题

75

回帖

111

积分

初级会员

积分
111
 楼主| 发表于 2021-9-10 22:00:43 | 显示全部楼层
有1个新问题,虚拟出来的串口,在设备管理器里就是 “USB 串行设备(COM3)”
而 ST-Link自带的虚拟串口则是“STMicroelectronics STLink Virtual COM Port(COM2)”
能自定义这么一段描述符吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106882
QQ
发表于 2021-9-11 08:59:52 | 显示全部楼层
yangskyhigh 发表于 2021-9-10 22:00
有1个新问题,虚拟出来的串口,在设备管理器里就是 “USB 串行设备(COM3)”
而 ST-Link自带的虚拟串口则 ...

可以修改inf驱动文件。
回复

使用道具 举报

12

主题

75

回帖

111

积分

初级会员

积分
111
 楼主| 发表于 2021-9-12 23:37:30 | 显示全部楼层
eric2013 发表于 2021-9-11 08:59
可以修改inf驱动文件。

单纯修改inf似乎不行了
win10要求数字签名,改了inf,对应的cat文件没改也不行啊
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106882
QQ
发表于 2021-9-13 01:01:33 | 显示全部楼层
yangskyhigh 发表于 2021-9-12 23:37
单纯修改inf似乎不行了
win10要求数字签名,改了inf,对应的cat文件没改也不行啊

win7上没问题,win10上有时间我试试。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-9 06:06 , Processed in 0.294206 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表