【车载开发系列】常见单片机调试接口的区别

【车载开发系列】常见单片机调试接口的区别

【车载开发系列】常见单片机调试接口的区别

  • 【车载开发系列】常见单片机调试接口的区别
    • 一. JTAG协议
    • 二. SWD接口
    • 三. RDI接口
    • 四. 仿真器
      • 1)J-Link仿真器
      • 2)ULink仿真器
      • 3)ST-LINK仿真器
    • 五. SWD / JTAG 的各种区别
    • 六. 信号线说明

一. JTAG协议

JTAG Joint Test Action Group,联合测试行动组,是一种用于测试和调试电路板上的数字电路的标准化接口
标准的JTAG接口是4线:TMS、 TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。 一般有20个引脚。
JTAG的三大功能:

  1. 下载器,即下载软件到FLASH里。
  2. DEBUG,跟医生的听诊器似的,可探听芯片内部小心思。
  3. 边界扫描,可以访问芯片内部的信号逻辑状态,还有芯片引脚的状态等等。
线 英文 说明
TMS Test Mode Select 测试模式选择,TMS用来设置JTAG接口处于某种特定的测试模式
TCK Test Clock 测试时钟输入
TDI Test Data In 测试数据输入,数据通过TDI引脚输入JTAG接口
TDO Test Data Out 测试数据输出,数据通过TDO引脚从JTAG接口输出

二. SWD接口

串行调试(Serial Wire Debug),需要4个(或者5个)引脚,结构简单,但是使用范围没有JTAG广泛,主流调试器上也是后来才加的SWD调试模式。
SWCLK(Serial Wire Clock)和SWDIO(Serial Wire Data Input/Output)是调试接口SWD(Serial Wire Debug)中的两个关键信号线,用于实现微控制器与调试器之间的通信。

信号线 英文 说明
SWDIO Serial Wire Clock 串行数据线,用于数据的读出和写入
SWDCLK Serial Wire Data Input/Output 串行时钟线,提供所需要的时钟信号

对于SWDIO引脚,虽然内部有一定的上拉能力,但如果线路较长、环境噪声较大,或者需要提高通信稳定性时,外部上拉电阻可以增强信号质量,尤其是在SWDIO作为输入时,外部上拉电阻能够提供一个清晰的高电平状态。
对于SWCLK引脚,通常会建议添加外部下拉电阻,尤其是在线路没有被驱动时,下拉电阻可以确保时钟信号有一个稳定的低电平状态,防止线路浮动造成不确定状态。

三. RDI接口

它也叫远程调试接口(Remote Debug Interface),是ARM公司提出的标准调试接口,主要用于ARM芯片的仿真,由于各个IDE厂商使用的调试接口各自独立,硬件无法进行跨平台的调试。
现在众多的IDE厂家都逐步采用标准RDI作为ARM仿真器的调试接口,因此使跨平台的硬件调试成为可能。
EasyJTAG由于使用标准RDI调试接口,因此在任何使用标准RDI接口的IDE调试环境中都可以使用,例如ARM公司的ADS1.2/IAR公司的EWARM 3.30 。

四. 仿真器

1)J-Link仿真器

J-Link是德国SEGGER公司推出基于JTAG的仿真器。
它有一个小型USB到JTAG的转换盒,其连接到计算机用的是USB接口,而到目标板内部用的还是JTAG协议。
JTAG协议转换盒,即一个小型USB到JTAG的转换盒,其连接到计算机用的是USB接口,而到目标板内部用的还是JTAG协议。
它完成了一个从软件到硬件转换的工作。
JLINK是一个通用的开发工具,可以用于KEIL、IAR、ADS 等平台。速度,效率,功能都很好,是众多仿真器里功能最强悍的存在

2)ULink仿真器

ULINK是ARM/KEIL公司推出的仿真器,目前网上可找到的是其升级版本,ULINK2和ULINK Pro仿真器。
ULINK/ULINK2可以配合Keil软件实现仿真功能,并且仅可以在Keil软件上使用,
增加了串行调试(SWD)支持,返回时钟支持和实时代理等功能。
开发工程师通过结合使用RealView MDK的调试器和ULINK2,可以方便的在目标硬件上进行片上调试(使用on-chip JTAG,SWD和OCDS)、Flash编程。
要注意的是,ULINK是KEIL公司开发的仿真器,专用于KEIL平台下使用,ADS、IAR下不能使用。

3)ST-LINK仿真器

ST-LINK是专门针对意法半导体STM8和STM32系列芯片的仿真器。
ST-LINK /V2指定的SWIM标准接口和JTAG / SWD标准接口,它的主要功能如下:

功能 功能说明
编程功能 可烧写FLASH ROM、EEPROM、AFR等
仿真功能 支持全速运行、单步调试、断点调试等各种调试方法,可查看IO状态,变量数据等
仿真性能 采用USB2.0接口进行仿真调试,单步调试,断点调试,反应速度快
编程性能 采用USB2.0接口,进行SWIM / JTAG / SWD下载,下载速度快

五. SWD / JTAG 的各种区别

(1)共享引脚
SWD 的引脚在一定条件下可以和 JTAG 引脚复用
(2) SWD 协议的特点:
使用引脚更少,只需 SWDIO 和 SWCLK 两个引脚
SWD 具有特殊功能,例如通过其 I / O 线打印调试信息
在高速大数据情况下,SWD整体性能比JTAG更好。
只能用于ARM内核的单片机。
(3)JTAG 协议的优势:
不限于ARM内核单片机,能支持更多单片机程序调试和下载
占用引脚数比较多,比较占用板子尺寸。

六. 信号线说明

信号线 说明
GND GND是电线接地端的简写。代表地线或0线
KL30 蓄电池供电电压,俗称常电(它表示蓄电池的正极)
KL31 蓄电池供电电压(它表示蓄电池的负极)
KL15 点火信号
SWD Serial Wire Debug 串行调试接口,使用了4个引脚
VCC Volt Current Condenser 电路的供电电压
VDD 芯片的工作电压
VOUT Output Voltage 输出电压
上一篇:对于CDA一级考试该咋准备??!


下一篇:vue3 按钮复制粘贴功能