Jlink的三线制SWD方式连接STM32芯片无法识别的解决方案
9 ?& T+ H& D- Z: k
2 ?! c% f2 N+ Z* N, R5 a) BJlink v9硬件+ boot 完全资料1 c' s( A3 i- ?& H- r6 D5 @5 ?6 S
. q# O6 I" K+ \( D. S7 M
! O7 t1 ]( L* e9 h4 c* y
; p3 \8 ?) M% @& G) [很多时候,我们做在线仿真的时候,有时候能用Jtag,有时候是Jlink,有时候又是ST-Link(点击下载),哈哈,这么多接口,你分得清吗。。。
8 a# `( T$ E5 t+ U( P( p* x/ k9 r9 u7 `$ ~; I- j
对了,还有本文提到的SWD。
( C4 b4 d1 }+ z* ?! G9 ^5 oSWD 仿真模式概念简述6 I7 Q% l: H, M0 Q9 |
& |8 |1 ~1 Q* R. l. j, a一、SWD 和传统的调试方式区别; I3 h3 b7 l6 l8 ]7 l
1 ^, `) m" |0 Z* |% D% J- h5 q
1. SWD 模式比 JTAG 在高速模式下面更加可靠。 在大数据量的情况下面 JTAG 下载程序会失败, 但是 SWD 发生的几率会小很多。基本使用 JTAG 仿真模式的情况下是可以直接使用 SWD 模式的, 只要你的仿真器支持。 所以推荐大家使用这个模式。% o- F, G l5 R: I1 x1 j
2. 在大家 GPIO 刚好缺一个的时候, 可以使用 SWD 仿真, 这种模式支持更少的引脚。( Y$ \/ l- I2 l: V9 T+ [2 v# v1 F
3. 在大家板子的体积有限的时候推荐使用 SWD 模式, 它需要的引脚少, 当然需要的 PCB 空间就小啦! 比如你可以选择一个很小的 2.54 间距的 5 芯端子做仿真接口。, _/ E9 V# j, Y+ m c! L
g, j2 c0 \$ m0 U" i7 N% p d
二、仿真器对 SWD 模式支持情况( [& I# O0 n8 I G0 [' ?5 h; }
: ]0 C7 V! e6 f l3 j2 z
1. 市面上的常用仿真器对 SWD 模式支持情况
! q) B3 r5 g1 a8 |
7 _6 U, X: f& q+ N(1) JLINKV6 支持 SWD 仿真模式, 速度较慢。
( ]4 W5 U! z3 G7 c(2) JLINKV7 比较好的支持 SWD 仿真模式, 速度有了明显的提高,速度是 JLINKV6 的 6 倍。! Z- e5 L z1 x8 l2 X
(3) JLINKV8 非常好的支持 SWD 仿真模式, 速度可以到 10M。
. ]- N# @: b, E5 [' K/ i; x(4) ULINK1 不支持 SWD 模式。( x# W- f; F6 s9 d, f
(5) 盗版 ULINK2 非常好的支持 SWD 模式, 速度可以达到 10M。: @0 K, R- C! @. M& \& J' O; o
(6) 正版 ULINK2 非常好的支持 SWD 模式, 速度可以达到 10M。
% t3 d9 j: \9 b0 b本开发板使用三线制SWD(GND,SWDIO,SWCLK)。 4 R7 l+ E" `- O+ u# x' Y
|
+ V) m3 U( Y- s* R7 j
http://www2.keil.com/coresight/coresight-connectors/ u8 o6 T$ O: N2 A
2 x0 H7 q7 l. Q5 T& g
目标板已经上电的情况下, ULINK 只需要3跟线连到目标板:
SWCLK SWDIO GND.2 _' B" T7 D; w1 [( P
& A6 f& \1 d& x" o; I
但是部分MCU下载完后要按复位才能跑起来,
关键在于知道什么样的接口有什么样的特性,有的jlink和jtag都能用,可是选择什么合适?
嗯,用的基本上都是一个端口,只是在配置上和使用的引脚上有区别
通用的,也看仿真器的支持吧
我们实验室一直用SWD,这样板子设计可以节省空间