JLink中文网站 > 使用教程 > J-Link SWO调试怎么开启 J-Link SWO数据显示异常如何调整
J-Link SWO调试怎么开启 J-Link SWO数据显示异常如何调整
发布时间:2026/07/31 18:00:04

  SWO可在程序连续运行时输出日志和事件,但依赖SWO引脚、ITM/TPIU模块及正确时钟。处理“J-Link SWO调试怎么开启J-Link SWO数据显示异常如何调整”时,应先打通目标端输出链路,再根据无数据、乱码和丢包等现象调整参数。

  一、J-Link SWO调试怎么开启

 

  并非所有支持SWD的芯片都支持SWO,开始前应确认器件和探针均满足要求。J-Link SWO Viewer可独立运行,也可配合不提供SWO终端的调试器使用。

 

  1、检查硬件和程序输出

 

  ①查阅芯片手册和原理图,确认SWO引脚已连接J-Link接口。

 

  ②先完成SWD下载和单步调试,排除供电、接线及器件选择错误。

 

  ③在工程中启用ITM输出函数,将固定测试字符串写入刺激端口0。

 

  ④检查引脚复用,确认系统初始化没有把SWO引脚改成GPIO或其他外设。

 

  ⑤重新编译并下载,让程序周期性输出短字符串。

 

  2、启动SWO Viewer

 

  ①安装J-Link软件包,打开【J-Link SWO Viewer】。

 

  ②选择目标器件;无法自动检测时,填写时钟初始化后的CPU频率。

 

  ③将目标接口设为【SWD】,并选择当前使用的J-Link设备。

 

  ④SWO速度先使用自动值;连接不稳定时再手动选择较低速度。

 

  ⑤进入显示窗口后勾选ITM端口0,运行程序并观察输出。

 

  ⑥需要保留日志时设置输出文件,或用命令行指定设备、频率和端口。

 

  SWO Viewer需要器件名称或CPU频率计算采样速度,未指定时通常自动选择。

 

  3、与IDE调试同时使用

 

  ①先在IDE中启动J-Link调试会话并下载程序。

 

  ②暂停目标后启动【J-Link SWO Viewer】,填写与IDE一致的器件和时钟。

 

  ③由IDE或程序负责初始化SWO时,启用附加模式,避免Viewer重复修改寄存器。

 

  ④恢复程序运行,确认没有其他工具同时占用同一J-Link连接。

 

  ⑤调试器不能初始化时,在程序或J-Link脚本中配置SWO引脚、TPIU和ITM。

 

  二、J-Link SWO数据显示异常如何调整

 

  无数据通常与引脚、ITM端口或初始化有关;乱码多由实际时钟与配置不一致引起;间歇丢失则还要检查输出速度、复位和低功耗状态。

 

  1、校准CPU频率和SWO速度

 

  ①确认程序进入主流程后的真实内核频率,不要填写晶振频率或复位默认值。

 

  ②在【J-Link SWO Viewer】中更新CPU频率,并降低SWO速度重新测试。

 

  ③打开【J-Link Commander】,连接目标后执行SWOSpeed,查看探针支持的速率。

 

  ④程序运行中切换主频时,在切换后重新配置SWO预分频。

 

  ⑤芯片使用独立Trace时钟时,填写真实基础时钟,不再直接套用CPU主频。

 

  多数Cortex-M器件的SWO时钟与内核时钟相关,部分芯片则使用独立时钟源。频率偏差过大时容易乱码或丢失。

  2、检查无数据和丢包

 

  ①确认Viewer勾选的ITM端口与程序写入端口一致,先只保留端口0。

 

  ②检查ITM、TPIU和跟踪使能位是否在复位或低功耗后被清除。

 

  ③检查SWO引脚复用、板级跳线、连接器和信号质量。

 

  ④减少高频循环中的日志输出,观察数据是否恢复连续。

 

  ⑤将长字符串拆成短输出,检查发送函数忙时是否丢弃字符。

 

  ⑥关闭其他读取SWO数据的工具,只保留一个接收端复测。

 

  J-Link软件当前按UART/NRZ方式接收SWO,不支持Manchester编码;目标端协议设置错误时,即使引脚有波形,也无法正确解码。

 

  3、处理复位后停止输出

 

  ①把SWO初始化放在系统时钟和引脚配置完成之后。

 

  ②检查复位流程是否关闭跟踪时钟,或把SWO引脚恢复为默认功能。

 

  ③需要记录启动阶段时,让程序自行初始化SWO。

 

  ④使用附加模式时明确填写SWO频率,再重新上电验证。

 

  三、怎样验证SWO配置已经稳定

 

  调整后先用固定时钟和低输出量建立基准,再逐步恢复正式配置。

 

  1、完成最小验证

 

  ①固定CPU频率,暂时关闭动态调频和低功耗。

 

  ②只启用ITM端口0,周期输出带递增序号的短字符串。

 

  ③连续采集并检查序号、字符和时间间隔是否完整。

 

  ④逐步提高SWO速度和输出频率,每次只改变一个参数。

 

  ⑤恢复时钟切换、复位和低功耗,分别检查输出能否恢复。

 

  ⑥保存稳定的器件、CPU频率、SWO频率和脚本。

  总结

 

  “J-Link SWO调试怎么开启J-Link SWO数据显示异常如何调整”的关键,是让目标输出、引脚、Trace时钟和采样参数保持一致。没有数据时检查引脚、端口和初始化,出现乱码或丢包时重点校准频率、速率与输出量,复位后异常则重新检查目标端配置。希望本文对大家使用J-Link SWO观察程序运行信息有所帮助,如需进一步了解,可联系咨询。

读者也访问过这里:
135 2431 0251