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

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

[复制链接]
radio2radio 发布时间:2019-9-1 14:04
2019-09-22 源码发布,同步github,拷贝见附件。期待同好一起改进,很好玩呀。1 i+ M1 ]9 M( \- q, [! l  I
2019-09-29 更新,WinUSB+VCP做到了,和DAP v1+v2共存版,即是WinUSB与HID同时有。
- }0 S, E, ]* f, v2019-12-22 更新,SWD clock 达到18MHz(最大)。+ i( Z! D5 S+ Y7 `4 P! k3 B6 C$ \7 W. i' C
2020-07-10 一个好消息,一个可能的坏消息。(见1楼底部)。
8 B- |- U( }5 m2020-07-25 新的Bootloader已经完成(YAB),可以在不破坏原厂Bootloader的情况下,刷CMSIS-DAP。甚至可以刷入两种版本。; Z1 {( ^2 o) P" m  G3 ]. k
如果想用回STLINK-V3,随时都可以再刷回来(小心,最好不要升级V3J6M2及后续版本,会锁死F723的SWD口)。
( e4 d9 E& Y% v) b! ^: t

. e0 F! R; B. j# L) h5 ?http://github.com/RadioOperator/CMSIS-DAP_for_STLINK-V3MINI
1 A) G$ j, Y/ T$ d+ D7 G6 a: Q: H7 r
7 I9 H# J1 }3 F, g8 EYAB:
" L+ ^9 p6 J( Ghttps://www.stmcu.org.cn/module/forum/thread-625998-1-1.html
. A' p! C6 c- E! `+ p( Hhttp://github.com/RadioOperator/Yet_Another_Bootloader. r* `% q; l+ p! z. N7 y  g% U

6 L7 N. l% F  n人生贵在折腾。
( G* A% M' M# K! ~! y2 N* u6 D, HST公司推出了STLUNK的V3版本有一段时间了,全功能的V3有点小贵,300大元左右吧。偶然发现新出的STLINK-V3MINI小东西,具有我最常用的基本功能,价格便宜(标准价不到10美刀),果断出手,现将初步的使用情况和思考分享一下。
: n1 |" X7 p0 f; g7 F  e! l( ~8 L1 }, K5 ]
优点,USB2.0高速接口,比上一代V2,速度快很多,SWD/SWO连接速度可达24MHz,VCP的速度15MHz。 (留意,烧录IC的下载速度还取决于目标板的MCU速度)。尺寸超小,PCB只有15x30mm。  `0 y2 s5 |( G( @8 r% T" s
缺点,只有1.27mm的14pin连接器插座,这对于我们习惯于使用杜邦线的,不方便。没有3.3V电源输出。被迫小改造了一下。" e! W0 D7 \) q* {& b
# K/ I3 ]' ]3 W7 P8 l  [
官网:http://www.st.com/en/development-tools/stlink-v3mini.html
0 C3 C/ z% Y, N' O, C1 x
4 @' d5 f2 }1 ~: u' f* {% q就是它:& {+ u! O: F* z. r
p.jpg
6 Q4 w* q2 d* N5 H4 `- K- {2 T: O1 b
改造后:留意我加了一条红色的连线。/ _( }; u5 I  Y# J
IMG_20190831_222637.jpg
, o+ Y$ ]# x  v# |" j9 P& _ IMG_20190831_222702.jpg
7 R, ^( ?* h3 e6 }0 S7 ?+ ^3 K6 W" j& }' F& N! h% P( X
从我实际使用的情况看,这个V3虽然是USB高速接口,也和其他具有USB2.0高速接口的仿真器一样,高速的优点并不明显。特别是大家常用的小IC,ROM不大,内核速度不高,V2仿真器足够使用,价格还便宜很多。 但对于ROM大于512KB的大型应用,应该能够提高工作效率。
# O. j  ?* J* E# v( `5 c  ]4 [0 [( }% k1 b
后续可能的发展:
0 W/ G# t7 O; @1. 暂时还不能转换成J-LINK,Segger的转换软件还不支持,以后有没有不知道。1 Y' u; c" Q) `- B5 B
* z: t4 v6 ]/ V. }, ]6 }) M9 r
2. 二次开发,主控IC是BGA的STM32F723IEK6,216主频(据说可超频到300MHz以上,需散热),512KB-Flash,256KB-RAM,内置USB高速接口等,在外接器件要求不多的场合,可能可以用来做核心板使用。8 B  M# s( e# J, D
* n! Y  C8 {, l  F6 g7 ]' j
3. 二次开发,改成高速USB的CMSIS-DAP / DAPLink仿真器,硬件是现成的,以便用于其他厂家的IC开发。
/ n& C) o# n, |7 _
$ v3 K3 o. ^. e! K4. 做成CMSIS-DAP以后,保留SWO和VCP(UART)功能,进一步还可以附带USB转 SPI / I2C / CAN / GPIOs功能,等等。硬件也是现成的,Flash足够你用。麻烦在于PC上位机软件,如果是专用的就没什么意思了。
1 f/ ^5 j, _2 Y7 E& q
4 ~& r+ s1 P% [2919-09-22更新,CMSIS-DAP源码,见附件。
* g1 M: p) Q) v, u! ?+ f4 ^" U重要的一张图,花了我很多时间才搞出来的:, A4 e# ^  ^0 d3 T) L0 h0 i
STLINK-V3MINI_GPIOs_v4.JPG 0 \, C2 X& q8 d' |. G  ]+ d
4 _% I8 u0 ^1 w/ {4 x7 `
CMSIS-DAP有两个版本,一个就是大家用过的HID版本,经常称为CMSIS-DAP v1,我的这个v1加上了VCP(CDC)功能。9 [4 m& Z1 |9 m0 V, i; F( F
8 W3 x% L: E! ^2 Q- |) |
另一个不太常见的WinUSB版本,称为CMSIS-DAP v2。与HID版本相比的优势在于它使用了高速的WinUSB数据传输模式。同样具有Windows免驱动安装的好处,目前主流的IDE如KEIL/IAR/pyOCD都已经支持,但由于高速USB2.0的CMSIS-DAP仿真器市面上并不多,还没有流行开来。
# U* G( c! L0 y% s8 x6 j. B, Y& C+ j0 x7 q6 E
WinUSB在设备管理器里面的位置,与STLINK出现在一起(我发现STLINKv2和v3,都是使用WinUSB模式传输数据):4 ]0 {$ r" V' s2 U) |  Y  u  |
WinUSB Device.jpg ( J  ^/ C; m! k0 w

  K4 l$ R9 ]4 Z, A5 G: {/ V# s* u
5 z2 J! [3 D/ D还有许多方面可以玩的,比如:$ R( `3 E4 E8 W: s; f: P$ c1 B
- DAPLink版,有熟悉DAPLink的朋友不妨试一试,这个我不搞了,原因见下面分析。
- @  F9 _7 f3 ~' J* w% v - Bootloader,要做到USB拖拽固件下载。 这个已经搞好了(YAB),还衍生出“绿色”版本的,CMSIS-DAP和STLINK-V3,可以刷来刷去,全部USB口操作,不用连接SWD口线。
; k+ q: {6 r( ~: s- n - 更换USB驱动库,更换架构,比如基于STM32CubeMX的,等等。
& @" G, `( z. `1 j* R5 [2 M - 还有......我们有512KB的Flash,能做很多很多事情。
0 P/ n) G% l. Z  z) [5 n
5 x8 p0 p, n7 d8 X硬件方面,如果谁能买到便宜的IC,自己打板做一批,F723和F733都可以用,还有LQFP144和UFBGA176可选,TB大卖,别忘了送给我1块板子玩玩。
4 j3 g+ v( |3 g如果真的自己做板,千万别照抄,可以改进的地方很多。3 [/ R+ j: r* c9 y" y
9 z) `5 ]0 X! L+ C
CMSIS-DAP.jpg
' i1 V5 I3 z2 i. i; w/ c
! i$ m. S9 R6 X; m6 o
1 v9 X" C) E# a+ J% K" q) u' w重要提醒:STLINK-V3仿真器的固件使用了加密技术!!! 任何使用普通的方法试图读取FLASH内容的,将会导致FLASH清空,当然也就失去了原厂STLINK仿真器的功能。 现在可以重刷Bootloader自行恢复STLINK-V3MINI(2020-07-10)0 w- E! z+ B( D; X6 d( H, u$ f
* {) h: Y7 {# L
% l# }9 D6 i1 w
(以下内容与35楼相同,方便大家), y7 U6 I# l, k" C
关于DAPLink的思考,( C8 n' m3 o+ l, S2 x2 k
由于很想将现在的DAPLink移植到STLINK-V3MINI硬件上面,仔细研究了一下DAPLink的源代码。 说实话,我没有使用过DAPLink,随着对DAPLink理念的深入理解,我发现移植DAPLink到独立的硬件上面,比如这个STLINK-V3MINI,意义不大。 现决定放弃。( J" j  _9 a) i* C( ~, ^
4 [' U9 o. A1 c) q
DAPLink是CMSIS-DAP的延申,主要是用于IC厂家在推广一款MCU时提供的开发板/演示板上面使用。功能类似于STLINK在STM32各种开发板上面所提供的辅助开发接口。
* K9 |5 A8 p% [
" b% F. g: W/ b* P" q+ [& p; p1- DAPLink的控制IC,内部称为HIC,常见的是K20DX, LPC11U35, STM32F103等等。 HIC主要功能是运行CMSIS-DAP,具有USB-MSC自我更新能力,和拖拽下载目标板程序的功能,新版本具有WebUSB下载目标程序的功能。* q+ b+ d. h: G" l3 @% K0 l+ k- Z% f

; \$ F; p/ V9 u$ t+ Y! H. v3 V2- DAPLink可以提供一种标准的上位机可控的下载接口,开发板供应商,第三方上位机软件开发商,可以包装成各种傻瓜式的开发环境。 目的是令整个系统容易使用,特别是给儿童使用。这与我们码农经常使用IDE来开发软件完全不是一码事儿。( L  U" r, v0 ?0 G
+ r3 F; M; |& C  P1 a# S
3- DAPLink控制板,通常要与目标板一起提供给终端使用者,一般没有单独的设备出售。 因为不同的目标板MCU不同,MCU程序的下载算法也不同,这就使得DAPLink的控制软件也不同,虽然有USB-MSC自我更新能力, 也不能很方便地像JLINK / STLINK / CMSIS-DAP那样在不同的IC之间转换。
5 j# c4 U4 E/ T; D, w" l" I9 x, `$ ~2 X# Y% J! \
4- DAPLink所用的HIC要便宜,固件要成熟。 这一点对开发板厂商很重要。 是不是USB2.0高速(高速的价格贵好几倍),不重要。) a) v1 x- O: p- L6 G' F( o0 ?" M
" D! ~1 s) G& i* W$ t
所以我..........放弃移植DAPLink,不搞了。 有时间继续优化CMSIS-DAP。
- L4 T; l. r% ]0 I$ h! s 顺便说一下, 使用独立的CMSIS-DAP, 特别是这个高速版的,很好用。
) F0 ~$ Z7 ~  l, V; C

; N# ^+ Q0 O4 ~: ]0 b9 D
1 z8 S& O; F/ }7 }6 p$ ]
2020-07-10 一个好消息,还有一个可能的坏消息:8 s2 O  J4 h- x! k( L
好消息,有高手已经倒出了原厂的bootloader,并且分享出来(github),这样就可以在需要时恢复原厂的固件和STLINK-V3MINI功能了。
* d0 C# m+ \9 [建议重刷的网友,一定要用unprotected那个文件,以免不小心锁死F723的SWD口而不能再用于开发调试F723程序了(用作STLINK-V3或CMSIS-DAP,还是没有问题的)。8 U6 J; ?, _) R3 D' b5 E
坏消息,最新版的STLINK升级软件,en.stsw-link007_V2-36-26,只要一使用来升级这个V3的固件,立刻就会锁死F723的SWD口而不会有任何提示,此后,这个升级了的,就只能通过USB-DFU的方式刷CMSIS-DAP(见上面说的YAB)和恢复V3,不能使用SWD口来调试F723的开发程序了。老一点的版本还不会有锁死的问题。可能的坏消息是,如果将来STM厂家生产出来的STLINK-V3MINI都是锁死SWD口的,那样我们就很难用来干别的什么了。希望STM网开一面,出货时不要锁SWD口。现在市场上的可能是最后一批。6 B# `3 T: J4 f( ~# u
8 {. d/ k, t! V

$ j; P6 U7 Y" k6 Y; G; G下面这个附件是最新的,与github一样。
# K' O* V0 K; x  G( E/ }

CMSIS-DAP_for_STLINK-V3MINI-master20201011.zip

下载

15.33 MB, 下载次数: 492

评分

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

查看全部评分

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

举报

92个回答
radio2radio 回答时间:2019-10-10 00:07:31
关于DAPLink的思考,
9 p5 c* t8 R% h由于很想将现在的DAPLink移植到STLINK-V3MINI硬件上面,仔细研究了一下DAPLink的源代码。 说实话,我没有使用过DAPLink,随着对DAPLink理念的深入理解,我发现移植DAPLink到独立的硬件上面,比如这个STLINK-V3MINI,意义不大。 现决定放弃。$ [6 [3 T2 ^9 }: [; [* q
" [+ v$ A4 [4 T" D8 L
DAPLink是CMSIS-DAP的延申,主要是用于IC厂家在推广一款MCU时提供的开发板/演示板上面使用。功能类似于STLINK在STM32各种开发板上面所提供的辅助开发接口。- ]* R) ]/ e/ C; K% d

4 O/ }+ R, r3 h/ z) z+ ]4 \* ~1- DAPLink的控制IC,内部称为HIC,常见的是K20DX, LPC11U35, STM32F103等等。 HIC主要功能是运行CMSIS-DAP,具有USB-MSC自我更新能力,和拖拽下载目标板程序的功能,新版本具有WebUSB下载目标程序的功能。7 `/ w9 P2 y9 X* U

: G& U$ Y; A+ [1 L5 X3 q2- DAPLink可以提供一种标准的上位机可控的下载接口,开发板供应商,第三方上位机软件开发商,可以包装成各种傻瓜式的开发环境。 目的是令整个系统容易使用,特别是给儿童使用。这与我们经常使用的IDE不是一码事儿。
2 E! D$ D5 Y, ]% `7 L$ K2 F- }# S' F6 d
3- DAPLink控制板,通常要与目标板一起提供给终端使用者,一般没有单独的设备出售。 因为不同的目标板MCU不同,MCU程序的下载算法也不同,这就使得DAPLink的控制软件也不同,虽然有USB-MSC自我更新能力, 也不能很方便地像JLINK/STLINK/CMSIS-DAP那样在不同的IC之间转换。; I1 n$ W) i+ @: ^. u
2 `( c( n( h. ?! t0 y4 ^
4- DAPLink所用的HIC要便宜,固件要成熟。 这一点对开发板厂商很重要。 是不是USB2.0高速(高速的价格贵好几倍),不重要。# u- t" X; l" H$ v# j. }9 K- G

) r" E# N6 m7 l8 c
2 Y$ o! ~) }: L$ H所以我..........放弃移植DAPLink,不搞了。 有时间继续优化CMSIS-DAP。8 a9 U8 s* r/ Y9 `+ g
顺便说一下, 使用独立的CMSIS-DAP, 特别是这个高速版的,很好用。
8 w8 I# ]3 A* X; _* h/ o: n
& J+ `+ g# k8 `) N* t7 ^7 ?
radio2radio 回答时间:2020-7-10 23:00:57
2020-07-10 一个好消息,还有一个可能的坏消息:" Z8 ?: _6 Q( d1 p8 h: @3 e2 m
好消息,有高手已经倒出了原厂的bootloader,并且分享出来(github),这样就可以在需要时恢复原厂的固件和STLINK-V3MINI功能了。* j& o! ^+ K# H" k, @
建议重刷的网友,一定要用unprotected那个文件,以免不小心锁死F723的SWD口而不能再用于开发调试F723程序了(用作STLINK-V3或CMSIS-DAP,还是没有问题的)。! k% V" @- L' N* A6 O$ J
-! V' a: [7 J, z/ P- e/ b
2 K4 K" [3 x+ H" r) A( S" O
坏消息,最新版的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:30
# S2 K- S/ W" J+ ncmsis-dap跟daplink一样的,就是代码里几个宏改一下就行了,硬件更是一样的,建议直接用daplink最新的代码 ...
CMSIS-DAP是各种ARM IC通用的,与JLINK的基本功能用途相似。
9 \4 l1 z7 J' A! {5 L: e% r
$ J& @2 J/ f6 l/ b. n+ Cdaplink的固件,是某个系列的IC专用的,比如用于NXP的就完全不能用于STM32,用于F103的也不能用于F723。
% C# ^7 @. f) p, |8 B; q3 ydaplink主要是给没有自己的xxLINK的IC厂家做开发板用的。
! o* Z$ R" Q4 A4 V" w6 v, P! Ldaplink的基本功能含有完整的cmsis-dap,下列功能是daplink专有的,是他的优点,也是他不能通用的原因:
: I( H8 o3 o. ^) [, d1. MSC拖拽下载目标板程序。
$ _- i& F, \3 B* S, d4 R2. MSC固件或Bootloader更新。
1 r( x& b! N* g# A2 W& x3 L3. 有的可以实现WebUSB下载。/ A" Z0 J: w) ~
4. 有的可以实现WinUSB高速通信。
" l% z6 \: s# a- f5 N如果仅仅使用daplink的CMSIS-DAP的基本功能,那么他实质上就是CMSIS-DAP,称其为“使用了daplink”也无所谓。* E1 r* i1 a9 B- E! {
Kevin_G 回答时间:2019-9-1 18:42:58
很赞
mmuuss586 回答时间:2019-9-2 09:07:50
0 x: H3 Y# p) c! t) s! I
这个没申请到;申请到了2块G4带ST LINK V3,还申请了了个ST LINK V3 TEST的
any012 回答时间:2019-9-2 13:44:24
竟然是半孔板。' f6 O5 N2 s9 q
---------------------------
. h0 M0 U9 _" \2 k5 W; V: G淘宝搜了下,有两家卖的,价格在130左右。5 m! t$ G; u) |, ~; s
stm32f723价格在60-70元?也太贵了吧。! b) \; N) O3 Z1 P, P1 @
radio2radio 回答时间:2019-9-2 20:04:43
mmuuss586 发表于 2019-9-2 09:077 l0 P. U7 `+ F- U' R  m6 P* x8 O
这个没申请到;申请到了2块G4带ST LINK V3,还申请了了个ST LINK V3 TEST的 ...

7 E% I1 I, M/ j9 e3 R1 h- n  A2 E您手上的G4板,或V3test,有原理图吗,我在找STLINK-V3的原理图。网上没找到。谢谢。
radio2radio 回答时间:2019-9-2 20:07:56
any012 发表于 2019-9-2 13:44
# ^; ^4 F, e4 b; ~* n2 X8 n! Q竟然是半孔板。0 c1 \6 s! _/ J4 E1 Q# u6 i
---------------------------' b. f9 g8 A, t9 I/ Y
淘宝搜了下,有两家卖的,价格在130左右。
/ c9 }4 {' a5 H6 Q: R* N& c. ?7 p
TB是很贵,他们一次进货几百个,慢慢卖。以后,多一点卖家,估计很快就会降到100以内。
mmuuss586 回答时间:2019-9-3 09:26:43
radio2radio 发表于 2019-9-2 20:04" J' }9 c. b4 u' k. n! I6 Z
您手上的G4板,或V3test,有原理图吗,我在找STLINK-V3的原理图。网上没找到。谢谢。 ...
8 v  p7 s8 Q3 b# H1 |1 _
有的,发过
radio2radio 回答时间:2019-9-3 10:44:43
mmuuss586 发表于 2019-9-3 09:26
* p  `6 Q7 d9 K* H, g& ]0 a* \( j有的,发过
8 F3 J% n+ u; g9 S
找到了,谢谢。
ersha4877 回答时间:2019-9-3 11:14:35
能支持其他家的芯片吗
radio2radio 回答时间:2019-9-3 11:58:55
ersha4877 发表于 2019-9-3 11:149 C9 `0 u7 C" I/ U) H( Z' Z+ t. F4 [0 t
能支持其他家的芯片吗
% y: M( ]2 }8 `" ~5 \% Z9 a
改CMSIS-DAP或DAPLink,就行。
radio2radio 回答时间:2019-9-6 09:08:04
重要提醒:STLINK-V3仿真器的固件使用了加密技术!!! 任何使用普通的方法试图读取FLASH内容的,将会导致FLASH清空,当然也就失去了仿真器的功能.
+ V; [, R$ ]$ C& ?5 ]可以重刷原厂bootloader,恢复STLINK-V3MINI的原厂功能。
0 t" K: L! K! L, R: b' ]) u4 T- L9 w  S
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
) F; U& k, W$ m7 a" V* e周围一圈邮票孔,是不是意味着还有其他用法?
- r0 m$ x' u' a( m
正是!1楼有写。
radio2radio 回答时间:2019-9-13 10:14:41
2019-09-13 预报: 基于这个小板子的【高速CMSIS-DAP固件】已经接近完成,正在优化中,敬请期待。

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版