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

【源码】STLINK-V3MINI 高速USB仿真器,成功改刷【高速CMSIS-DAP】  

[复制链接]
radio2radio 发布时间:2019-9-1 14:04
2019-09-22 源码发布,同步github,拷贝见附件。期待同好一起改进,很好玩呀。  c) x+ O6 Y* Y# m5 m
2019-09-29 更新,WinUSB+VCP做到了,和DAP v1+v2共存版,即是WinUSB与HID同时有。; z! h( V& b! O% e9 H
2019-12-22 更新,SWD clock 达到18MHz(最大)。) y1 ]! n; r0 I( K  k4 t
2020-07-10 一个好消息,一个可能的坏消息。(见1楼底部)。* t: {: X' j. q. U* E
2020-07-25 新的Bootloader已经完成(YAB),可以在不破坏原厂Bootloader的情况下,刷CMSIS-DAP。甚至可以刷入两种版本。
& q( Y, d$ s& |! |; ^/ n$ e( V如果想用回STLINK-V3,随时都可以再刷回来(小心,最好不要升级V3J6M2及后续版本,会锁死F723的SWD口)。0 l7 A1 O4 e8 B( N0 q6 B

3 x% D) Y) b1 E; Phttp://github.com/RadioOperator/CMSIS-DAP_for_STLINK-V3MINI1 }3 B; T, E: |5 I( j. m

, B8 l) H; @2 A7 Y8 \1 K( fYAB:
+ v! a6 [. |0 X! K" b  Z$ xhttps://www.stmcu.org.cn/module/forum/thread-625998-1-1.html
7 U) v* O" L& s, s7 Zhttp://github.com/RadioOperator/Yet_Another_Bootloader
* C5 M* F7 p5 t, ]6 D/ j
" }" i/ y# N) p7 b' c人生贵在折腾。
0 U. `4 K7 A9 g! p$ a* FST公司推出了STLUNK的V3版本有一段时间了,全功能的V3有点小贵,300大元左右吧。偶然发现新出的STLINK-V3MINI小东西,具有我最常用的基本功能,价格便宜(标准价不到10美刀),果断出手,现将初步的使用情况和思考分享一下。
# Z9 k, s) ~7 }
; v9 M( d. H8 h优点,USB2.0高速接口,比上一代V2,速度快很多,SWD/SWO连接速度可达24MHz,VCP的速度15MHz。 (留意,烧录IC的下载速度还取决于目标板的MCU速度)。尺寸超小,PCB只有15x30mm。
/ ?" n3 Y9 z3 C' V  b7 d缺点,只有1.27mm的14pin连接器插座,这对于我们习惯于使用杜邦线的,不方便。没有3.3V电源输出。被迫小改造了一下。  i. P: o1 D+ U3 W) n/ u6 t
4 Z1 I. |/ t5 L/ f4 S* C+ @
官网:http://www.st.com/en/development-tools/stlink-v3mini.html
. w& e+ k/ s4 z4 N! R* I; `$ q0 ?8 g: x4 K* F! g
就是它:2 p3 M/ [- }: S% J4 c# \- r+ h2 C
p.jpg ! F/ ^7 G. K$ U3 q$ W
) Y- s6 M9 ?$ `
改造后:留意我加了一条红色的连线。0 V* ~. ^/ I( s1 w
IMG_20190831_222637.jpg
4 W0 F* z1 O" [4 P+ Z' G IMG_20190831_222702.jpg 1 W$ j3 }) |  o6 U; K* f' }

$ s3 C7 m0 n- e1 T6 x从我实际使用的情况看,这个V3虽然是USB高速接口,也和其他具有USB2.0高速接口的仿真器一样,高速的优点并不明显。特别是大家常用的小IC,ROM不大,内核速度不高,V2仿真器足够使用,价格还便宜很多。 但对于ROM大于512KB的大型应用,应该能够提高工作效率。
3 i/ j* g1 R- z( B: q2 g$ F6 j' ^) M
+ N$ r4 s# {& a* O0 a& F+ e后续可能的发展:
! s  d, O2 A# ?2 c& Z- E. P# o; [. G1. 暂时还不能转换成J-LINK,Segger的转换软件还不支持,以后有没有不知道。: m3 {5 O2 L3 g* Q$ {% b' w7 u- J6 R

, U+ e! V8 X  v7 ?& w( s' [, m2. 二次开发,主控IC是BGA的STM32F723IEK6,216主频(据说可超频到300MHz以上,需散热),512KB-Flash,256KB-RAM,内置USB高速接口等,在外接器件要求不多的场合,可能可以用来做核心板使用。
; ~5 N0 ?& M  H8 U9 Y
4 v8 S" r3 h0 [6 h3. 二次开发,改成高速USB的CMSIS-DAP / DAPLink仿真器,硬件是现成的,以便用于其他厂家的IC开发。8 _: y" G4 K; L
* p" ~' v# F+ M& _
4. 做成CMSIS-DAP以后,保留SWO和VCP(UART)功能,进一步还可以附带USB转 SPI / I2C / CAN / GPIOs功能,等等。硬件也是现成的,Flash足够你用。麻烦在于PC上位机软件,如果是专用的就没什么意思了。
7 P7 ]5 u$ v: n5 c
: X8 }. l8 G1 M, y: M# K2919-09-22更新,CMSIS-DAP源码,见附件。
: g. d0 P, i) [8 x$ j' P重要的一张图,花了我很多时间才搞出来的:
2 L/ x$ X+ h8 \1 a STLINK-V3MINI_GPIOs_v4.JPG
4 x5 |. f$ L5 P( E3 l" e4 i
, X* J2 m" w9 a7 QCMSIS-DAP有两个版本,一个就是大家用过的HID版本,经常称为CMSIS-DAP v1,我的这个v1加上了VCP(CDC)功能。
2 ]# \$ u) i* K : [+ o4 [9 C- H7 u1 Y
另一个不太常见的WinUSB版本,称为CMSIS-DAP v2。与HID版本相比的优势在于它使用了高速的WinUSB数据传输模式。同样具有Windows免驱动安装的好处,目前主流的IDE如KEIL/IAR/pyOCD都已经支持,但由于高速USB2.0的CMSIS-DAP仿真器市面上并不多,还没有流行开来。/ X4 v( h6 ]: P: d) }

6 [# ?' a! C% H& y* e& MWinUSB在设备管理器里面的位置,与STLINK出现在一起(我发现STLINKv2和v3,都是使用WinUSB模式传输数据):
# ?" l3 Q0 j8 \0 u3 q1 M6 e WinUSB Device.jpg 8 V/ {, o7 y' Q

) U9 M1 U: F1 H& _9 p; c8 t6 `  D( g
还有许多方面可以玩的,比如:
3 e" D7 i  v; |4 b - DAPLink版,有熟悉DAPLink的朋友不妨试一试,这个我不搞了,原因见下面分析。6 Z$ p+ ?& \) x" w( Y
- Bootloader,要做到USB拖拽固件下载。 这个已经搞好了(YAB),还衍生出“绿色”版本的,CMSIS-DAP和STLINK-V3,可以刷来刷去,全部USB口操作,不用连接SWD口线。# [. ~3 x0 Z* n1 X# s) [+ Z
- 更换USB驱动库,更换架构,比如基于STM32CubeMX的,等等。3 o: i7 q0 l0 `8 q' p/ v0 q5 Y
- 还有......我们有512KB的Flash,能做很多很多事情。
. Q1 h. P# K' i0 v& J" J% R: \+ c' G5 q5 f- y/ p; Y: }
硬件方面,如果谁能买到便宜的IC,自己打板做一批,F723和F733都可以用,还有LQFP144和UFBGA176可选,TB大卖,别忘了送给我1块板子玩玩。
" [; o/ `- w; ?3 g0 S* t如果真的自己做板,千万别照抄,可以改进的地方很多。! n: v- |, h$ f  S, o

* {& t9 N3 d, I; r! b. K" P CMSIS-DAP.jpg / ?2 k1 |# X. h$ ?4 U
( _; C( I% Z) }3 [  W# \

0 F9 U; K; c* W9 x重要提醒:STLINK-V3仿真器的固件使用了加密技术!!! 任何使用普通的方法试图读取FLASH内容的,将会导致FLASH清空,当然也就失去了原厂STLINK仿真器的功能。 现在可以重刷Bootloader自行恢复STLINK-V3MINI(2020-07-10)
3 a# f* J% W( J$ _- a; ^
  z7 s' b; O0 q' S3 c7 N
! S- x' e) ]$ r6 Q% n& t
(以下内容与35楼相同,方便大家)/ P. O, K7 n# s! h
关于DAPLink的思考,
  O9 j  V. y* y" m1 v 由于很想将现在的DAPLink移植到STLINK-V3MINI硬件上面,仔细研究了一下DAPLink的源代码。 说实话,我没有使用过DAPLink,随着对DAPLink理念的深入理解,我发现移植DAPLink到独立的硬件上面,比如这个STLINK-V3MINI,意义不大。 现决定放弃。! z2 j- {; n" ?7 n$ _

3 f9 i; f6 e9 {* ~DAPLink是CMSIS-DAP的延申,主要是用于IC厂家在推广一款MCU时提供的开发板/演示板上面使用。功能类似于STLINK在STM32各种开发板上面所提供的辅助开发接口。8 ?) u7 a' U9 x6 K; b" T/ y
. H6 R2 i+ c& t# U' s
1- DAPLink的控制IC,内部称为HIC,常见的是K20DX, LPC11U35, STM32F103等等。 HIC主要功能是运行CMSIS-DAP,具有USB-MSC自我更新能力,和拖拽下载目标板程序的功能,新版本具有WebUSB下载目标程序的功能。1 y5 s" g/ Y4 {$ U3 I4 m
- B  C3 h+ n7 U4 `1 l
2- DAPLink可以提供一种标准的上位机可控的下载接口,开发板供应商,第三方上位机软件开发商,可以包装成各种傻瓜式的开发环境。 目的是令整个系统容易使用,特别是给儿童使用。这与我们码农经常使用IDE来开发软件完全不是一码事儿。
! |2 R" B& r0 n! B* O$ t
# K5 Y) R- n1 B8 K2 F4 Q* q3- DAPLink控制板,通常要与目标板一起提供给终端使用者,一般没有单独的设备出售。 因为不同的目标板MCU不同,MCU程序的下载算法也不同,这就使得DAPLink的控制软件也不同,虽然有USB-MSC自我更新能力, 也不能很方便地像JLINK / STLINK / CMSIS-DAP那样在不同的IC之间转换。
4 ]* Y& V! F: g7 Q+ M3 p$ g- F7 j! j4 x' C  r, r' |& K/ J# C- M
4- DAPLink所用的HIC要便宜,固件要成熟。 这一点对开发板厂商很重要。 是不是USB2.0高速(高速的价格贵好几倍),不重要。' y7 W" Y& |/ e4 I* H
. @+ o7 \. |5 E# c& P
所以我..........放弃移植DAPLink,不搞了。 有时间继续优化CMSIS-DAP。7 D3 W9 v! }. s- Z: G$ H
顺便说一下, 使用独立的CMSIS-DAP, 特别是这个高速版的,很好用。

& |4 E0 R9 a( x3 d7 o6 W/ v/ w) P- m# m* C1 [6 K3 _, [  [

. V! D5 Q; t# {, @* H4 i2020-07-10 一个好消息,还有一个可能的坏消息:
1 O# P( O2 x2 W1 T8 M好消息,有高手已经倒出了原厂的bootloader,并且分享出来(github),这样就可以在需要时恢复原厂的固件和STLINK-V3MINI功能了。+ A, R: U3 @! X
建议重刷的网友,一定要用unprotected那个文件,以免不小心锁死F723的SWD口而不能再用于开发调试F723程序了(用作STLINK-V3或CMSIS-DAP,还是没有问题的)。! _* n2 ?! |8 g. c- S: \5 u" X
坏消息,最新版的STLINK升级软件,en.stsw-link007_V2-36-26,只要一使用来升级这个V3的固件,立刻就会锁死F723的SWD口而不会有任何提示,此后,这个升级了的,就只能通过USB-DFU的方式刷CMSIS-DAP(见上面说的YAB)和恢复V3,不能使用SWD口来调试F723的开发程序了。老一点的版本还不会有锁死的问题。可能的坏消息是,如果将来STM厂家生产出来的STLINK-V3MINI都是锁死SWD口的,那样我们就很难用来干别的什么了。希望STM网开一面,出货时不要锁SWD口。现在市场上的可能是最后一批。
  k4 ~  k: b5 o5 v0 e- \$ a/ n  V/ i" E4 P. b8 b) g& P5 J( i0 o. T& M
& n7 d! N- H) Q
下面这个附件是最新的,与github一样。
2 Z3 z9 d# r; Y

CMSIS-DAP_for_STLINK-V3MINI-master20201011.zip

下载

15.33 MB, 下载次数: 471

评分

参与人数 1 ST金币 +20 收起 理由
role_2099 + 20 很给力!

查看全部评分

收藏 25 评论92 发布时间:2019-9-1 14:04

举报

92个回答
radio2radio 回答时间:2019-10-10 00:07:31
关于DAPLink的思考,
9 C: h0 ^- k) E2 l' G6 p6 w由于很想将现在的DAPLink移植到STLINK-V3MINI硬件上面,仔细研究了一下DAPLink的源代码。 说实话,我没有使用过DAPLink,随着对DAPLink理念的深入理解,我发现移植DAPLink到独立的硬件上面,比如这个STLINK-V3MINI,意义不大。 现决定放弃。( P, v: u; ~/ o* e/ c; W0 E' ^
  y/ h" d0 A' E( i5 t  W% v9 K8 @
DAPLink是CMSIS-DAP的延申,主要是用于IC厂家在推广一款MCU时提供的开发板/演示板上面使用。功能类似于STLINK在STM32各种开发板上面所提供的辅助开发接口。; F2 n3 _5 }+ e1 [

6 k) h8 X% u8 D4 y) H1- DAPLink的控制IC,内部称为HIC,常见的是K20DX, LPC11U35, STM32F103等等。 HIC主要功能是运行CMSIS-DAP,具有USB-MSC自我更新能力,和拖拽下载目标板程序的功能,新版本具有WebUSB下载目标程序的功能。, f1 r" R( w1 O( ~  j$ l' ~
6 M! f* s- t9 c5 B
2- DAPLink可以提供一种标准的上位机可控的下载接口,开发板供应商,第三方上位机软件开发商,可以包装成各种傻瓜式的开发环境。 目的是令整个系统容易使用,特别是给儿童使用。这与我们经常使用的IDE不是一码事儿。: a0 s8 Q: S  q3 }' W8 _
/ \: R) K! S9 Q# s& S, h7 q
3- DAPLink控制板,通常要与目标板一起提供给终端使用者,一般没有单独的设备出售。 因为不同的目标板MCU不同,MCU程序的下载算法也不同,这就使得DAPLink的控制软件也不同,虽然有USB-MSC自我更新能力, 也不能很方便地像JLINK/STLINK/CMSIS-DAP那样在不同的IC之间转换。( y- P: T( ?' e& S0 S2 |
) t' y8 }5 D/ u
4- DAPLink所用的HIC要便宜,固件要成熟。 这一点对开发板厂商很重要。 是不是USB2.0高速(高速的价格贵好几倍),不重要。+ B& P# ?5 v- A: D' ^3 b0 ?0 _
: W4 \, i% Q  [7 P" E5 x3 Z
: s% o0 j3 \/ d3 k
所以我..........放弃移植DAPLink,不搞了。 有时间继续优化CMSIS-DAP。
, y$ X/ d4 K! j7 R+ @顺便说一下, 使用独立的CMSIS-DAP, 特别是这个高速版的,很好用。2 {9 ^  A2 e* v6 W
$ H0 r/ {( E% s( Y  i
radio2radio 回答时间:2020-7-10 23:00:57
2020-07-10 一个好消息,还有一个可能的坏消息:' ~* N" @/ `! p7 w/ C6 O. t
好消息,有高手已经倒出了原厂的bootloader,并且分享出来(github),这样就可以在需要时恢复原厂的固件和STLINK-V3MINI功能了。
, A0 ]0 N8 [1 Y: G* E8 k# p建议重刷的网友,一定要用unprotected那个文件,以免不小心锁死F723的SWD口而不能再用于开发调试F723程序了(用作STLINK-V3或CMSIS-DAP,还是没有问题的)。* d* n' K2 x, |  U* A
-
: ], T% s. J/ L- P: o/ @. o. A3 R5 z7 n0 i+ _5 `$ p
坏消息,最新版的STLINK升级软件,en.stsw-link007_V2-36-26,只要一使用来升级这个V3的固件,立刻就会锁死F723的SWD口而不会有任何提示,此后,这个升级了的,就只能通过USB-DFU的方式刷CMSIS-DAP(见一楼所说的YAB)和恢复V3,不能使用SWD口来调试F723的开发程序了。老一点的版本还不会有锁死的问题。可能的坏消息是,如果将来STM厂家生产出来的STLINK-V3MINI都是锁死SWD口的,那样我们就很难用来干别的什么了。希望STM网开一面,出货时不要锁SWD口。现在市场上的可能是最后一批。
radio2radio 回答时间:2020-10-11 00:22:07
a691662 发表于 2020-10-8 15:304 p- l) f  N8 R: l  W
cmsis-dap跟daplink一样的,就是代码里几个宏改一下就行了,硬件更是一样的,建议直接用daplink最新的代码 ...
CMSIS-DAP是各种ARM IC通用的,与JLINK的基本功能用途相似。
2 I3 N7 x- e9 o8 E5 [" S6 @( j2 Y: l1 d+ P. l5 Z% h
daplink的固件,是某个系列的IC专用的,比如用于NXP的就完全不能用于STM32,用于F103的也不能用于F723。
6 \  T+ t9 A4 K0 m" [8 ?4 adaplink主要是给没有自己的xxLINK的IC厂家做开发板用的。
% w. a6 G6 H* mdaplink的基本功能含有完整的cmsis-dap,下列功能是daplink专有的,是他的优点,也是他不能通用的原因:
% N3 c* m* z- ?' b* A1. MSC拖拽下载目标板程序。
" ]/ K- s1 d' v2. MSC固件或Bootloader更新。/ A' j( P1 Y$ w( T
3. 有的可以实现WebUSB下载。1 [. w- ~' O; T/ c1 |
4. 有的可以实现WinUSB高速通信。
- e1 Y4 ?' h0 \9 U9 S$ R$ |/ w如果仅仅使用daplink的CMSIS-DAP的基本功能,那么他实质上就是CMSIS-DAP,称其为“使用了daplink”也无所谓。8 M0 x" l! t$ R$ A( S" I; f
Kevin_G 回答时间:2019-9-1 18:42:58
很赞
mmuuss586 回答时间:2019-9-2 09:07:50

8 K" J% m1 S" s这个没申请到;申请到了2块G4带ST LINK V3,还申请了了个ST LINK V3 TEST的
any012 回答时间:2019-9-2 13:44:24
竟然是半孔板。; B5 v& F# d. k1 m" b
---------------------------+ v9 m+ Z% ]% g
淘宝搜了下,有两家卖的,价格在130左右。8 x9 p) w( l1 z1 L+ Y4 s
stm32f723价格在60-70元?也太贵了吧。) S8 Z6 @1 |0 b1 z. [3 }. |
radio2radio 回答时间:2019-9-2 20:04:43
mmuuss586 发表于 2019-9-2 09:07
2 N. f5 e, a) h+ T, Z+ k这个没申请到;申请到了2块G4带ST LINK V3,还申请了了个ST LINK V3 TEST的 ...
  m+ `$ e! a! M: m! _9 m
您手上的G4板,或V3test,有原理图吗,我在找STLINK-V3的原理图。网上没找到。谢谢。
radio2radio 回答时间:2019-9-2 20:07:56
any012 发表于 2019-9-2 13:44
4 `8 \3 r9 I" w9 ?' n, a, q  C竟然是半孔板。
0 \3 X5 e% _/ N  x% m; K- Q---------------------------
6 Y/ G, n' G9 @7 b淘宝搜了下,有两家卖的,价格在130左右。

! i7 D) e' j' Q7 pTB是很贵,他们一次进货几百个,慢慢卖。以后,多一点卖家,估计很快就会降到100以内。
mmuuss586 回答时间:2019-9-3 09:26:43
radio2radio 发表于 2019-9-2 20:04
6 b1 R7 _& A; c! w  }# F' k您手上的G4板,或V3test,有原理图吗,我在找STLINK-V3的原理图。网上没找到。谢谢。 ...
7 U/ n- b' I% `) z" q5 M" J6 M
有的,发过
radio2radio 回答时间:2019-9-3 10:44:43
mmuuss586 发表于 2019-9-3 09:265 N9 W. `1 v# X# w6 ]# m
有的,发过

0 Z! y7 q3 W9 K) n1 C找到了,谢谢。
ersha4877 回答时间:2019-9-3 11:14:35
能支持其他家的芯片吗
radio2radio 回答时间:2019-9-3 11:58:55
ersha4877 发表于 2019-9-3 11:14
9 |9 O! i9 b: y& I能支持其他家的芯片吗

9 f( U! ]8 I/ ~/ F1 {改CMSIS-DAP或DAPLink,就行。
radio2radio 回答时间:2019-9-6 09:08:04
重要提醒:STLINK-V3仿真器的固件使用了加密技术!!! 任何使用普通的方法试图读取FLASH内容的,将会导致FLASH清空,当然也就失去了仿真器的功能.
/ ~& ~: S% x% q% ~可以重刷原厂bootloader,恢复STLINK-V3MINI的原厂功能。
+ f  J$ z$ W& y  \6 U2 W9 c5 }; j9 u9 C0 {% B' V0 x
generalcircuits 回答时间:2019-9-10 17:07:39
收藏一下,赞
kazuyuki 回答时间:2019-9-11 09:43:27
周围一圈邮票孔,是不是意味着还有其他用法?
radio2radio 回答时间:2019-9-11 14:02:07
kazuyuki 发表于 2019-9-11 09:43; w& I) M1 n2 {+ A$ L! b1 x5 S+ u
周围一圈邮票孔,是不是意味着还有其他用法?
' ?- G% @2 W% o7 c$ \9 u
正是!1楼有写。
radio2radio 回答时间:2019-9-13 10:14:41
2019-09-13 预报: 基于这个小板子的【高速CMSIS-DAP固件】已经接近完成,正在优化中,敬请期待。

所属标签

相似分享

官网相关资源

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