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

廉价仿真器STLINK-V2变身V2-1,J-LINK-OB,CMSIS-DAP,DAPLink  

[复制链接]
radio2radio 发布时间:2018-8-15 19:23
继续和大家探讨廉价仿真器,本期的重点是STLINK-V2硬件,有4种提升性能的方法。: S  `3 B6 P* y! J: F+ z

( J( \$ h( f; z8 F& P$ E. HTB买一个廉价仿真器STLINK-V2,大约10元左右,就是这种,有多种颜色的外壳。% d" W& x- ~0 S: p7 T# b+ e$ q
ST-LINK-V2.jpg 8 v' ~& j* W6 K5 L. v, d
! @7 w  r: X% u8 l& _1 @- J
受割开中大神的帖子启发以及有关固件,我终于成功将这个STLINK-V2手指:
7 Q2 ^  m) f+ @. e4 T1. 升级到V2-1,有了CDC功能和SWO功能,速度提升一倍,U盘不知干什么用的。或者,
, a( `( @1 i7 Y; X6 G4 e2. 升级到J-LINK-OB,有了CDC功能和SWO功能,速度提升一倍,享受J-LINK的性能稳定。或者,- d# E: L0 P" J: x$ ^4 I; h
3. 升级到CMSIS-DAP,也有了CDC功能和SWO功能,速度提升一倍,可以用在非STM32的IC上面,也很不错。! E$ ?) y' j, Y3 z  V
4. 升级到DAPLink,这个除了包含CMSIS-DAP+CDC+SWO,还有了ARM-MBED功能,并支持拖拽下载。& M( s$ w( J( h; }8 g

1 q2 m' b; K, g" f) g+ {- Q# R- C10元呀,10元呀,10元呀,重要的事情说三遍! 绝对比自己做板子值得。
- M  A% o4 w2 N1 r
( m& h) o+ F& v8 t% S废话少说,先看看下面的性能对比表:
/ w+ X) N8 ]. G7 ~6 e- _+ W9 P: | Low Cost Tools.JPG . S2 U8 D% S  B

8 x3 w# t- `- w/ E5 c! g' Q. x怎么样? 动心了的吧,还不快快下手。
* ^- m: U5 N* m2 M$ {$ @8 g, c重要提示:/ i$ W9 W& L# J0 M: x  t
坊间的STLINK-V2仿真器,外观一样一样的,里面的板子/IC封装可能有不同,同名的引出线的位置也有可能不同,建议买有10条引出线的,就是有2条3V3线 和 2条+5V线的这种,线多容易修改。
, S: T: \* U2 U; ?, ~) P$ b- `% s
我就在同一家店买过两次STLINK,两次收到的内部IC是不一样的。 有关IC,改V2-1和J-LINK-OB需要128KB的,大部分印着STM32F103C8T6的,也是内部有128KB FLASH,我买到的就是这样。如果不幸买到了真的,只有64KB FLASH,那就只能用在改CMSIS-DAP上面了。; n' E9 {! }0 k$ d4 S4 |% c: ]0 b

% D  s+ U* O4 i: ^1 S4 u3 N9 O3 u小心,最新网友测试发现(38楼~),如果买到的STLINK是用STM32F103CBU6, QFN的IC,这种就改不了V2.1和J-LINK-OB,只能改CMSIS-DAP。这种IC的板子,暂时还没有可以刷回去的固件,我附件里面的V2固件,据说也不能用。 一旦擦除,不能复原V2,只能用在改CMSIS-DAP或者DAPLink了。) d3 L+ R7 q- X

* v8 H/ O1 Y& x% Q要完成本文所述之DIY,需要会STM32的刷码,方法可能有很多,你的方法行不行,自己试一试。(我是用J-LINK + JFlash or JFlashLite刷的。IC选择STM32F103CBT6不带option bytes那个。起始地址是0x08000000)
% j- K' {3 N0 g# f9 b8 ~: l6 Z9 J2 ?# A: d! Z0 |: T; @
下面简述DIY的步骤,一部分软件的使用情况,请参考割开中的帖子:# a3 @. w4 z0 l2 A2 m+ ~+ M+ R2 }
1. STLINK-V2改V2-1,尝试刷附件中【2.STLINK-V2 to V2-1】里面的固件,版本号V2J28M18,如果成功,说明IC是128KB的。如果不成功,就只能改CMSIS-DAP了(见下面第4步)。
# f- J% s% B$ M0 D* B& \2. 用【3.STLINK-V2-1 Upgrade to V2J31M21】文件夹里面链接的CubeProgrammer软件,可以升级到V2J31M21最新版。注意,使用这个软件的时候,可能需要多次插拔USB手指,软件才能找到V2J28M18。
, A  x% X' h1 z2 J( P" P  B0 h: U3. 如果想刷成J-LINK-OB,请使用【4.STLINK-V2-1 Reflash to J-Link-OB】文件夹里面的软件。注意,使用这个软件的时候,也可能需要多次插拔USB手指,才能成功。
. W, R  F( K) ^. c6 ^, l0 S0 g4. 如果想刷成CMSIS-DAP,请使用【5.CMSIS-DAP_Firmware】文件夹里面的固件,刷写方法同第1步。这个固件是有原代码的,有兴趣的可以研究研究。& J; B/ H1 L; f& E, e: J. r
5. 如果想刷成DAPLink,请参考3NVN的帖子:移植DAPLink到STLink->CDC串口-SWO,留意10pin连接器引脚的定义。' B, V9 q. a; R9 R
5 K8 T) o3 C' L: H& q4 |
6. SWD调试功能测试,完成上面的3种之中任意一种之后,要使用Keil软件连接一个目标板,进行一些SWD调试常用的操作,测试没有问题后,再进行下面的改板动作。" k3 O; X: _7 k6 I; G4 [* Z1 f
7. 电路改动,为了要使用CDC/SWO功能,就要改动电路,把相应的连线接到外面来。一共需要改3条线,看图说话:/ M" o" M* _1 r5 {' _2 H; _
1a.jpg / Q" [% ?. {* ]' J5 a
2a.jpg ! `8 ]& `0 b. |1 c" I- F
3a.jpg
5 o3 f2 J" V! w  T+ L# \
( {. D! @' F" B5 N0 A注意,我的这个STLINK-V2手指,3V3和+5V线,底板上下是联通的,不容易分割开来,所以改动以后+5V改成SWO就会有两条,本来用一条线就可以了的。如果不使用SWO,+5V线可以不动。如果可以分开+5V/3V3的两条相同的线,就可以保留原来的RESET线,RESET线的功能也是有的,参考下面的链接2。电路改动方法,要根据您的手指的实际情况来决定,我的方法仅供参考。 总之是要将PA2/PA3/PA10三条线接出来,您尽情发挥好了。3 P/ p! F; c( ^* B6 H' C0 a. ^
" D" y% {2 B" t! K' p8 b5 c
好消息,如果使用旧版的JLINK驱动(V6.12j 或者更早的版本),此STLINK刷出来的J-LINK-OB在MDK里面可以使用于非STM32,比如NXP......参见本帖第21楼。 另外,在安装了V6.12j驱动后,刷码软件JFlash不能用(弹窗),但JFlashLite可以用。可能是因为是旧版的JLINK驱动,此JLINK-OB只能用于一部分型号的芯片,解决办法是刷解码后的JLINK-OB固件(F103用,网络上面有,别问我)。
( T- h( E& o5 R- P
(已经更新附件,里面含有JLINK驱动(V6.12j))。; U* i0 h' C8 h

: P2 \" a) c2 d' N4 i: Q其他参考贴:! t5 k1 s' f' d: T! n/ Y
1. STM32各种调试器大合集
+ c( S7 B2 ]' v0 X' `2. 移植DAPLink到STLink->CDC串口-SWO' ?  r; q1 y7 T+ M$ r
3.【源代码】ST-LINK V2仿真器改CMSIS-DAP,同时带有SWO和CDC功能
! J$ N1 ~" ~' N/ ^# c) x4 n+ y4. 【源代码】STM32F103C8T6最小板搞定CMSIS-DAP和SWO功能$ u: }5 T) L9 @. o; G

& e1 c9 \1 ?5 B- r' S
, ]1 R9 }9 T! \5 I+ h) g6 q7 x: r" L) B! r6 \7 J) K0 s: X

LowCostDebugTools20200509.part1.rar

下载

15 MB, 下载次数: 2175

LowCostDebugTools20200509.part2.rar

下载

14.35 MB, 下载次数: 1830

评分

参与人数 3 ST金币 +17 收起 理由
通宵敲代码 + 5 很给力!
子曰好人 + 8 很给力!
g921002 + 4 很给力!

查看全部评分

赞 1 收藏 38 评论146 发布时间:2018-8-15 19:23

举报

146个回答
saberarthur 回答时间:2019-8-19 11:21:24
大家好,我手上有真C8T6(Flash 64KB)的ST-LINK,按照大家的建议刷成了CMSIS-DAP,然后出现了奇怪的现象,IDE为uV5(5.28a),当我用这块CMSIS-DAP连接F030(M0内核)的板子时,可以正常下载。 QQ截图20190819111514.png
; ^- A7 A, l" Y7 \; t连接L432(M4)、F429的板子时则会显示SWD/JATG Communication Failure(通信失败),
9 B% [4 k" ?2 [7 |0 C& \$ A QQ截图20190819111537.png
8 ^! j: z6 X& D2 r4 t0 y- ^不连接任何开发板时也并非显示为no target,同样为Communication Failure。我想请问有人与我有同样的情况吗,大家的C8T6转CMSIS-DAP之后使用一切正常吗?
, V$ Q9 K# A1 k) ]5 O
7 N. g) N! T: E* J: G. Q7 r5 d8 E0 |6 m# Y3 V6 S! m: _
- g" s6 r+ r0 h! o4 v: e1 _
刷回ST-LINKV2时是可以正常下载的,也就是说L432、F429的SWD是没有关闭的。
/ ^# I& q# N- e* }
yuyuswh 回答时间:2019-4-14 07:50:12
按楼主和割れたリンゴ的方法把手头的BluePill折腾了一下,刷成J-Link OB(无CDC,看来买到真C8T6了)了,有时间试试能不能连接目标板吧!谢谢两位分享的方法。" N! S3 e( S! M6 W; o1 j% C; d
; m1 T  K' ^+ C7 T" U
另外,发现用CMSIS-DAP在CoFlash下下载2.STLINK-V2 to V2-1固件,如果选C8T6的话,会提示错误,如果选CBT6的话,会把C8T6锁死,用ST-Link V2在STM32CubeProgrammer下连接后会自动识别为103x显示128KB的Flash,可以下载2.STLINK-V2 to V2-1固件,不过在升级V2-1固件时会提示空间不足,看来真的只有64KB啊!
# D+ O+ r7 F1 w0 ~$ b- z: u2 t+ F% w
前面锁死后,用STM32 ST-LINK Utility无法解锁,连都连不上,但在STM32CubeProgrammer下可以解锁。3 i3 |/ K( Q1 u3 g# }' o8 A
radio2radio 回答时间:2019-6-2 16:41:24
本帖最后由 radio2radio 于 2019-6-2 22:19 编辑   o" u7 z0 }; a# y
edmundlee 发表于 2019-6-2 14:41
1 g& R4 W4 f& }+ E" s2 |( i( M4 Y, W想问一下楼主, STM32F103C8T6是怎样测出其真实 Flash Size的, 因为我想把一块STM32F103C8T6开发板改来试 ...
, I- x  [. A: Z
参考82楼的flash地址,试一试用STLINK工具软件的查看内存的内容,应该可以看到。
+ T  ?3 Z: f7 Z$ A" H实际上,您用v2.1的固件直接写flash就行,如果是128KB的写入正常,64kB的就会报错。9 c8 j  ?; H! C) A

" k: ~- R  g7 H% L4 o: [# c1 T如果您要用普通的F103C8T6的开发板,改成STLINK-v2.1,有点麻烦,您需要对照v2.1的电路图改线路,有几条GPIO要用电阻连接。8 [) |4 Q: {8 \- C/ n  g. H- s% K
还不如买个新的STLINKv2来改。& f3 z; c5 M# ^8 r
/ @3 z1 v, }3 E- A+ `; T* E; c  Q
radio2radio 回答时间:2018-8-15 19:46:52
本帖最后由 radio2radio 于 2018-8-15 23:33 编辑
& }: t- B! G4 {1 {! p" S$ t" U: T. I8 H" r  X% m1 X
不好意思,【图3a】和【对比表】的位置有错,容后再改。 (改好了)
KEY1 回答时间:2018-8-15 20:38:30
看来还是V9强大啊
radio2radio 回答时间:2018-8-15 20:59:29
本帖最后由 radio2radio 于 2018-8-15 21:03 编辑
. V/ ~1 U( n/ d- W3 b0 N! c8 D0 H$ f
50031185 发表于 2018-8-15 20:38: J; z+ K8 K: ^0 _, g
看来还是V9强大啊

# w% ]$ {, b8 }; n  v1 c0 o1 ~/ Y是呀。 就是体积大,但是速度快,价格可以接受。我也有V9,刚刚买来时是可以自动升级的,结果我自己瞎折腾刷固件,结果现在不能自动升级了,虽然不影响使用。7 z: t  }. {9 t; L: C
其实,我现在最常用的就是自己做的这些10元手指,烧坏了也不可惜,主要还有携带方便。 V9成了备用的。
2 W( [) L' O8 m9 r/ r; {1 I
7 ?/ K2 R2 n8 V# x: n% p4 G比V9好的J-LINK,就是新出的V10了,很贵,使用USB高速接口。我还没有使用过,不知道是不是真有优点。
xmstudio 回答时间:2018-8-15 22:06:09
我有个Jlink OB,主控是STM32F103C8T6,原机只有SWD,我想改ST-LINK V2然后尝试一下STM8,感觉几个引脚全部要飞线啊,这样改是不是很麻烦
radio2radio 回答时间:2018-8-15 22:20:48
xmstudio 发表于 2018-8-15 22:06% K$ R; u+ L+ |$ q
我有个Jlink OB,主控是STM32F103C8T6,原机只有SWD,我想改ST-LINK V2然后尝试一下STM8,感觉几个引脚全部 ...
$ G/ m: ~+ I1 D% p
这您不需要改了,花10元钱再买一个STLINK-V2,STLINK-V2原本就是可以用于STM8的吧,买回来就能用。' X6 Y* e) i6 F: \8 @# j
- a5 R8 O$ [" }, r# F
您的Jlink-OB,是只有SWD的4个引脚那种吧,需要外加几个的引脚,不好改。
日正当中 回答时间:2018-8-16 10:06:56
学习下!刚开始准备学习STM32
xiaolingoei 回答时间:2018-8-16 12:25:28
学习一下,一直都在用J-Link,看一下其他的也不错
shensc 回答时间:2018-8-17 10:09:15
学习一下,谢谢分享~!
STM1024 回答时间:2018-8-17 17:01:18
没有对比就没有伤害,JLink功能甩了STlink几条街……
/ C" U# I9 J* H. u$ @  D价格也是
& B! F/ N& W! G8 [
( {+ B1 Z0 V5 `不过DIY的话,做什么都是要支持一下的。2 W4 }) x; _+ s/ e% n; j
电子星辰 回答时间:2018-8-17 17:09:46
不错,赞一个
xmstudio 回答时间:2018-8-18 12:23:38
radio2radio 发表于 2018-8-15 22:20  q/ B6 ?& R. z8 x, n
这您不需要改了,花10元钱再买一个STLINK-V2,STLINK-V2原本就是可以用于STM8的吧,买回来就能用。
- g. B& y6 f- f& Z& Q3 }. W% N4 G, u
您的 ...

1 v, T4 h1 p4 h$ L& w2 M- ]$ A果然不好改,不过我还有多余的STM32F103C8T6最小系统板,那个应该可以改
g2004-148848 回答时间:2018-8-18 16:11:23
楼主辛苦谢谢分享
radio2radio 回答时间:2018-8-18 22:13:48
xmstudio 发表于 2018-8-18 12:23
, H0 W. a( ?6 S/ A, i1 D! b果然不好改,不过我还有多余的STM32F103C8T6最小系统板,那个应该可以改

/ N) f8 K9 G. F, Q) F% n: q& \F103最小系统板,可以改CMSIS-DAP用于Cortex IC,但是,改成STLINK-V2用来烧STM8就麻烦了,有几条线要连接。
5 D3 w9 p$ o* `$ w1 T6 I' b4 A1 ~; b: d: Q
如果您是要STM8的功能,还是建议买一个STLINK-V2,或者STM8专用的,也不贵,别改了。
ningyaohan 回答时间:2018-9-10 14:05:06
谢谢分享

所属标签

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