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

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

[复制链接]
党国特派员 发布时间:2015-1-6 17:02
USB转串口,大家经常用到,市面上也有很成熟悉的产品,CH341就是其中之一。
4 k. Y) W3 [5 K& t- n+ B* j) [3 r而且ST的demo也有相关的例子(USB virtual com port ),我们直接用ST的VCP不就完了,为什么还要去模拟CH341呢?
0 P3 g% F- e, S答案有两个:
* s. t- c% h% A5 g. d' [- N, V: K1、ST的USB virtual com port驱动没有经过微软签名,安装不方便。(特别是WIN8); u, z1 e7 X6 u; o6 |9 D2 @4 V
2、作者无聊练手。  b: I) ?# T* o4 g
话不多说,先上原理图:
8 t$ m1 A$ r# x$ P diagram.jpg 9 X8 c! w: k+ X; I6 q. g, r

# j& p3 p% R# ^, K再上开源地址:http://github.com/blackmiaool/STM32_USB_CH341.git1 ^) o4 K5 Q8 u7 q( c( j

6 q" s; k" z+ T1 t7 U4 x3 t3 {喜欢的朋友自己下吧。7 U9 K; j8 n4 x2 h

& Q. R  U, k( l/ B' g
收藏 8 评论46 发布时间:2015-1-6 17:02

举报

46个回答
党国特派员 回答时间:2015-2-17 09:18:28
数码小叶 发表于 2015-2-16 17:11
' S5 P( B+ [5 c# X( I- y标题很吸引人,可是没看懂内容

" y! b1 [7 Z; \( x使用这个固件,可以使用CH341的驱动,不知这么说你明白否?    blank.png 5 L1 X; f. O' v$ t
" \# b$ ^; R" D3 Z/ T9 R
blank.png ! D$ v5 t/ K1 K& ^# c% K/ w
* P/ {7 ]/ I5 X) G7 |
blank.png
: r2 |! X" Q2 p, @5 ~+ b, m+ N/ o* g9 o5 X. f2 P2 `" g
blank.png 5 k7 U9 J/ X% }& p9 M! B& ^: @+ }/ n4 Z
% V7 c0 D7 d0 e0 z0 \& u, _2 j% w
blank.png 0 g; @" y& l. Y" D/ m6 D! M3 q
2 G! g7 \  U& @# l
blank.png
* E# C% B1 o* C+ t4 M, ]$ B4 W7 G  f% s! `7 l. L1 r
blank.png ! j. g' E! M8 @5 J" x

  @" p! N- e' h. F blank.png
' i) X  w, F6 m" A, v: [) \$ ~: Z2 s& j8 z
blank.png , u0 S; J7 d9 W9 ?

5 R0 }/ P5 h( e$ o blank.png
3 O0 N& i# S$ A, Y4 O; c. o/ A/ z; ]# u( [" N7 C
党国特派员 回答时间:2015-3-1 16:27:50
wjandsq 发表于 2015-3-1 11:49
5 Y( M8 o* `# V' r无图无真相,编译通不过。

; }, ?1 V7 C( C3 K5 o) q请把错误信息发上来。   nothing.png   V% C5 \. e5 S$ i' r6 N' j

* C% u0 h( L" D' W. F0 }8 s% { nothing.png , q( j7 b+ B  V

. H: _' R0 s3 p, u" e. K1 s" J% S( S nothing.png 1 y# C7 a% }8 c; Z/ v& ^
5 f$ l. m! l1 k
nothing.png : c7 U/ T( q' ?' g
' x9 F# l5 P/ h. `. ?8 l
nothing.png : S$ B" J  Q1 E! S
! U: _- r/ j/ M* k- [$ ]6 j0 P
nothing.png + s: ~( H. x7 b4 y8 \

7 u) k0 C3 W: \0 }3 @ nothing.png ! F9 C- F$ T$ V% @- K
" O6 \, x) x2 Q4 t8 g- d- U" w% p
nothing.png 7 _: I* w- |, f& P9 I% y
" H& Z4 U5 |" _, R& T$ v" C% n9 I
nothing.png ; [6 Z  d4 X$ y. h, u6 I3 I' N

& ~8 v/ {# r; Y! a, g" |/ h nothing.png 4 z* w+ Y  H/ {# O. d# t+ F: i
( C( K( E9 T  L1 h6 T/ o& ~
: C, u2 i( Y8 |' d( A- B2 G
wjandsq 回答时间:2015-3-18 23:32:50
我已经编译成功了,现在我用GCC,3.5的库版本,用MDK,最新的HAL库,现在又冒出一个2.03版本的库,
0 \% s% w) e& A; \* S: `用3.61版本的库,收集ST社区的代码实现了USB转3路CDC串口。只有HAL库版本,实现了DTR、Break9 O  [" m: p$ Q& f
信号控制,其它版本可能是官方例程没有定义相应的函数,上位机发出break信号时,总是发现错误。9 X& D" A8 E/ p

' \7 D& b, @# ~1 a现在不知道CH341的驱动是否支持多串口,另外,固件库的版本太多,代码移植就非常困难,HAL驱动: X( T& e- q$ a% |2 H( g0 a
移植到GCC,现在都比较麻烦,因为CMIS层麻烦。$ @9 z$ D$ @: Z! P! ^

5 R; O1 {/ N- Q, _. ?0 @; m2 B" u7 D- W
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; U: O  A5 }" I/ R. w1 `# i
顶一下,顺便问lz,大概速率能到多少?谢!
" d  g9 @  l- h/ k& s: D
自己测试下便知,串口的速度,本身就那样,只是方便而已。
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( X: l+ B( j6 n9 n% O) s' h
看不懂图中 PD0--D-

, J' O: d( x, ~! @& _. J是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
( I3 S- n, i+ b. e8 IMDK-ARM 4.74编译,找不到stm32f10x_lib.h文件
7 Y4 {9 `" E) C( U) G2 i
这个错误,不解释。
wjandsq 回答时间:2015-3-2 13:59:37
谁还用这么旧的库,显然不好找源代码。
1234下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版