目录

1、JTAG接口与SWD接口

1.1、JTAG接口

1.2、SWD接口

1.3、JTAG接口与SWD接口的区别

2、Jlink仿真器与Stlink仿真器

2.1、Jlink仿真器

2.2、STlink仿真器

2.3、Jlink仿真器与Stlink仿真器的区别


1、JTAG接口与SWD接口

JTAGSWD是两种常用的用于调试和编程ARM微控制器的接口,它们都可以通过调试器(如ST-LINKJ-Link)与电脑连接,实现对目标芯片的内存、寄存器、外设等的访问和控制。

1.1、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接口。所以,目前市场上已经很少看到它的身影了。

1.2、SWD接口

SWD是ARM公司提出的另一种调试接口,相对于JTAG接口,使用更少的信号。四根信号如下:

VRef:目标板参考电压信号。用于检查目标板是否供电,直接与目标板VDD联,并不向外输出电压;

GND:公共地信号;

SWDIO:串行数据输入输出,作为仿真信号的双向数据信号线,建议上拉;

SWCLK:串行时钟输入,作为仿真信号的时钟信号线,建议下拉;

SWO:串行数据输出引脚,CPU调试接口可通过SWO引脚输出一些调试信息。该引脚是可选的;

RESET:仿真器输出至目标CPU的系统复位信号。

同样的,虽然RESET是可选的信号;但一般都建议接上,使得仿真器能够在连接器件前对器件进行复位,以获得较理想的初始状态,便于后续连接仿真。

1.3、JTAG接口与SWD接口的区别

SWD和传统的调试方式区别:

  1. SWD模式比JTAG在高速模式下面更加可靠。在大数据量的情况下面JTAG下载程序会失败,但是SWD发生的几率会小很多。基本使用JTAG仿真模式的情况下是可以直接使用SWD模式的,只要你的仿真器支持,所以推荐大家使用这个模式。

  2. 在大家GPIO刚好缺一个的时候,可以使用SWD仿真,这种模式支持更少的引脚。

  3. 在大家板子的体积有限的时候推荐使用SWD模式,它需要的引脚少,当然需要的PCB空间就小啦!比如你可以选择一个很小的2.54间距的5芯端子做仿真接口。

2、Jlink仿真器与Stlink仿真器

JLINK和STLINK是两种常用的用于调试和编程ARM微控制器的仿真器,它们都可以通过USB接口与电脑连接,实现对目标芯片的内存、寄存器、外设等的访问和控制。

2.1、Jlink仿真器

JLink是通用型的ARM内核芯片仿真器,支持的芯片和软件开发环境多 ,IAR,Keil MDK, STM32 cudeIDE,MCUXpresso IDE(GCC+Eclipse)针对NXP芯片;支持JTAG\SWD两种模式,优先选择JLINK;

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

JLINK仿真器具有以下特点:

可配合IAR EWARM,ADS,KEIL,WINARM,RealView等集成开发环境;
支持ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4,Cortex A5/A8/A9等内核芯片的仿真;
支持高速下载和调试,最高时钟频率可达50MHz;
支持热插拔和自动识别目标电压;
支持多种Flash编程算法和自定义算法;
支持多种调试功能,如运行、暂停、单步执行、断点、观察点、追踪等。
JLINK仿真器的优缺点如下:

优点:通用性强,支持的芯片和软件开发环境多;性能高,下载和调试速度快;功能全,支持多种Flash编程算法和调试功能;稳定性好,兼容性强。
缺点:价格较高,正版价格在1000元以上;仿冒品较多,质量参差不齐;需要安装驱动程序和软件工具。不对呀,这好像不是他的缺点😅

2.2、STlink仿真器

ST-Link是针对STM8/STM32,如果你使用STM8/STM32单片机,首选ST-Link,当然用JLink下载ST系列单片机也可以;支持开发环境,IAR,keil MDK,STM32 cudeIDE,Atollic TrueStudio (ST收购了Atollic),支持JTAG/SWD/SWIM三种模式.STM32 ST-LINK Utility和STM32Cube-programmer是ST-link下载程序工具。

STLINK是ST意法半导体为评估、开发STM8/STM32系列MCU而设计的集在线仿真与下载为一体的开发工具,支持SWIM/JTAG/SWD三种模式。STLINK有多个版本,分别是ST-LINK/V1(已停产),ST-LINK/V2(常见于Nucleo或Discovery开发板),ST-LINK/V2-1(常见于新版Nucleo或Discovery开发板),ST-LINK/V3(最新版)。

STLINK仿真器具有以下特点:

只支持所有带SWIM接口的STM8系列单片机和所有带JTAG/SWD接口的STM32系列单片机;
可配合IAR EWSTM8/EWARM,KEIL MDK等集成开发环境;
支持高速下载和调试,最高时钟频率可达24MHz(V3版);
支持热插拔和自动识别目标电压;
支持多种Flash编程算法和自定义算法;
支持多种调试功能,如运行、暂停、单步执行、断点、观察点等。
STLINK仿真器的优缺点如下:

优点:价格较低,正版价格在100元左右;专用性强,针对STM8/STM32单片机优化;功能全,支持多种Flash编程算法和调试功能;稳定性好,兼容性强。
缺点:通用性差,只支持STM8/STM32单片机;性能一般,下载和调试速度不如JLINK;需要安装驱动程序和软件工具。

2.3、Jlink仿真器与Stlink仿真器的区别

  1. 如果你使用的是STM8/STM32单片机,首选STLINK仿真器,因为它是针对这些芯片专门设计的,性价比高,功能全面,稳定可靠;
  2. 如果你使用的是其他类型的ARM内核芯片,或者需要在不同类型的芯片之间切换,首选JLINK仿真器,因为它是通用型的仿真器,支持的芯片和软件开发环境多,性能高,功能强大;
  3. 如果你对下载和调试速度有较高的要求,或者需要使用一些高级的调试功能,如追踪、分析等,首选JLINK仿真器,因为它的时钟频率和数据传输速率都比STLINK仿真器高;
  4. 如果你对价格有较高的敏感度,或者只是做一些简单的开发和测试,首选STLINK仿真器,因为它的价格比JLINK仿真器低很多,而且也能满足基本的下载和调试需求。
     
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐