JTAG、JLink、ULINK、ST-LINK仿真器区别

news/2024/11/18 2:50:38/

首先要了解一下JTAG。
这里写图片描述
JTAG协议
JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如ARM、DSP、FPGA器件等。标准的JTAG接口是4线:TMS、 TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。 相关JTAG引脚的定义为:

TMS:测试模式选择,TMS用来设置JTAG接口处于某种特定的测试模式;
TCK:测试时钟输入;
TDI:测试数据输入,数据通过TDI引脚输入JTAG接口;
TDO:测试数据输出,数据通过TDO引 脚从JTAG接口输出;
JTAG协议在定义时,由于当时的计算机(PC机)普遍带有并口,因而在连接计算机端是定义使用的并口。而计算机到了今天,不要说笔记本电脑,现在台式计算机上面有并口的都很少了,取而代之的是越来越多的USB接口。那么能不能让JTAG支持USB协议,用USB接口来调试ARM呢?这就要说到JLINK和ULINK了。

说明:关于JTAG原理,请参考文章《JTAG调试原理》。
这里写图片描述
JLink仿真器
J-Link是德国SEGGER公司推出基于JTAG的仿真器。简单地说,是给一个JTAG协议转换盒,即一个小型USB到JTAG的转换盒,其连接到计算机用的是USB接口,而到目标板内部用的还是jtag协议。它完成了一个从软件到硬件转换的工作。

JLINK仿真器

ULINK仿真器
ULINK是ARM/KEIL公司推出的仿真器,目前网上可找到的是其升级版本,ULINK2和ULINKPro仿真器。ULINK/ULINK2可以配合Keil软件实现仿真功能,并且仅可以在Keil软件上使用,增
加了串行调试(SWD)
ULINK2仿真器
这里写图片描述
ST-LINK
ST-LINK是专门针对意法半导体STM8和STM32系列芯片的仿真器。

ST-LINK仿真器
这里写图片描述
注:转自http://www.veryarm.com/1114.html(JTAG JLink ULINK ST-LINK仿真器区别)

一直使用ULINK2,前几天碰到一个板子,只能使用SWD调试接口,于是做个记录。

打开ULINK2,找ARM(20P,2.54mm)接口,用杜邦线连接目标板SWD和ULINK2。

SWD,使用5根线:GND\VCC\RST\SWDIO\SWCLK。其中SWDIO同时具备数据输入和数据输出功能。

接线如下:

SWD                                                                                                      ULINK2的ARM接口

GND                                                          ---------                                   GND(4,6,8,10,12,14,16,18,20脚)

SWDIO(串行数据输入/输出)       ---------                                     TMS(7脚)

SWCLK (串行时钟输出)                ---------                                     TCK(9脚)

RST                                                            --------                                      nRST(15脚)

VCC                                                           --------                                       Vcc

若使用KEIL开发环境,则在调试接口那选择SW,且前面的SWJ的单选框不用打钩。

 

文章目录

    • 1. J-Link
    • 2. ST-Link
    • 3. ULink
    • 4. JTAG
    • 5. SWD
    • 6. SWIM
    • 8. 小结一下

 

1. J-Link

J-Link是德国SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器,很多ARM芯片的接口协议是JTAG,JLink一端接电脑USB接口,一端接CPU的JTAG接口,JLink充当的作用就是USB转JTAG,支持JTAG和SWD两种模式。

  • 可配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境;
  • 支持ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4,Cortex A5/A8/A9等内核芯片的仿真;

在这里插入图片描述

JLink仿真器

 

2. ST-Link

ST-Link是ST意法半导体为评估、开发STM8/STM32系列MCU而设计的集在线仿真与下载为一体的开发工具,支持JTAG/SWD/SWIM三种模式。

  • 支持所有带SWIM接口的STM8系列单片机
  • 支持所有带JTAG/SWD接口的STM32系列单片机

在这里插入图片描述

ST-Link仿真器

 

3. ULink

ULINK已经停产,在售的是ULINK2和ULINKpro版本,ULINK2是ARM/KEIL公司(2005年ARM收购了KEIL)最新推出的配套RealView MDK使用的仿真器,ULINK2仿真器也被称为Keil ULINK2、ARM ULINK2仿真器。

在这里插入图片描述

ULINK2仿真器

 

ULINK2仿真器支持:

  • 片上调试(使用片上JTAG/SWD/SWV)
  • FLASH存储器编程(用户可配置FLASH程算法)

以下是各版本ULINK仿真器的区别,可见支持的芯片内核,软件开发工具等内容;

在这里插入图片描述

ULink各版本之间的区别

 

4. JTAG

JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试,现在多数的器件都支持JTAG协议,ARM、DSP、FPGA等,JTAG接口的单片机用电脑USB下载调试程序,需要用到J-Link(USB转JTAG)。

标准的JTAG是四线:TDI,TMS,TCK,TDO,分别对应数据输入,模式选择,时钟,数据输出,复位管脚可不接。

仿真器Pin no.仿真器接口目标板接口信号描述
195V supplyVCC电源正极
5TDITDI数据输入
7TMSTMS模式选择
9TCKTCK时钟信号
13TDOTDO数据输出
20GNDGND电源负极

在这里插入图片描述

JTAG模式J-Link与CPU的连接图

 

5. SWD

SWD全称是Serial Wire Debug(串行调试),SWD模式下用JLink给我们的板子debug时,是用标准的二线DIO和CLK,RESET管脚可不接,当你频繁下载失败时,可接上RESET管脚再试。

在高速模式下,SWD比JTAG更可靠一些,常见的接线信号如下所示,根据具体情况自主选择。

仿真器接口仿真器接口目标板接口信号描述
195V supplyVCC电源正极
7SWDIOSWDIO数据信号
9SWCLKSWCLK时钟信号
20GNDGND电源负极
15RESETnRST复位信号

注意: SWD模式下,SWDIO的上拉电阻可预留不贴,在ST的一些MCU参考设计中,有提到建议添加,实际测试不加不影响下载。

在这里插入图片描述

SWD模式J-Link与CPU的连接图

 

6. SWIM

SWIM接口常见于ST的STM8系列单片机,ST-Link2与STM8连接只需要4根线,见表格。

Pin no.仿真器接口目标板接口信号描述
Pin1VDDVCC电源正极
Pin2DATASWIMSWIM pin
Pin3GNDGND电源负极
Pin4RESETRESET复位信号

在这里插入图片描述

ST-Link上的SWIM管脚排列

 

8. 小结一下

附上JTAG/SWD模式管脚对照表:

在这里插入图片描述

JTAG/SWD模式管脚对照表

 

总结一下J-Link、ST-Link、ULink三种仿真器之间的区别:

  • JLink是通用型的ARM内核芯片仿真器,支持的芯片和软件开发环境多,优选
  • ST-Link是针对STM8/STM32,如果你使用STM8/STM32单片机,首选ST-Link,当然用JLink下载ST系列单片机也可以;
  • ULink专注于Keil平台,支持ARM7/9,Cortex-M0~M4,ULink2还支持8051系列芯片,综合性能(支持芯片种类、软件开发环境及及调试速度)均不如JLink;
  • 三者都支持JTAG和SWD模式;

再总结一下JTAG、SWD、SWIM三种下载模式的区别:

  • JTAG接线比较多,高速模式下稳定性不如SWD;
  • SWD接线少,可空出多余的GPIO,所需要的接线信号不同仿真器会有所差别(主要在VCC和RESET),DIO和CLK必接;
  • SWIM常见于STM8单片机,需用4根线;

http://www.ppmy.cn/news/244039.html

相关文章

Keil uVision5开发一个基于LPC17XX系列芯片的工程文件

1 如何使用keil5建立一个工程文件 本篇文章所讲内容基于LPC1759芯片展开(公司用LPC比较多,M0、M3都用,对于LPC系列芯片,开发流程大同小异,如果以后用到STM32再总结跟大伙分享),比较完整地展现一…

【dc-dc】DC-DC恒流电源 车灯方案的应用

1,信息来源:深圳市世微半导体有限公司 Augus 2,产品描述 AP5103 是一款效率高,稳定可靠的 LED 灯恒流驱动控制芯片,内置高精度比较器,固定关断时间控制电路,恒流驱动电路等,特别适合大功率 LED 恒流驱动。…

【深度学习】跌倒识别(带数据集和源码)从0到1,内含很多数据处理的坑点和技巧,收获满满

文章目录 前言1. 数据集1.1 数据初探1.2 数据处理1.3 训练前验证图片1.4 翻车教训和进阶知识 2. 训练3.效果展示 前言 又要到做跌倒识别了。 主流方案有两种: 1.基于关键点的识别,然后做业务判断,判断跌倒,用openpose可以做到。…

Unity UGUI背景图同步Text宽度

UGUI背景图同步Text宽度 针对 TextMeshProUGUI 传送门

c5

Code: //输入三个数x,y,z&#xff0c;请把这三个数由小到大输出 #include <stdio.h> int main(void) { int x,y,z,t; scanf("%d%d%d",&x,&y,&z); if (x>y) /*交换x,y的值*/ { tx; xy; …

轻舟已过万重山:华为之路,平板PC之变

平板、PC&#xff0c;这些产品对于你来说意味着什么&#xff1f; 参数怪兽&#xff0c;傻大黑粗、吃灰神器&#xff0c;这些都是萦绕在平板、PC这些产品身边的高频词汇。曾几何时&#xff0c;我们似乎对平板、PC的认知陷入了某种局限。比如认为它们的主要卖点就是参数&#xff…

推箱子-第14届蓝桥杯国赛Scratch真题初中级组第3题

[导读]&#xff1a;超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成&#xff0c;后续会不定期解读蓝桥杯真题&#xff0c;这是Scratch蓝桥杯真题解析第145讲。 推箱子&#xff0c;本题是2023年5月28日上午举行的第14届蓝桥杯国赛Scratch图形化编程初中级组真题第3题&am…

通过JSP、JavaBean、JDBC、Servlet技术,实现用户登录功能

通过JSP、JavaBean、JDBC、Servlet技术&#xff0c;实现用户登录功能 一、需求二、代码开发1、exam264Servlet类2、exam264UserInfo类3、exam264DBUtil类 三、完整demo源码 一、需求 通过JSP、JavaBean、JDBC、Servlet技术&#xff0c;实现用户登录功能: 1、创建JavaBean类(实…