Jlink的三线制SWD方式连接STM32芯片无法识别的解决方案
9 O6 z- y; M8 F( V& e! g+ T. a# f
" ~5 m. y$ p) a6 t0 J5 NJlink v9硬件+ boot 完全资料4 T) {$ z! l( w* c, V! O
+ Y; F7 R' G# L
( Z) b; C! G4 |6 a9 D5 k# j
3 l& K7 B" w& b. K* U很多时候,我们做在线仿真的时候,有时候能用Jtag,有时候是Jlink,有时候又是ST-Link(点击下载),哈哈,这么多接口,你分得清吗。。。
2 p5 s. {7 d) C* y5 ^; w/ q3 @6 n1 M" Q) F! g+ K
对了,还有本文提到的SWD。& E8 p$ O4 u; X
SWD 仿真模式概念简述; Y* i, I$ M: j. G h" s7 [- }
' A5 o: ?- C0 ^6 ]
一、SWD 和传统的调试方式区别
; N+ M- Q% {$ `( { @
9 K$ O8 _! D) r* i9 [+ w 1. SWD 模式比 JTAG 在高速模式下面更加可靠。 在大数据量的情况下面 JTAG 下载程序会失败, 但是 SWD 发生的几率会小很多。基本使用 JTAG 仿真模式的情况下是可以直接使用 SWD 模式的, 只要你的仿真器支持。 所以推荐大家使用这个模式。6 g6 U& `' e# l6 T2 c$ _! n
2. 在大家 GPIO 刚好缺一个的时候, 可以使用 SWD 仿真, 这种模式支持更少的引脚。2 a7 s. w/ b s1 H( w# R
3. 在大家板子的体积有限的时候推荐使用 SWD 模式, 它需要的引脚少, 当然需要的 PCB 空间就小啦! 比如你可以选择一个很小的 2.54 间距的 5 芯端子做仿真接口。2 `% K$ W$ f% \ w
( z, h% |5 _; N+ v* `* s' o& E' B
二、仿真器对 SWD 模式支持情况
8 T% l* r2 ]) X' v9 Q1 G( ?$ ~% u. G; I% A l* g8 g3 z
1. 市面上的常用仿真器对 SWD 模式支持情况
" G8 H; C D: |; j# v, O8 x) y% w9 t* _) U! l e3 a
(1) JLINKV6 支持 SWD 仿真模式, 速度较慢。
( J: h0 A* |7 r5 v1 V D(2) JLINKV7 比较好的支持 SWD 仿真模式, 速度有了明显的提高,速度是 JLINKV6 的 6 倍。
$ R" V5 c7 _3 ?0 } f (3) JLINKV8 非常好的支持 SWD 仿真模式, 速度可以到 10M。
6 D( z9 R# f5 h A(4) ULINK1 不支持 SWD 模式。
( M) n; f0 }+ M8 U; L5 e0 V6 W' q* y(5) 盗版 ULINK2 非常好的支持 SWD 模式, 速度可以达到 10M。8 n( b2 F; u$ b0 b
(6) 正版 ULINK2 非常好的支持 SWD 模式, 速度可以达到 10M。8 a4 b, a6 O8 k) |
本开发板使用三线制SWD(GND,SWDIO,SWCLK)。
% `* ?) j, `; E; w' N: V0 N L) {% | |
- w- e- s$ R; k3 b7 G' e6 A
http://www2.keil.com/coresight/coresight-connectors/
目标板已经上电的情况下, ULINK 只需要3跟线连到目标板:5 |: \* Z" E4 S* S5 r' j! I6 Z
SWCLK SWDIO GND.5 v2 |8 a- N0 \5 J0 `1 t- t
& X0 b4 K6 `1 o
但是部分MCU下载完后要按复位才能跑起来,
关键在于知道什么样的接口有什么样的特性,有的jlink和jtag都能用,可是选择什么合适?
嗯,用的基本上都是一个端口,只是在配置上和使用的引脚上有区别
通用的,也看仿真器的支持吧
我们实验室一直用SWD,这样板子设计可以节省空间