JLINK-rtt使用经验

合集下载

jlink使用方法

jlink使用方法

jlink使用方法jlink使用方法详解什么是jlink?jlink是Java 9中引入的一个新工具,用于创建自定义的JRE (Java Runtime Environment)。

它允许您通过选择和排除需要的模块,以及优化所需的资源,创建一个更小更快的JRE。

使用jlink创建自定义JRE的步骤1.安装Java 9或更高版本确保您已经安装了Java 9或更高版本的JDK。

2.找到所需的模块您可以使用jdeps工具来分析您的应用程序,并找出它所依赖的模块。

例如,要分析一个名为``的应用程序,使用以下命令:jdeps --list-deps此命令将列出``所依赖的所有模块。

3.创建自定义JRE使用jlink命令创建自定义的JRE。

以下是一个基本的jlink命令示例:jlink --module-path <path-to-modules> --add-modules<module1>,<module2>,... --output <output-path>•<path-to-modules>:指定包含所有模块的路径。

•<module1>,<module2>,...:指定需要的模块的列表。

•<output-path>:指定输出自定义JRE的路径。

例如,要在C:\myjre目录中创建自定义的JRE,该JRE仅包含和模块,可以使用以下命令:jlink --module-path <path-to-modules> --add-modules , --output C:\myjre4.运行应用程序使用创建的自定义JRE来运行您的应用程序。

例如,在上一个步骤中创建的自定义JRE的路径为C:\myjre,要运行``,可以使用以下命令:C:\myjre\bin\java -jar注意:确保您的应用程序中使用的模块在自定义JRE中是可用的,否则应用程序将无法正常运行。

jlink使用说明

jlink使用说明

Jlink安装使用说明
一、安装
1、解压jlink至任意位置。

解压完成后包含以下三个文件。

2、双击Setup_JLink_V490.exe。

点击YES
点击next
选择位置后点击next
四个全部勾选点击next
点击next
等待安装完成
点击cancel
点击finish
桌面生成此图标
二、使用说明
双击桌面图标
选择create a new project
点击start-J-Flash
选择project setting…
界面配置1 配置完成点击应用
界面配置2 配置完成点击应用
依次点击红圈内选项,跳出如下界面:
选择红圈中条目点击OK
选择红圈中条目点击确定
点击connect
跳出下图connect succeeessful
点击open data file…
选择.hex
选中要烧录的hex文件点击打开
跳出如下界面
点击auto
等待第一次进度条完成
等待第二次进度条完成
出现最终成功界面程序烧录完成。

jlink命令调用方法

jlink命令调用方法

jlink命令调用方法jlink命令用于将JDK的某个模块及其依赖项打包成一个可执行文件。

以下是jlink命令的调用方法:1. 打开命令提示符窗口(Windows)或终端窗口(Linux/macOS)。

2. 输入以下命令的基本格式:jlink module-path <module path> add-modules <module name> output <output location>其中:- `<module path>` 表示JDK的模块路径。

- `<module name>` 表示要打包的模块名称。

- `<output location>` 表示输出文件夹的路径。

示例:jlink module-path %JAVA_HOME%\jmods add-modules java.base output myimage3. 运行命令后,jlink将会从模块路径中找到指定的模块及其所有依赖项,并将它们打包成一个自包含的运行时镜像。

4. 在打包完成后,可以在输出文件夹中找到生成的运行时镜像。

附加选项:- `launcher <name>=<module>/<class>`:指定生成的运行时镜像中的启动器。

可以使用该启动器来直接运行模块中的特定类。

- `compress <level>`:指定压缩级别。

可选的压缩级别有`0`(不压缩),`1`(快速压缩)和`2`(最佳压缩)。

- `strip-debug`:去除调试信息以减少镜像大小。

- `no-header-files`:不包含标准C头文件。

- `no-man-pages`:不包含手册页。

注意:jlink命令在JDK 9及以上版本中可用。

JLINK使用教程详解

JLINK使用教程详解

配置jlink工程
菜单>Options>Projiect settings 1、Target Interface
这个根据需要选择,若不确定就选择自动。
配置Projiect settings
2、CPU 指定CPU并初始化
加快烧写速度
五条全部添加
初始化寄存器
配置jlink工程
菜单>Edit>DebugRel Settings 2、ARM C Compiler
目的:选择与ARM核相匹配的C代码编译器
配置ADS工程
菜单>Edit>DebugRel Settings 3、ARM Linker(Output)
目的:设置代码段的起始地址为RAM的起始地址。
在ARM的集成开发环境中,只读的代码段和常量被称作RO段(ReadOnly); 可读写的全局变量和静态变量被称作RW段(ReadWrite);RW段中要被初始化为 零的变量被称为ZI段(ZeroInit)。
JLINK使用教程详解
This is j-link
嵌入式 实验板 JTAG
JTAG 接口
电缆
并口
协议转换
ADS RDI KEIL
IAR
嵌入式 实验板 JTAG
JTAG 接口
JTAG 接口
JLINK
USB USB 接口
电缆
下载线
协议转换
JTAG:国际标准测试协议 RDI:ARM公司提出的调试接口标准
主要配置的选项:
1、ARM Assembler(编译器) 2、ARM C Compiler(编译器) 3、ARM Linker(链接器)
其他选项默认即可。
配置ADS工程
菜单>Edit>DebugRel Settings 1、ARM Assembler

JLINK使用教程详解

JLINK使用教程详解
菜单>Edit>DebugRel Settings
2、ARM C Compiler
目的:选择与ARM核相匹配的C代码编译器
配置ADS工程
菜单>Edit>DebugRel Settings
3、ARM Linker(Output)
目的:设置代码段的起始地址为RAM的起始地址。
在ARM的集成开发环境中,只读的代码段和常量被称作RO段(ReadOnly); 可读写的全局变量和静态变量被称作RW段(ReadWrite);RW段中要被初始化为 零的变量被称为ZI段(ZeroInit)。
目的:设置代码段的起始地址为FLASH的起始地址。
配置ADS工程
菜单>Edit>DebugRel Settings 5、ARM fromELF
目的:转换为二进制文件并指定输出位置。
编译生成.bin文件
菜单>Projiect>Make
配置jlink工程
菜单>Options>Projiect settings 1、Target Interface
配置ADS工程
菜单>Edit>DebugRel Settings
配置完毕之后一定要注意存盘(ctrl+s), 这样配置才会生效,否则编译时会报错。
编译并进入AXD
菜单>Projiect>Debug 命令介绍 Compile: 编译单个源文件,生成一个.o文件。 Make: 编译整个工程,生成多个.o文件和 一个.axf文件。 Debug: 编译整个工程,生成多个.o文件和 一个.axf文件,并进入AXD。 Run: 编译整个工程,生成多个.o文件和 一个.axf文件,并进入AXD,同时 运行程序。

Jlink在MDK下使用J-link_J-trace模式开发STM32的说明

Jlink在MDK下使用J-link_J-trace模式开发STM32的说明

Jlink在MDK下使⽤J-link_J-trace模式开发STM32的说明Jlink V7在MDK下使⽤J-link/J-trace 模式开发STM32的说明说句实话,STM32的官⽅程序库⽤起来真是有点⿇烦,绕来绕去的,初学者很容易犯迷糊。

求⼈不如靠⾃⼰啊,经过⼀晚上的摸索,终于⾃⼰在MDK开发环境下建⽴了⾃⼰的⼯程,⾛马灯也跑起来了,呵呵呵....开发环境:STM32F103RB(128K Flash 20K RAM)+MDK3.40PRC+JLINK V70.驱动安装安装Segger jlink V4.02驱动,安装在c:\Program Files\SEGGER\JLinkARM_V402插上jlink V7,可⾃动安装上驱动。

执⾏J-link command,查看版本。

如果已经连上⽬标板,可显⽰⽬标处理器信息。

也可以使⽤mdk中的驱动,在c:\keil\ARM\Segger\USBdriver1.建⽴MDK⼯程(1)选择STM32F103RB 并加⼊STARTUP⽂件,这⼀步就不⽤细说了吧,⽤过keil的⼈都会。

(2)⼯程中选择Options for target ‘xxx’,选择器件STM32F103RB(3) 配置Jlink:按照下图配置即可时钟改成1MHz以上,也是可以的,⽐如2MHz,明显编程速度会快些。

需要试验最⾼时钟速率。

这样,⼀个可以⽤Jlink调试的MDK⼯程就建⽴好了,接下来我们加⼊我们的C⽂件就可以开始调试了。

2 编写程序C⽂件源码如下:#define GPIOC_CRL (*((unsigned int *)(0x40011000)))#define GPIOC_BSRR (*((unsigned int *)(0x40011010)))#define GPIOC_BRR (*((unsigned int *)(0x40011014)))#define RCC_APB2ENR (*((unsigned int *)(0x40021018)))void delay(void){unsigned int i;for(i = 0; i < 0xffff; ++i);}int main(void){{RCC_APB2ENR |=(1<<2); //使能PORTA时钟GPIOA_CRL = 0x44444422;//PA0,1配置为输出while(1){GPIOA_BSRR |= BIT0;GPIOA_BRR |= BIT0;delay();GPIOA_BRR |= BIT0;GPIOA_BSRR |= BIT1;delay();}}如此,⼀个简单的⾛马灯程序就完成了,⽐起官⽅库,容易理解多了,呵呵。

JLINK使用教程详解,以及与JTAG区别

JLINK使用教程详解,以及与JTAG区别

JLINK使⽤教程详解,以及与JTAG区别对于⼀个新⼿来说,⼀切都不容易。

⽽从头学起也是⼀件⾮常美好的事。

调试ARM,要遵循的调试接⼝协议,JTAG就是其中的⼀种。

当仿真时,IAR、KEIL、ADS等都有⼀个公共的调试接⼝,RDI就是其中的⼀种,那么我们如何完成RDI-->ARM调试协议(JTAG)的转换呢?有以下两种做法:1.在电脑上写⼀个服务程序,把IAR、KEIL和ADS中的RDI命令解析成相关的JTAG协议,然后通后⼀个物理转换接⼝(注意,这个转换只是电⽓物理层上的转换,就像RS232那样的作⽤)发送你的的⽬标板。

H-JTAG就是这样的。

H-JTAG的硬件就仅是⼀个物理电平的转换接⼝,所以很简单。

⽽电脑中装的h-JTAG软件就是前⾯说到的服务程序,负责协议转换的。

2.做⼀个板,⽤此板直接接收来⾃IAR、KEIL和ADS等软件的调试命令,由此板做RDI->JTAG协议的转换。

然后与⽬标板通信,这就是JLINK的⼯作原理。

由上可以看出H-JTAG由于是软件作协议转换的,所以速度较慢,但是硬件简单。

⽽第⼆种⽅法的JLINK⼀般带⼀个强劲的CPU,作硬件协议转换,把以硬件复杂,但速度快。

JTAG的基本原理JTAG(JointTestActionGroup,联合测试⾏动组)是⼀种国际标准测试协议(IEEE1149.1兼容)。

标准的JTAG接⼝是4线——TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输⼊和数据输出线。

JTAG的主要功能有两种,或者说JTAG主要有两⼤类:1)⼀类⽤于测试芯⽚的电⽓特性,检测芯⽚是否有问题;2)另⼀类⽤于Debug,对各类芯⽚以及其外围设备进⾏调试;⼀个含有JTAGDebug接⼝模块的CPU,只要时钟正常,就可以通过JTAG 接⼝访问CPU的内部寄存器、挂在CPU总线上的设备以及内置模块的寄存器。

本⽂主要介绍的是Debug功能。

JTAG原理分析简单地说,JTAG的⼯作原理可以归结为:在器件内部定义⼀个TAP(TestAccessPort,测试访问⼝),通过专⽤的JTAG测试⼯具对内部节点进⾏测试和调试。

jlink的使用方法

jlink的使用方法

jlink的使用方法摘要:一、JLink简介二、JLink的安装与配置1.安装步骤2.配置方法三、JLink的使用方法1.连接设备2.烧写固件3.调试代码4.监控运行状态四、JLink的高级功能1.断点调试2.数据观察3.性能分析五、JLink的优缺点1.优点2.缺点六、总结与建议正文:一、JLink简介JLink是一款由SEGGER公司推出的硬件调试工具,广泛应用于嵌入式系统的开发与调试。

它支持多种处理器架构,如ARM、MIPS、AVR、STM32等,为开发者提供了便捷的编程与调试解决方案。

二、JLink的安装与配置1.安装步骤JLink的安装过程相对简单,只需遵循以下步骤:(1)下载JLink软件及驱动程序。

(2)安装JLink软件。

(3)根据设备类型及操作系统安装对应的驱动程序。

2.配置方法(1)打开JLink软件,设置目标设备型号、操作系统、调试器型号等参数。

(2)配置调试串口号、波特率等通信设置。

(3)连接设备并验证连接。

三、JLink的使用方法1.连接设备将JLink连接到目标设备,确保设备上电。

在JLink软件中配置好设备参数后,点击“Connect”按钮建立连接。

2.烧写固件在JLink软件中选择固件文件,点击“Download”按钮进行烧写。

烧写完成后,设备将自动重启。

3.调试代码在JLink软件中打开调试器,设置断点、监视变量等参数。

然后点击“Run”按钮,即可开始调试代码。

4.监控运行状态在调试过程中,可通过JLink观察运行状态、实时数据、内存使用情况等。

此外,还可使用JLink进行性能分析,找出代码中的瓶颈。

四、JLink的高级功能1.断点调试JLink支持断点调试,可以帮助开发者定位代码问题。

设置断点后,程序运行到断点位置时会自动暂停,方便进行调试。

2.数据观察JLink可以实时观察变量值、寄存器值等数据,便于分析程序运行状态。

3.性能分析JLink提供性能分析功能,可统计代码执行次数、执行时间等,帮助开发者优化代码。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Jlink RTT使用说明
单片机进行调试,一般都会分配出来一个调试的串口,如果单片机使用jlink烧录器,那么可以使用调试工具-RTT来代替串口进行信息的交互,不需要使用串口。

RTT(Real Time Terminal)是SEGGER公司新出的可以在嵌入式应用中与用户进行交互的实时终端。

J-Link驱动4.90之后的版本都支持RTT。

需要安装J-Link驱动4.90之后的版本
1、使用JLINK SEGGER RTT打印调试信息
然后将这四个文件添加到自己工程中去,并且在主程序工程中包含SEGGER_RTT.h文件。

然后我们就可以直接在主函数中调用SEGGER_RTT_printf函数来打印调试信息了,该函数用法和printf函数类似,只是多了一个参数用来指定RTT通道。

其中通道0,就是我们在调试时使用的通道。

在主函数中添加如下代码即可打印信息。

SEGGER_RTT_printf(0,"Times %d\r\n",++u32Counter);
这个函数不支持浮点数,如输出浮点数可以先使用sprintf输出到缓存,再使用SEGGER_RTT_WriteString输出。

char rtt_out_str[80];
sprintf(rtt_out_str,"FloatValueIs%f;\n",var_float);
SEGGER_RTT_WriteString(0,rtt_out_str);
单独打开RTT VIEWER 可以使用
如果打开JLinkRTTClient,必须同时打开RTT VIEWER 才可以使用
2、RTT输入检测
首先在程序中添加SEGGER_RTT_Read(0,rtt_buf,sizeof(rtt_buf));
其次在J-Link RTT Viewer控制台的Input里面选择Sending/Send on Enter,然后End of Line 选择None
这样就可以通过下方输入框输入信息,按Enter发送
RTT VIEWER input设置
Win10自带的截图功能非常好用,快捷键Win + Shift + S。

相关文档
最新文档