这篇文章我们简单的介绍下J-Link仿真器,与常用的两种下载方式,以及在MDK和IAR下配置他们的方法,给大家一个简单的认知,关于深入地学习之后会更新
1.JTAG
JTAG诞生于上世纪80年代,JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如ARM、DSP、FPGA器件等,如DSP,FPGA器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。
JTAG今天被用来主要的就是芯片的烧录、debug 等等
关于JTAG的详细接口定义以及介绍我们这里就不说了,本篇文章主要是为了让大家了解与认识,同学们只需要记住它是一个测试协议,让我们烧录芯片的一个协议方式即可。并且绝大多数芯片都支持JTAG协议,使用十分广泛
,
2.SWD
SWD是ARM公司提出的另一种调试接口,相对于JTAG接口,使用更少的信号和接口,与JTAG的20个引脚相比,SWD只需要4个(或者5个)引脚,较少的引脚与简便的接线使得SWD模式也备受欢迎,并且这几年SWD下载速度也有了显著的提高,在一些较小的PCB上可以使用它,所用面积小,并且较为简便,数据不易丢失
关于SWD同学们记住它是不同于SWD的一种下载方式,并且接线简便,所用引脚少即可
J-Link仿真器
J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A5/A8/A9等内核芯片的仿真,与IAR,Keil等编译环境无缝连接,操作方便、连接方便、简单易学,是学习开发ARM最好最实用的开发工具。
LINK仿真器目前已经升级到V9.1版本,其仿真速度和功能远非简易的并口WIGGLER调试器可比。J-LINK支持ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A4/A8/A9等内核芯片,支持ADS、IAR、KEIL开发环境
简单来说: J-Link是一个JTAG协议转换盒,它通过USB传输,在仿真器内部转换成JTAG协议,实现了了一个从软件到硬件转换的工作。使用者只需要一个USB接口,便可以实现JTAG下载, 在以前JTAG协议都是用20pin的转接头(上图),但是随着时代的发展,很多电脑都不在配备并口的,取而代之的是越来越多的USB接口,这就随之而诞生了J-Link仿真器,只需要一个USB接口,使用者就可以实现芯片的烧录与调试,极大地方便了工作并简便了电脑接口
也就是J-Link仿真器就是一个USB到JTAG的转换盒,连接端为电脑的USB接口,而到芯片内部则会转换为jtag协议,就是一个转换小黑盒 目前普遍在售的为V9版本
当然了作为要支持仿真ARM内核的仿真器 J-Link不止支持JTAG 同样支持SWD下载
SWD下载方式接线:
可自行用杜邦线连接或做转接板
IAR与MDK配置两种下载方式
在连接上芯片之后,可以先查看是否找到芯片
IAR:
打开工程文件,在项目文件-右键-Options
找到J-Link/J-Trace - Connection -选择下载模式
MDK:
首先确定下载方式正确 然后Settings
之后可以修改下载方式与下载速度,注意下方为USB 模式