打印
[STM32F4]

USB复合设备CDC+MSC

[复制链接]
2177|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
用CUBE单独生成的CDC和MSC,复合已实现,可以通过虚拟串口通信,PC也出现可移动磁盘,插拔可再次识别。

但是移植到现有的工程(MSC+文件系统)里,PC识别出复合设备,CDC,USB大容量存储设备,但是没有出现可移动磁盘,上位机打开虚拟串口就会卡死,过一段时间后只剩下设备管理器只能看到一个未知设备,插拔无反应。检查了几个CDC和MSC的相关文件没有什么差别,已经没有思路了求解

使用特权

评论回复
沙发
wangjiahao88| | 2019-12-3 17:00 | 只看该作者
是不是USB 等待,然后自动关闭了?

使用特权

评论回复
板凳
捉虫天师| | 2019-12-3 20:03 | 只看该作者
官方有个例子带这个功能的,对比对比。

使用特权

评论回复
地板
xtoolbox| | 2019-12-3 22:15 | 只看该作者
你可以尝试一下这个非官方的复合设备例程,包含HID+CDC+WinUSB+MSC四种设备,很容易添加新接口或是将不需要的接口去掉
https://github.com/xtoolbox/TeenyUSB/tree/master/demo/composite
比ST官方的USB库更简洁,占用资源也更少

使用特权

评论回复
5
吃葡萄吐瓜籽|  楼主 | 2019-12-4 15:34 | 只看该作者
因为原工程是HAL库写的而且比较大 不好改,只是想添加一个CDC来取代串口,现在怀疑的是VCP驱动问题,因为安装了驱动后即使下载的是 原来带串口的程序,只有MSC,也不能读磁盘了

使用特权

评论回复
6
吹跑地球的风| | 2020-8-5 18:44 | 只看该作者
楼主问题解决了吗,我也碰到这样的问题了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

10

帖子

0

粉丝