4022|4

227

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

IAR EWARM的SWO Trace调试功能 [复制链接]

 

SWD调试接口是ARM公司提出的一种调试接口,相对于传统的JTAG接口,使用更少的信号引脚。SWD调试接口信号定义如下图红线所示:

图 1

一些Cortex- M3/M4/M7等架构的芯片支持SWO Trace功能,其内置了DWT,ITM((Instrument Trace Macrocell)等单元。ITM的一个主要的用途,就是支持信息的输出。此外DWT还会跟踪中断的进入和退出,对PC计数器进行采样。

IAR支持SWO Trace调试这一强大的调试功能,利用SWD接口中的SWO串行线输出调试时产生的跟踪信息。使用SWO调试需要将调试器的SWO引脚连接到芯片的SWO。

 

本文将简单介绍几种SWO Trace调试的实用功能。

使用SWO Trace的硬件要求:

1.使用的仿真器支持SWD调试接口和SWO串行通信。

2.芯片支持SWD调试接口。M3/M4/M7等主流内核的芯片大多都支持,且芯片上SWO引脚应与硬件调试接口的SWO引脚连接。

使用SWO Trace的软件设置:

调试器配置中选择使用SWD接口连接。

图 2

SWO调试功能举例:

(1). 使用Terminal I/O打印调试信息

IAR提供的Terminal I/O功能可以将函数内printf语句输出的信息在Terminal I/O窗口中显示出来,printf信息的输出有两种方式,半主机模式和SWO模式.半主机模式时信息的输出速率较慢,当使用SWO模式进行信息输出时,速度很快,适用于有大量信息需要输出的时候。可以在General Options->Library Configuration选项中勾选使用SWO模式,Terminal I/O窗口在进入调试环境后从View菜单打开。

 

图 3

(2). 实时显示变量值的变化

借助SWO调试,可以实时监测全局变量的数值变化,并以图形化的方式进行显示。下图中的TestPoint为全局变量,在该变量处右键选择设置“Data Log”数据记录断点。

图 4

通过view->breakpoint选项打开breakpoint断点窗口,在断点处右键点击Edit选项进行编辑,选择当该变量被Write改写时触发数据记录断点。

图 5

图 6

从所使用的仿真器如I-jet调试菜单下打开Data Log和Timeline窗口,在窗口处右键选择“Enable”使能后,点击“Go”全速运行程序,在Data log窗口中将会实时显示全局变量TestPoint变量值的跟踪记录。显示的数据中包含时间戳、变量值和变量地址等信息。

图 7

在Timeline 窗口Data Log一栏再次右键选择“Enable”使能图形化显示,可获得如下TestPoint变量值的实时变化视图。

图 8

(3). 测量代码执行时间

因为Data Log窗口中显示的信息包含了变量值变化时的时间戳,这可用于测量函数的执行时间。如下图所示在排序函数 NumberSorting()执行前后添加了一个全局变量TimeStamp作为测量运行时间的监控变量。 

图 9

图 10

NumberSorting这个函数执行前后修改了TimeStamp变量的值,根据Data Log窗口中TimeStamp值的变化时间可计算出函数的执行时间,TimeStamp 从 0x05 变化到 0x0A 所用的时间为:

t = 21576.23 - 20992.01 = 584.22us

由此可以知道排序函数 NumberSorting()执行所用的时间为 584.22us。

最新回复

再多搞点,你搞的文章都很不错。   详情 回复 发表于 2020-11-11 22:36
点赞 关注(1)
个人签名

欢迎关注“麦克泰技术”

 

回复
举报

7452

帖子

18

TA的资源

五彩晶圆(高级)

沙发
 

有意思,收藏了,还真没用过SWO,没想法这么多功能。

 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

227

帖子

0

TA的资源

一粒金砂(高级)

板凳
 
freebsder 发表于 2020-11-10 22:47 有意思,收藏了,还真没用过SWO,没想法这么多功能。

 
个人签名

欢迎关注“麦克泰技术”

 
 

回复

7452

帖子

18

TA的资源

五彩晶圆(高级)

4
 

再多搞点,你搞的文章都很不错。

 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

227

帖子

0

TA的资源

一粒金砂(高级)

5
 
freebsder 发表于 2020-11-11 22:36 再多搞点,你搞的文章都很不错。

好滴,谢谢赞赏,你的眼光也不错

 
个人签名

欢迎关注“麦克泰技术”

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表