你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32 USB CDC 虚拟多串口  

[复制链接]
creep 发布时间:2017-9-28 22:30
阅读主题, 点击返回1楼
5 收藏 52 评论134 发布时间:2017-9-28 22:30
134个回答
creep 回答时间:2017-12-30 10:53:37
唯有奋斗 发表于 2017-12-30 08:58
5 r; T* ?2 L3 L( w" B) m/ A2 V您好,请问一下STM32F4能虚拟出几个VCP呢?
4 k# i' S  D& ?6 k- E3 C1 C3 `& h
这个要看下具体型号的USB端点有多少?
zcl201207 回答时间:2017-12-30 14:02:26
唯有奋斗 回答时间:2017-12-30 22:02:24
creep 发表于 2017-12-30 10:53
6 L0 ~' k9 ~+ x1 o. L, V* L这个要看下具体型号的USB端点有多少?
$ L( U9 k! \4 K( g1 g
407有多少个端点?USB端点和VCP是什么样的对应关系呢?
唯有奋斗 回答时间:2018-1-7 01:01:33
C:\Users\my\Desktop\微信截图_20180107005942.png
0 ?1 l% x! A7 U% Q+ G版主你好,以这里看,貌似做从机的时候是8对,也就是16个EP,那请问是不是只能做5个VCP呢?
唯有奋斗 回答时间:2018-1-7 01:04:14

STM32H7xx

STM32H7xx
/ K, o- M. W0 Z# ?  H5 d) h. A
你好,版主,如图所示,做从机的时候有8对EP是吧?然后可以虚拟出5个VCP,是这样吗?3个EP虚拟出一个VCP?
* V, ]: ?% V1 F; N' S* k9 Q4 f7 Z9 H( F, p+ i  N# G
MaggiGunner 回答时间:2018-1-11 11:48:21
楼主你好,您这篇帖子我研究好几天了,也看了很多其它的资料。现在遇到的问题是2VCP能枚举出,但是无法连续发送,而且在不同系统的电脑上表现的状态不一致。我目前使用的win10系统,驱动自动安装,设备管理器显示USB Serial Port(COM X),但是打开串口助手无法连续输出,切换两串口会是不是出现VCP0/VCP1发送语句,但也仅限于一句。个人猜测和驱动有关,不知道楼主有没有类似情况?或者说明一下附件中程序用F769-DISCO开发板,在什么系统上使用能正常的呢?另外INF文件在我电脑上装不上,
creep 回答时间:2018-1-11 12:03:31
MaggiGunner 发表于 2018-1-11 11:48" P& P* L9 n5 j" J( C8 h
楼主你好,您这篇帖子我研究好几天了,也看了很多其它的资料。现在遇到的问题是2VCP能枚举出,但是无法连续 ...
" e9 ]: \. s$ d) D/ N
帖子里面的测试gif 和截图是在win7 上进行的,这个时候需要加载一个inf 驱动。8 {9 \/ a6 _3 T) j
在win10上是可以自己加载驱动,如果你能正常枚举2个串口那就问题不大了,通信部分你可以再确认下代码。
/ H( K% u* l" Y至少可以先调通一个VCP收发没有任何问题再移植多VCP。
kylongmu 回答时间:2018-1-11 13:43:51
本帖最后由 kylongmu 于 2018-1-11 13:48 编辑 3 X" W3 e+ L1 J9 a! }# l: W

: x5 e3 G" N/ \楼主你好,有没有linux下CDC驱动,比如接入树莓派这样的板子就很方便了,接口控制与逻辑由MCU来完成,高级功能“界面、网络”由树莓派完成。1 P5 ~) V) V) ~, l. p' u7 w
一直有这个想法,ST官方也不提供驱动源码,要是有USB2的HS驱动源码,有的话MCU拿来传大数据流也是不错的。
creep 回答时间:2018-1-11 14:39:32
kylongmu 发表于 2018-1-11 13:43
% p8 U3 C, d% D; J1 a# @楼主你好,有没有linux下CDC驱动,比如接入树莓派这样的板子就很方便了,接口控制与逻辑由MCU来完成,高级 ...

/ S! U1 V1 C& c$ i1 ^其实这个我也不懂,问了几个大佬后他们说linux里面集成的有CDC驱动了,不需要另外的驱动文件。
MaggiGunner 回答时间:2018-1-11 15:35:16
creep 发表于 2018-1-11 12:03& o# m. k1 ?+ f. }$ a  q: t8 H) @
帖子里面的测试gif 和截图是在win7 上进行的,这个时候需要加载一个inf 驱动。- e; R% n- k4 w8 v
在win10上是可以自己加载 ...

. J3 }1 z* K( ^) ]8 s, s现在用CUBEMX生成单VCP发送没有问题。我看网上说VID和PID也很重要,我在您例程里看用的是0x03EB/0x6133,不知道这个有什么考虑吗?STM默认用的是0x0483/0x5740.另外win10安装没有数字签名驱动的方法您那有吗?我这边安装总是不成功
creep 回答时间:2018-1-11 16:06:23
MaggiGunner 发表于 2018-1-11 15:35
! a. r) W. ^3 J5 a! l/ b( \6 p1 ^现在用CUBEMX生成单VCP发送没有问题。我看网上说VID和PID也很重要,我在您例程里看用的是0x03EB/0x6133, ...
4 y/ ~; N6 d8 R" m3 f! I
1、 要保证STM32程序里面的用PID VID和驱动文件INF的PID VID保持一致,这里使用和官方的PID VID不一样是为了加载自己写的那个驱动,这样可以修改枚举出来的串口名称。% b' x7 V  T# T; e2 o6 R$ \+ P1 [0 }
2、没有数字证书的问题我也搞不定,这个目前没有办法,WIN7 32位可以强制安装驱动,但是64位或者win10好像只能禁用签名验证才能安装驱动。win10也可以使用系统自动加载的兼容驱动好像也能正常通信。
kylongmu 回答时间:2018-1-11 18:03:58
creep 发表于 2018-1-11 14:39" n% `. k6 i; x1 `1 F+ d; M( m
其实这个我也不懂,问了几个大佬后他们说linux里面集成的有CDC驱动了,不需要另外的驱动文件。 ...
" P; N/ O- h. k% V5 r( L
好的,谢谢,回头试试。
MaggiGunner 回答时间:2018-2-2 10:18:24
楼主你好,目前又有一个细节问题需要请教~我发了一个帖子询问端点缓冲区大小设置:STM32F7 USB 缓冲区设置最小单位是字节还是字?
. E6 E- Y" @0 h& a7 Lhttps://www.stmcu.org.cn/module/ ... amp;fromuid=3350409
. R# }% k, X' ^# A4 |(出处: 意法半导体STM32/STM8技术社区)" O( b7 I; ?8 N# W* v

; l  L% e: F, j% d6 g$ |4 [( ?想请教一下你的缓冲区大小设置是怎么考虑的?
wylew 回答时间:2018-2-6 09:25:22
你好,你写的教程基本都能理解,就是我想问一下,我研究的源码里,它没有分别对某一个端点进行初始化的函数,而是统一用一个函数来初始化:, x" n9 ]7 w" W6 w* p; v
endpoint_control_address = (UX_DCD_OTG_FS_DIEPCTL0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));' v( q) t/ j  a
endpoint_size_address = (UX_DCD_OTG_FS_DIEPTSIZ0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));, I  Z, p" s+ C5 ?
endpoint_dma_address = (UX_DCD_OTG_FS_DIEPDMA0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));6 H3 G8 ?, R) F: _. Y: Q0 ~/ [& K' v
就像这样,在一个函数里就设置了端点0和非0端点的所有端点的IN设置,可根据ed -> ux_dcd_otg_ed_index来判断是哪一个端点,所以,相对来说,如果我添加了端点,就是不是不需要再添加我加的端点的初始化函数呢
JohnShen 回答时间:2018-2-24 11:55:26
感谢分享!!

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版