[开发资料] SWO输出以及CLI调试输出信息

[复制链接]
1156|7
 楼主| szt1993 发表于 2024-5-21 17:52 | 显示全部楼层 |阅读模式
一、SWO输出

类似UART串口输出,SWO(Serial Wire Output)串行线输出也是其中的一种,但需要MCU支持SWO功能才行(目前很多MCU都支持)。
可以在线调试时,输出到IDE界面,比如:
3.jpg
还可以离线输出到一些工具界面,比如:

4.jpg

二、CLI调试输出信息

上面几种方式都是单纯的输出调试/日志信息,相对更高级一点的做法就是通过CLI(Command Line Interface)命令行的方式获取调试信息。
命令行相信大家不模式,做嵌入式开发的都知道,像Linux的终端就是一个命令行,只是我们这里说的命令行,相对Linux的终端来说要简单的多。但原理类似,都是通过输入命令来查看数据或执行某个动作。

1、相对printf优势
通过CLI可以任意时刻查看指定信息,执行某种操作。

2、相对printf劣势

需要在代码中集成CLI组件,以及对应的(查看、执行动作等)代码,更占用资源(当然,可以使用轻量级的CLI,相对不占资源那种)。

比如我之前用的一种,估计占用Flash不到1K的空间:

5.gif

其实,很多RTOS都集成了CLI组件,想用其实也不是想象中的那么复杂,和移植RTOS差不多,甚至更简单。

小夏天的大西瓜 发表于 2024-5-22 15:47 | 显示全部楼层
SWO我记得是下载程序时会用到的
小小蚂蚁举千斤 发表于 2024-6-11 16:24 | 显示全部楼层
很多RTOS都集成了CLI组件
AdaMaYun 发表于 2024-6-13 20:04 | 显示全部楼层
通过CLL命令行的方式获取调试信息非常实用
OKAKAKO 发表于 2024-6-21 21:24 | 显示全部楼层
SWO串行线输出也是其中的一种,目前很多MCU都支持。
中国龙芯CDX 发表于 2024-6-26 16:26 | 显示全部楼层
SWO输出类似UART串口输出
jf101 发表于 2024-6-27 16:30 | 显示全部楼层
很多RTOS都集成了CLI组件,想用其实也不是想象中的那么复杂
 楼主| szt1993 发表于 2024-6-29 16:01 | 显示全部楼层
小小蚂蚁举千斤 发表于 2024-6-11 16:24
很多RTOS都集成了CLI组件

确实是都有相关的组件
您需要登录后才可以回帖 登录 | 注册

本版积分规则

350

主题

3021

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部