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

分享:STM32 USB模拟CH341(开源)  

[复制链接]
党国特派员 发布时间:2015-1-6 17:02
USB转串口,大家经常用到,市面上也有很成熟悉的产品,CH341就是其中之一。% o& R! d+ W& Y* J  H  ?
而且ST的demo也有相关的例子(USB virtual com port ),我们直接用ST的VCP不就完了,为什么还要去模拟CH341呢?( W1 t) Z. ?+ x8 ~- w: Z" j
答案有两个:' ?7 g  H/ ~+ p+ D& ^1 g
1、ST的USB virtual com port驱动没有经过微软签名,安装不方便。(特别是WIN8)
% W& [4 N( _0 m$ A4 J* z" @2、作者无聊练手。- Q; }$ W  g' P4 _9 y
话不多说,先上原理图:6 L  ^! m; p7 Y" t
diagram.jpg 2 ^6 g; Q, X# I+ s

1 s2 k  j4 W/ J再上开源地址:http://github.com/blackmiaool/STM32_USB_CH341.git& P3 h0 p' Z9 J& S
' y! A) R1 O  S0 z# U
喜欢的朋友自己下吧。
9 B' D, i. {( E  I; `8 e+ ^2 T2 R) k
赞 收藏 8 评论46 发布时间:2015-1-6 17:02

举报

46个回答
党国特派员 回答时间:2015-2-17 09:18:28
数码小叶 发表于 2015-2-16 17:11
8 ?8 C# B  O" w$ Q: ^标题很吸引人,可是没看懂内容

8 e9 N7 y( \& G! K3 j. ~使用这个固件,可以使用CH341的驱动,不知这么说你明白否?    blank.png 6 `5 N! j& g. }# K" b
# P  t) p6 z7 l9 L, ^
blank.png
. ?- h, S0 |; {6 N# `5 s
1 S) L) O% E/ G3 i/ t$ I. E blank.png
& [8 h- L) T0 X! V. J7 ~: [
) J3 ^% l3 m; V- O1 Z. A8 E blank.png , m* K$ u' S8 S: v; M
3 B& |- Z$ z+ @4 v# d8 }
blank.png ; y& X# Y0 `4 a" A$ G) D

2 W5 A# G8 T& H' \* A$ X7 i blank.png ! ?9 M& |2 V) ]2 g3 M! |
2 `! O* w. I7 E" n
blank.png
( \. H; D& u) j" Z( y% o  ?
& z8 G; ^7 ~  z$ x blank.png * A" g1 w0 x3 f3 Q$ g6 v9 Q0 m
5 i7 c1 z1 ^" u8 f
blank.png
" W- n9 x$ ?8 ]$ o  ]) c6 E
( m4 p" a, ^: \& Y* J  O& Y blank.png ' {& }4 r+ c# C% c; x) o) k# w
$ ]9 P4 |! c# g. ~6 C: e# d( o
党国特派员 回答时间:2015-3-1 16:27:50
wjandsq 发表于 2015-3-1 11:49; N) G& V1 w: a9 }
无图无真相,编译通不过。

# k) y# T+ b5 t0 u: D1 k请把错误信息发上来。   nothing.png 8 S  c) R7 A6 }
4 U: J. G% `( A/ \) ?, t6 m
nothing.png
! Z* k8 H3 G' c6 ^; O) _& y. P
nothing.png
4 b" }0 y8 H, J5 L/ V
* T4 e5 J% E' f nothing.png
3 q9 Z8 W6 Z- I4 E" u1 c
; p; X. R+ Q) f nothing.png / s% s+ L6 e. j; X

: r. L# Z2 a! Z' C nothing.png 0 `# B# x8 H2 g" c

% ?$ n% {( x+ b+ }- i# @' f* J7 | nothing.png
$ R6 u1 I' Q% Q5 C% A% E8 {4 Y1 Z
) u) \) `+ b( b/ N) _ nothing.png & r3 Q# X* j3 i' H( n+ m) U9 C

7 Z: R$ v2 B( p& P6 J5 x, X8 j/ l nothing.png / D) k* }: I* v1 `9 U
+ A& R: g, o8 M4 o% t: D- S3 z
nothing.png ( X$ T. G3 H$ q

# E6 U" C! O8 m1 h
/ N& V+ j0 n+ Q6 t8 ^' a
wjandsq 回答时间:2015-3-18 23:32:50
我已经编译成功了,现在我用GCC,3.5的库版本,用MDK,最新的HAL库,现在又冒出一个2.03版本的库,
5 S9 k. g9 M: c- ?0 t9 B) b; z用3.61版本的库,收集ST社区的代码实现了USB转3路CDC串口。只有HAL库版本,实现了DTR、Break
: b2 @' ^' r2 |& _) u/ A. Z信号控制,其它版本可能是官方例程没有定义相应的函数,上位机发出break信号时,总是发现错误。0 W: r0 Q- Y/ m8 P; S1 @9 Q
+ ^$ A/ G) S2 D& a/ s) H
现在不知道CH341的驱动是否支持多串口,另外,固件库的版本太多,代码移植就非常困难,HAL驱动5 Y' g. H" J  z$ X- {7 n$ @
移植到GCC,现在都比较麻烦,因为CMIS层麻烦。3 q( p$ N" q- N
) _' M6 S) d- v: B7 _2 h( s
; Y9 H+ Q( S9 {' w$ E5 Z
aderson 回答时间:2015-1-6 17:41:04
什么情况???
blank83 回答时间:2015-2-16 10:14:26
顶一下,顺便问lz,大概速率能到多少?谢!
党国特派员 回答时间:2015-2-16 10:20:04
blank83 发表于 2015-2-16 10:14
8 A: N7 z# W  i6 L) o- ]顶一下,顺便问lz,大概速率能到多少?谢!

" r$ R. \% \2 |+ A6 F$ i! s自己测试下便知,串口的速度,本身就那样,只是方便而已。
foxglove 回答时间:2015-2-16 10:36:51
谢谢分享,留名
wyxy163@126.com 回答时间:2015-2-16 17:11:27
提示: 作者被禁止或删除 内容自动屏蔽
wamcncn 回答时间:2015-2-17 10:04:11
看不懂图中 PD0--D-
党国特派员 回答时间:2015-2-17 10:17:43
wambob 发表于 2015-2-17 10:04
' A: M+ g1 u  d& m' Y* L看不懂图中 PD0--D-
4 K, f9 H& K' c; i: l
是USB协议要求的,1.5K上拉在D+时表示是全速设备,在D-表示不是全速设备。
wjandsq 回答时间:2015-3-1 11:49:30
无图无真相,编译通不过。
lkl0305 回答时间:2015-3-1 18:05:36
多谢分享
wjandsq 回答时间:2015-3-2 09:52:53
MDK-ARM 4.74编译,找不到stm32f10x_lib.h文件
党国特派员 回答时间:2015-3-2 12:34:36
wjandsq 发表于 2015-3-2 09:52" |. V5 W" y9 r" w5 o+ _
MDK-ARM 4.74编译,找不到stm32f10x_lib.h文件
8 j* `/ w: R4 M2 V
这个错误,不解释。
wjandsq 回答时间:2015-3-2 13:59:37
谁还用这么旧的库,显然不好找源代码。
1234下一页

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版