0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

借用J-link调试工具进行消息的发送

恩智浦MCU加油站 来源:恩智浦MCU加油站 2024-07-16 15:00 次阅读

幽默的小编先问大家一个问题:想让我们的MCU打印出一段消息,需要怎么办才能让这段消息显示在PC端呢?相信大家最常用的方式是通过MCU的串口将消息打印到PC端的串口调试终端上。那再换一个问题,打印分几步?

简简单单4步,我们就可以发送私信了!

1.初始化MCU这边的串口,配置时钟频率,配置对应的输出管脚,配置波特率等等;

2.打开PC端的串口调试工具,配置好对应的波特率;

3.调用UART驱动,例如readwrite之流,发送数据;

4.在串口调试工具上查看;

小编今天要给大家带来的是借用J-link调试工具进行消息的发送。今天的主人公是一个叫做J-link RTT的小东西,那么什么是所谓的RTT呢? J-Link Real-Time Transfer(RTT)是由SEGGER公司开发的一种调试和跟踪技术,用于嵌入式系统的开发和调试。J-LinkRTT允许开发人员在不使用操作系统的情况下,通过J-Link调试器实时传输数据到主机,并从主机实时接收数据,从而实现实时的调试和跟踪功能。J-Link RTT的主要特点包括:

低开销:J-Link RTT实现了高效的数据传输机制,可以在不影响目标系统性能的情况下实现实时数据传输。

实时性:开发人员可以在目标系统上实时地输出调试信息,或者从目标系统上实时地接收数据,而无需停止目标系统的运行。

灵活性:J-Link RTT支持多个通道,可以同时传输多个不同类型的数据,例如调试信息、日志、性能指标等。

无需目标系统操作系统支持:与类似于printf输出的调试信息不同,J-Link RTT可以在没有操作系统支持的嵌入式系统上使用。

J-Link RTT通常与J-Link调试器和SEGGER公司的嵌入式开发工具配合使用,为嵌入式系统的调试和跟踪提供了强大的支持。它在嵌入式系统开发中被广泛应用,特别是在没有操作系统支持或者操作系统功能有限的嵌入式系统中,为开发人员提供了一种高效的调试和跟踪解决方案。

那么MCU上要如何使用呢?方法很简单,只需要将几个SEGGER_RTT_*.c的文件导入工程即可。我们拿RT1060 EVK举个例子,首先下载RT1060的SDK,打开hello world工程。

1. 新建Group添加如下文件,文件都在SDK解压路径components tt中:

b7bf643e-3f1f-11ef-a4c8-92fbcf53809c.png

2. 添加头文件依赖:

b7dc8ff0-3f1f-11ef-a4c8-92fbcf53809c.png

3. 在hello_world.c中添加引用:

b7f430c4-3f1f-11ef-a4c8-92fbcf53809c.png

4. 创建up/downBuffer:

uint8_t rx_buffer[32], tx_buffer[32];
SEGGER_RTT_ConfigUpBuffer(0, "RTTUP", rx_buffer, sizeof(rx_buffer), SEGGER_RTT_MODE_NO_BLOCK_SKIP);
SEGGER_RTT_ConfigDownBuffer(0, "RTTDOWN", tx_buffer, sizeof(tx_buffer), SEGGER_RTT_MODE_NO_BLOCK_SKIP);

5. 使用RTT发送:

SEGGER_RTT_SetTerminal(0);
SEGGER_RTT_printf(0, "hello world ");

创建工作就已经完成了,接下来就是PC端的工作,打开J-Link RTT Viewer,选择器件为rt1060,这里要注意选择RTT control Block的地址,和代码一致:

b7f897c2-3f1f-11ef-a4c8-92fbcf53809c.png

点击OK,打开:

b81d9afe-3f1f-11ef-a4c8-92fbcf53809c.png

下载程序运行,打开一个Terminal 0,即可查看运行结果:

b83fae00-3f1f-11ef-a4c8-92fbcf53809c.png

相较于传统的UART方式,采用调试器内置的RTT功能进行数据通信,不仅免除了对宝贵串口资源的占用,还大大简化了编程实现流程,实现效率和便捷性的双重飞跃!可以让开发者轻松享受调试过程中的流畅与高效,强烈推荐大家亲自感受!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16608

    浏览量

    347186
  • 嵌入式
    +关注

    关注

    5036

    文章

    18768

    浏览量

    297614
  • 移植
    +关注

    关注

    1

    文章

    375

    浏览量

    28001
  • J-Link
    +关注

    关注

    0

    文章

    83

    浏览量

    22039

原文标题:从J-link RTT的移植到精通,让嵌入式调试飞起来!

文章出处:【微信号:NXP_SMART_HARDWARE,微信公众号:恩智浦MCU加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    调试Kinetis——使用OpenSDA平台做J-Link调试

    ,就可以按照J-Link调试方法调试Kinetis了,呵呵。当然有个最大的好处是,借用J-Link的特性,使用OpenSDA也可以支持Li
    发表于 01-08 14:20

    调试工具怎么也接受不到数据

    用cubeMX生成工程之后,笔者写了下面两句话(向串口发送一个字符串):但是,打开调试工具怎么也接受不到数据,魔术棒里面的 芯片型号,调试J-LINK方式)等已经
    发表于 07-23 07:23

    如何使用MCU-Link调试工具来刷写和调试套件吗?

    我正在尝试使用 SLN-TLHMI-IOT 创建我的自定义 GUI 应用程序,但我无法通过 MSD 调试和刷新我在套件上的工作,而且指南建议我没有 j-link。我可以使用MCU-Link
    发表于 03-16 07:25

    解析J-LinkJ-Trace、Open JTAG原理以及其区别

    J-LinkJ-Trace、Open JTAG都是用来调试程序的(当然还有其他工具可以进行调试
    的头像 发表于 01-30 09:29 1.8w次阅读
    解析<b class='flag-5'>J-Link</b>、<b class='flag-5'>J</b>-Trace、Open JTAG原理以及其区别

    J-LinkJ-Trace用户指南免费下载

    J-Link/J-Trace有不同的版本,每个版本都是为不同的目的/目标设备设计的。目前,J-Link/J-Trace有以下几种型号:J-Link
    发表于 03-03 08:00 14次下载
    <b class='flag-5'>J-Link</b>和<b class='flag-5'>J</b>-Trace用户指南免费下载

    J-Link script的组成

    脚本语言不需要编译,它由解释器动态解释执行。J-Link Commander(路径C:Program Files (x86)SEGGERJLinkJLink.exe)是一个解释器,负责对J-Link script文件进行解释。
    的头像 发表于 03-09 10:57 2018次阅读

    教你轻松J-Link不能连接目标MCU的问题

    J-Link是嵌入式软件、硬件工程师最常用的工具之一,但是,在使用这个工具时,也会遇到各种各样的问题。 今天来给大家讲讲最常见的一个问题:J-Link不能连接目标MCU。
    的头像 发表于 06-30 11:18 5526次阅读
    教你轻松<b class='flag-5'>J-Link</b>不能连接目标MCU的问题

    如何处理J-Link不能连接目标MCU的问题?

    J-Link是嵌入式软件、硬件工程师最常用的工具之一,但是,在使用这个工具时,也会遇到各种各样的问题。今天来给大家讲讲最常见的一个问题:J-Link不能连接目标MCU。
    发表于 10-29 10:21 8次下载
    如何处理<b class='flag-5'>J-Link</b>不能连接目标MCU的问题?

    基于J-Link Remote Server软件的远程调试方法

    SEGGER提供了一个J-Link Remote Server软件,可以使得在任何地方连接J-Link调试应用。J-Link Remote Server提供了图形界面和命令行的版本,支
    的头像 发表于 06-14 08:56 1881次阅读

    J-Link添加Geehy芯片

    最近调试Geehy的APM32芯片想着替换STM32,发现在使用Keil+J-Link调试过程中总是发现J-Link会在初次下载的时候提示
    的头像 发表于 07-25 14:57 4743次阅读

    J-Link script的组成与使用方法

    J-Link作为被广泛使用的调试器,提供了多种配套的软件工具。例如命令配置软件J-Link Commander,GDB server,J-F
    的头像 发表于 08-01 12:20 2356次阅读

    正点原子STM32开发板ST Link调试教程

    之前所有正点原子 STM32 教程讲解的调试工具都是以 JLINK 为例。由于德产 J-LINK 价格非常昂贵,而国产 J-LINK 因为版权问题将在万能的淘宝销声匿迹。所以我们有必要给大家介绍
    发表于 09-28 14:15 8次下载

    ST-Link也能当J-Link​使用?​

    之前分享过一篇文章《CMSIS-DAP和J-Link、ST-Link是什么关系》,文中提到了 J-Link 和 ST-Link 的 DAP 协议一样。
    的头像 发表于 03-13 11:12 2797次阅读
    ST-<b class='flag-5'>Link</b>也能当<b class='flag-5'>J-Link</b>​使用?​

    SEGGER J-Link调试仿真器支持新型可编程SOC(片上系统)系列

    所有J-Link型号(J-Link PRO、J-Link ULTRA+、J-Link PLUS和J-Link BASE)最新硬件版本现在都支
    的头像 发表于 04-14 14:20 2026次阅读

    Jlink-V9固件刷新工具-J-link固件刷新

    Jlink-V9固件刷新工具 - J-link固件刷新针对J-link偶发损坏问题,进行固件升级后解决问题。
    发表于 06-11 09:11 16次下载