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

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  Y& {/ Q2 b* O, _! L/ ?
您好,请问一下STM32F4能虚拟出几个VCP呢?

5 b7 u8 m1 _) i这个要看下具体型号的USB端点有多少?
zcl201207 回答时间:2017-12-30 14:02:26
唯有奋斗 回答时间:2017-12-30 22:02:24
creep 发表于 2017-12-30 10:53
) E3 R  Z% M/ G) V/ F+ T这个要看下具体型号的USB端点有多少?
  o! L1 O/ X9 N" l! h
407有多少个端点?USB端点和VCP是什么样的对应关系呢?
唯有奋斗 回答时间:2018-1-7 01:01:33
C:\Users\my\Desktop\微信截图_20180107005942.png
5 u. h3 K" L+ c6 H* _6 ]) b3 ~版主你好,以这里看,貌似做从机的时候是8对,也就是16个EP,那请问是不是只能做5个VCP呢?
唯有奋斗 回答时间:2018-1-7 01:04:14

STM32H7xx

STM32H7xx
* ]8 v$ i! D# K2 b. L8 b# ?
你好,版主,如图所示,做从机的时候有8对EP是吧?然后可以虚拟出5个VCP,是这样吗?3个EP虚拟出一个VCP?# n( s  C+ J. w% W

& V1 _# r4 L1 E8 {& c
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
* F8 U. F- U" A8 |" H楼主你好,您这篇帖子我研究好几天了,也看了很多其它的资料。现在遇到的问题是2VCP能枚举出,但是无法连续 ...

/ n, H( C+ k% I帖子里面的测试gif 和截图是在win7 上进行的,这个时候需要加载一个inf 驱动。
7 f, j: W1 ^' Q- Q2 _7 C* ]在win10上是可以自己加载驱动,如果你能正常枚举2个串口那就问题不大了,通信部分你可以再确认下代码。
* ]( U$ M' n2 V# f  P至少可以先调通一个VCP收发没有任何问题再移植多VCP。
kylongmu 回答时间:2018-1-11 13:43:51
本帖最后由 kylongmu 于 2018-1-11 13:48 编辑
) O+ A% M; z. a5 q3 ]! I- y. j
- P4 L  x6 X/ N2 j楼主你好,有没有linux下CDC驱动,比如接入树莓派这样的板子就很方便了,接口控制与逻辑由MCU来完成,高级功能“界面、网络”由树莓派完成。: K8 [; _7 d0 g9 c  D/ d( E
一直有这个想法,ST官方也不提供驱动源码,要是有USB2的HS驱动源码,有的话MCU拿来传大数据流也是不错的。
creep 回答时间:2018-1-11 14:39:32
kylongmu 发表于 2018-1-11 13:43
2 t( d+ L& z7 g) u4 J7 U楼主你好,有没有linux下CDC驱动,比如接入树莓派这样的板子就很方便了,接口控制与逻辑由MCU来完成,高级 ...
! W+ c- u/ ]; j) Q" P* B4 c
其实这个我也不懂,问了几个大佬后他们说linux里面集成的有CDC驱动了,不需要另外的驱动文件。
MaggiGunner 回答时间:2018-1-11 15:35:16
creep 发表于 2018-1-11 12:03( f  Q( o. F4 r( ]; z  e: Z8 K0 `
帖子里面的测试gif 和截图是在win7 上进行的,这个时候需要加载一个inf 驱动。
6 ~/ A" Z6 |- X- d. v' v/ F  @$ B在win10上是可以自己加载 ...
; X/ ~) x8 g: S/ R
现在用CUBEMX生成单VCP发送没有问题。我看网上说VID和PID也很重要,我在您例程里看用的是0x03EB/0x6133,不知道这个有什么考虑吗?STM默认用的是0x0483/0x5740.另外win10安装没有数字签名驱动的方法您那有吗?我这边安装总是不成功
creep 回答时间:2018-1-11 16:06:23
MaggiGunner 发表于 2018-1-11 15:35/ z6 H& G  a9 V( b7 Z: ~
现在用CUBEMX生成单VCP发送没有问题。我看网上说VID和PID也很重要,我在您例程里看用的是0x03EB/0x6133, ...
8 [3 S! U$ m+ M; l' n) Y* \# S4 G
1、 要保证STM32程序里面的用PID VID和驱动文件INF的PID VID保持一致,这里使用和官方的PID VID不一样是为了加载自己写的那个驱动,这样可以修改枚举出来的串口名称。9 [4 t7 ^6 Z) R! M
2、没有数字证书的问题我也搞不定,这个目前没有办法,WIN7 32位可以强制安装驱动,但是64位或者win10好像只能禁用签名验证才能安装驱动。win10也可以使用系统自动加载的兼容驱动好像也能正常通信。
kylongmu 回答时间:2018-1-11 18:03:58
creep 发表于 2018-1-11 14:39
- R5 N+ B1 L/ B2 x$ D& Q  c* f其实这个我也不懂,问了几个大佬后他们说linux里面集成的有CDC驱动了,不需要另外的驱动文件。 ...
3 l3 B  Y8 E; G. p. L' W
好的,谢谢,回头试试。
MaggiGunner 回答时间:2018-2-2 10:18:24
楼主你好,目前又有一个细节问题需要请教~我发了一个帖子询问端点缓冲区大小设置:STM32F7 USB 缓冲区设置最小单位是字节还是字?
2 ~7 x6 z, Z1 X, a( Ahttps://www.stmcu.org.cn/module/ ... amp;fromuid=3350409
2 V6 C  k$ ?( `7 l$ \8 R(出处: 意法半导体STM32/STM8技术社区)
- \* |" q$ `7 r' k' m9 E) T
+ H: M1 `- ^# Z8 j( M  i" P; n+ }想请教一下你的缓冲区大小设置是怎么考虑的?
wylew 回答时间:2018-2-6 09:25:22
你好,你写的教程基本都能理解,就是我想问一下,我研究的源码里,它没有分别对某一个端点进行初始化的函数,而是统一用一个函数来初始化:
4 l! R, k! w# ~0 c% W5 R/ h( ~endpoint_control_address = (UX_DCD_OTG_FS_DIEPCTL0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));
* m" W2 q1 y7 ?8 Q4 W& s! ]3 iendpoint_size_address = (UX_DCD_OTG_FS_DIEPTSIZ0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));
6 C9 F0 R9 K5 Q3 l* j: ]endpoint_dma_address = (UX_DCD_OTG_FS_DIEPDMA0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));
( R- w3 q! [9 K, m7 r就像这样,在一个函数里就设置了端点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 手机版