很简单,首先从Jlink官网上下载RTT代码,然后将这四个文件添加到自己工程中去,并且在主程序工程中添加SEGGER_RTT.h文件
很简单,首先从Jlink官网上下载RTT代码,然后将这四个文件添加到自己工程中去,并且在主程序工程中添加SEGGER_RTT.h文件
之后可以使用SEGGER_RTT_printf(0," mes_id = 0x%02X, cur_flg = 0x%02X \r\n", msg_id, cur_flg); 打印调试信息,在JLINK安装目录中打开J-Link RTT Viewer,就可以看到调试信息。初步测试好像不能打印浮点型的数据。
注意device以及RTT Control Block配置,成功输出后,则如下图显示:
自行开发上位机显示RTT Viewer,这样就可以增加Timestamp来定位log产生的时间戳:
至于时间戳的显示,使用QT的富文本编辑器,采用HTML格式进行显示:
import os
from datetime import datetime
from PyQt5.QtCore import Qt, QRect, QSize
from PyQt5.QtWidgets import QWidget, QPlainTextEdit, QTextEdit
from PyQt5.QtGui import QColor, QPainter, QTextFormat
class QCodeEditor(QPlainTextEdit):
def __init__(self, parent=None):
super().__init__(parent)
def setHtml(self, text):
line = '[{}] {}'.format(datetime.now().strftime("%H:%M:%S.%f"), text)
self.appendHtml(line)
这个可以参考pyJlink,这个是SEGGER提供的,在官方网站可以下载,在github下载也是可以的。