简介
J-Link
是德国SEGGER公司出品的一款Debug工具,能够支持
arm7/9/11,Cortex-M/R/A,RISC-V等大量
嵌入式目标平台,与之配合的PC端软件能够运行于Window/
linux/Mac等系统上。
-Link主要提供两个功能:
1. 程序加载,可以把程序加载到目标平台的 RAM 中,或者下载到 ç ash中(需要特定的ç ash烧写算法配合)。
2. 系统跟踪Debug,可以查看目标平台的运行状态,寄存器,内存数据。
J-Link命令行工具
SEGGER提供了跨平台的命令行工具,只要下载安装了J-Link Software and Documentation Pack即可使用。
命令行工具在
Windows上叫做J-Link Commander,在Linux上为一个可执行文件JLinkExe。
启动:
在命令行输入 "?" 可以列出所有支持的命令。
连接:
输入connect命令进行连接,然后回车选"SWD",再回车,可以看到
芯片被识别到的信息。
加载程序并运行:
利用loadeæ le或者lo
adbin命令加载程序,注意要指定加载地址。
由于Cortex M芯片的启动代码,最前面放的是向量表,其中第一个word放的是堆栈地址,第二个word放的是复位程序(Reset_Handler)的入口地址,所以要用mem32命令把这个地址读出来,然后用SetPC命令把
CPU运行地址设置到这个位置,利用go命令开始执行。
与Ozone配合
J-Link在使用的时候,在PC端需要有一个上位机软件与之配合。对于使用
KEIL, IAR等IDE进行代码开发的情况,这两个软件已经提供了从代码编写,编译到下载,调试跟踪的完整功能。但是这些IDE在Debug上有个限制,即Debug无法和代码编译独立,如果你的代码是使用其他工具编译的(比如GCC),或者当你面对一个要进行调试分析的目标板,你的电脑上没有这个待调试平台的源码,你只是想连上J-Link然后加载符号表进行调试分析,这些IDE都无法满足。在这里我们推荐使用Ozone,它可以很好的满足这些要求。
Ozone是SEGGER推出的与J-Link配合的Debug和性能分析工具,跨平台(Windows/Linux/Mac),安装包大小只有20M左右,提供的功能却很完善,小巧而强大。
启动:
device:根据目标板芯片的
内核选择,Cortex-M3/Cortex-M4
Peripherals:根据目标板芯片进行选择对应的svd文件,其实这个文件是可以定制的,我们可以根据具体芯片设计,把其他片上外设而已加进去。
J-Link设置
Target Interface:我们芯片的JTAG口一般都用两线模式,所以选SWD
Target Interface Speed:先选一个比较低的速度,连接成功后,会自动调整到一个较高的速度。
Host Interface: 一般J-Link和PC通过USB连接,所以选USB。
Serial No:这个是在PC连接了多个J-Link的情况下用的,一般这里不用选。
更多详细内容请下载附件查看