SystemView的使用教程(基于FreeRTOS的配置)

目录

1.添加文件

2.配置修改

3.连接运行

4.常见问题


SystemView 是一个可以在线调试嵌入式系统的工具,它可以分析有哪些中断、任务执行了,以及这些中断、任务执行的先后关系。还可以查看一些内核对象持有和释放的时间点,比如信号量、互斥量、事件、消息队列等。这在开发和处理具有多个线程和事件的复杂系统时尤其有效。说白了就是我们可以通过这个软件实时监控我们实时系统的任务切换及调度情况,并且这个软件支持多种实时系统,例如RT-thread FreeRTOS uSCIII等。

6dc28739bc184c37905c6dde7e47f53f.jpeg

1.添加文件

打开SystemView安装目录下的“Src”文件夹:

1da984a8629f4bacab36d4c16010d420.jpeg

将下表中的文件均添加至工程目录中:

64f4ba6ef2c84025acdb9cd03fc8bb71.jpeg

添加结果如下图所示(以Keil为例,其他开发软件同理):

affaf78914b94573a8c1e407d51a9ed8.jpeg  3cd9a623f2e94dce8397fbb05c93e329.jpeg

2.配置修改

(1)在main.c 中添加头文件#include "SEGGER_SYSVIEW.h";

(2)在main函数开始处添加:SEGGER_SYSVIEW_Conf(),初始化SystemView;

(3)在FreeRTOS.h中添加头文件#include "SEGGER_SYSVIEW_FreeRTOS.h";

(4)在 FreeRTOSConfig.h  中添加两个宏定义:

#define INCLUDE_xTaskGetIdleTaskHandle 1

#define INCLUDE_pxTaskGetStackStart    1

3.连接运行

目标板连接好,下载程序,打开SystemView软件,点击Target选项,选择Recorder Configuration:

e23d2052af1b4ace9e24b39e3eaeeb88.jpeg

根据工程继续进行选择:

4c7a5697f4a24b029b7af3276a683024.jpeg

完成后,点“Start Recording”即可。如下图:

daf032c5865c4229905338cb68ac4954.jpeg

4.常见问题

4.1打开软件后,提示没有版权:

3368d1aae318475fbc6b51238d6275aa.jpeg

直接点的continue也是能用的,但是可能是有部分功能限制。

4.2在工程中添加相关文件后,出现编译错误,例如: error:  #55-D: too many arguments in invocation of macro "traceTASK_NOTIFY_TAKE"等:

b72afa4b9f604e4ab503ccbb1d0244a7.jpeg

检查工程中对Sample文件夹下的系统种类以及系统版本选择是否正确,以及第2步中的配置修改是否有误。

4.3点“Start Recording”后SystemView没有反应,如下所示:

97bbc67988e845c8b5b4d42d67a4fd71.jpeg

尝试在点击Start Recording时进行硬件复位操作。

 

 

  • 8
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值