segger RTT viewer串口打印调试日志

使用segger自带的工具jlink RTT viewer工具实现串口打印功能:

首先从Jlink官网上下载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__)

(相关代码下载链接http://download.segger.com/J-Link/RTT/RTT_Implementation_140925.zip

 

 之后可以使用 printf / printfinfor(X,...) 打印调试信息,在JLINK安装目录中打开J-Link RTT Viewer,就可以看到调试信息,如下图;

 

JLINK RTT viewer 输入:

首先在程序中添加SEGGER_RTT_Read(0,rtt_buf,sizeof(rtt_buf));

其次在J-Link RTT Viewer控制台的Input里面选择Sending/Send on Enter,然后End of Line选择None

 这样就可以通过下方输入框输入信息,按Enter发送

 

注:在freertos系统任务中加入此打印功能,很占用内存,程序莫名其妙死机,很有可能是此打印语句造成堆栈溢出,如果有莫名其妙死机问题,建议优先格式化此条语句再排查;

 

转载于:https://www.cnblogs.com/weishengzhong/p/9052950.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
串口监控器是一个免费的多功能串口通讯监控软件,它能够多种方式显示,接收,分析通讯数据;能够以多种灵活方式发送数据;功能强大,操作简便,在串口通讯监控,设备通讯测试中,能够有效提高工作效率。 主要功能如下: 接收数据: 1. 以十六进制方式显示接收到的数据。 2. 以字符方式显示接收到的数据。 3. 数据帧自动识别,分行显示。 4. 接收数据自动换行设置。 5. 显示或隐藏数据帧的接收时间。 6. 自动清除,自动保存接收到的数据。 7. 接收数据个数计数。 发送数据: 1. 十六进制方式发送数据。 2. 字符串方式发送数据。 3. 发送“发报窗口”当前光标行的数据帧。 4. 循环发送“发报窗口”当前光标行的数据帧。 5. 循环发送“发报窗口”固定行的数据帧。 6. 循环依次发送“发报窗口”的多行数据帧。(设置起始行,行数) 7. 触发发送,接收到“发报窗口”某一行数据,触发发送“发报窗口”另一行数据。 8. 发送数据个数计数。 实用增强功能: 1. 强大易用的进制转换功能。 2. 智能识别当前光标处数据帧的行号,“字符”或“十六进制数”的个数。 3. 智能计算当前选择的“字符”或“十六进制数”的个数。 4. 强大的数据查找功能。 5. 定时保存,定时清除数据。 6. 根据自己的喜好,灵活变换操作界面。 应用场合: 1. 截取和分析设备之间通讯数据流。 2. 串行外围设备硬件开发。 3. 串行设备驱动程序开发。 4. 调试和测试设备和设备之间的串行通讯过程。 5. 记录和分析RS232/422/485通信过程。 6. 模拟某设备通讯过程,对另外设备进行通讯测试。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值