嵌入式RTT调试接口详见

1. 简介

Real Time Transfer(简称RTT)是Segger公司推出的用于嵌入式系统监控和交互的工具,其融合了SWO(SWD调试技术中的调试日志输出)等能力,且具备极高的性能。RTT的技术特点如下:

  • 与目标嵌入式应用的双向通信能力
  • 不影响嵌入式应用的实时行为的高速传输速率
  • 使用调试通道用作通信(相当于不用再额外占用GPIO等外设接口)
  • 不需要在目标嵌入式系统增加额外的硬件或引脚
  • 任何的J-Link型号都支持(J-Link型号列表和比较可参考https://www.segger.com/products/debug-probes/j-link/models/model-overview/)
  • 能被ARM Cortex-A/R/M系列芯片支持,以及被RISC-V和Renesas RX支持
  • 提供完整的RTT的实现代码

优点:

RTT能够在不影响嵌入式应用的实时行为下,能够高速双向通信,既可以输出调试信息,也能够从外部输入相关的控制命令。RTT可以在两个传输方向(输出和输入)上支持多个通道,不同的通道可用于不同的目的。

2. 使用场景

在嵌入式设备开发时,需要使用硬件接口完成软件调试,如打印一些调试信息,而通常大家都是使用UART接口,实现日志信息打印的,那有了UART接口,且UART接口大家都比较熟悉,为何还要用RTT呢?下面汇总一下RTT接口使用的场景:

  • 处理器芯片较少,串口外设较多,没有可预留给调试使用的串口
  • 降低产品成本,可去掉调试串口,至保留Jlink烧录口,即可完成烧录,有可使用做RTT调试
  • 针对一些复杂场景的设备调试,既要连接烧录接口,又要连接调试串口,给调试增加复杂度,可使用Jlink接口同时完成调试与烧录

3. 连接方式

使用Jlink调试器,USB端口连接PC,SWD端口连接嵌入式设备,如下图所示:
在这里插入图片描述

4. 上位机软件

4.1 J-link RTT viewer

PC上可使用J-link RTT viewer工具(https://www.segger.com/downloads/jlink/),完成调试数据的收发,且可以有多个虚拟终端,可以用来打印不同的信息(如一个窗口做标准输出,一个窗口做错误信息的输出,一个窗口做调试信息输出)

J-Link RTT Viewer是主要的Windows的GUI应用,用来使用RTT调试的所有功能。RTT Viewer可以单独使用,开启一个连接到J-Link,或者在运行调试会话时并行使用,RTT Viewer支持所有RTT的主要功能:

  • 通道0的Terminal output
  • 通道0的输入
  • 在一个目标通道上支持高达16个虚拟Terminal
  • 可控的字符输出:字体颜色控制,控制台消息擦除
  • 通道1的Logging数据等

关于J-Link RTT Viewer的详细说明可参考J-Link用户指南文档(https://wiki.segger.com/UM08001_J-Link_/_J-Trace_User_Guide#RTT)。

通过RTT通信,可以使用任何J-Link。通过终端(通道0)进行通信的简单方法是,当到J-Link的连接处于活动状态时,使用Telnet客户机或类似的设备创建到localhost:19021的连接。

5. 工作原理

详细的工作原理可阅读官方介绍:

https://www.segger.com/products/debug-probes/j-link/technology/about-real-time-transfer/

6. 软件支持

https://github.com/supperthomas/RTTHREAD_SEGGER_TOOL

  • 18
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
J-Link实时跟踪(RTT接口是一种用于在嵌入式系统中进行调试和数据交互的工具。RTT接口可以通过J-Link硬件连接到目标设备上的调试端口,并通过调试通道与目标设备进行通信。 使用J-Link RTT接口进行调用的步骤如下: 1. 确定目标设备的J-Link调试接口类型。J-Link支持多种调试接口,如JTAG、SWD等。根据具体硬件连接情况选择相应的接口类型。 2. 将J-Link硬件连接到目标设备上的调试接口,并确保连接稳固。 3. 配置调试环境。在使用J-Link RTT接口之前,需要在目标设备上使用相应的调试工具或库进行配置。一般来说,需要在目标设备上的调试代码中添加RTT相关的初始化代码,以便与J-Link进行通信。 4. 使用J-Link软件进行连接。在计算机上安装J-Link软件,并通过USB将J-Link硬件连接到计算机。然后,打开J-Link软件,选择相应的目标设备和调试接口类型,并连接到目标设备。 5. 在J-Link软件中使用RTT功能。J-Link软件提供了一系列命令和API,用于与目标设备进行RTT通信。可以使用这些命令和API来发送和接收数据,以及进行调试操作。 6. 在目标设备上处理RTT数据。在目标设备上,可以使用RTT的接收函数或轮询方式来处理从J-Link传输过来的数据。可以根据具体需求,将RTT用于日志输出、调试信息传输等功能。 总之,J-Link RTT接口提供了一种方便的方式,用于在嵌入式系统中进行调试和数据交互。使用J-Link软件和相应的调试工具,可以轻松地配置和使用RTT功能,并实现与目标设备的高效通信。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值