SEGGER-RTT调试(代替串口printf输出)的打印方法

SEGGER_RTT这个软件包可以替代串口进行输出,特别是在引脚有限的单片机上,是一个不错的选择。画板时,如果没有引出调试串口,在调试期间,可以使用SEGGER_RTT。

使用segger自带的工具jlink RTT viewer工具实现串口打印功能,RTT 是real time transmit (实时传输)的意思,是Segger公司推出的,是配合J-LINK使用的一种调试手段,其框图如下:

MCU通过J-LINK,凭借RTT就可往电脑打印调试信息,电脑端这边用的是J-LINK的小软件RTT Viewer。

这样的好处是可以把MCU的串口资源释放出来,特别对于一些串口资源不那么充足的MCU来说,就可以省出一个串口去与其他外围芯片进行串口通讯。

下载:

首先从Jlink官网(www.segger.com)上下载RTT代码,然后将这四个文件添加到自己工程中去,并且在主程序工程中添加SEGGER_RTT.h文件;在添加头文件的主程序里面添加如下两个宏定义,实现多参数打印功能:

#define printf(...)               SEGGER_RTT_printf(0, __VA_ARGS__)
#define printfinfor(X,...)    SEGGER_RTT_printf(0, "file: "__FILE__",function: %s"", Line: %d:"X"\r\n",__FUNCTION__,__LINE__,##__VA_ARGS__)

使用方法:

双击打开JLinkRTTViewer.exe

点击OK之后,弹出如下弹框,就可以看到打印信息;

相关初始化代码,要在程序中放开;

  SEGGER_RTT_Init();
  SEGGER_RTT_printf(0,"SEEGRE_RTT_PRINTF TEST\r\n");

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值