使用FreeRTOSViewer跟踪调试FreeRTOS工程

电子说

1.3w人已加入

描述

简介

FreeRTOSViewer 可以让使用 FreeRTOS 操作系统的客户跟踪调试一些操作内核的信息,例如任务信息,消息队列信息等等。这个辅助的工具可以在内核停止或者打断的时候查看内核的相关内容。 

Microchip 的 MPLAB® X IDE+Harmony 软件开发平台已经集成了 FreeRTOS 系统,并将FreeRTOSViewer 工具嵌入开发平台中以方便客户调试。 

本文介绍一种基于 MPLAB X IED+Harmony 下使用 FreeRTOSViewer 工具调试的方法。

硬件工具和软件平台

硬件:

PIC32MZ EF入门工具包

MEB II

软件:

  • MPLAB-X IDE:v3.61 或者更新

  • XC32:v1.42 或者更新

  • Harmony:v2.0.00b 或者更新

调试工具:

MPLAB® ICD3

MPLAB® REAL ICE

步骤

一、在MPLAB X IDE中安装RTOSViewer插件

在 MPLAB X IDE中选择 Tools->Plugins,进入插件安装,选择 RTOS Viewer 插件进行安装。

嵌入式

二、在Harmony中打开一个使用了FreeRTOS的工程

嵌入式

三、设置工程,选择合适的调试工具

嵌入式

四、在 MPLAB X IDE中选择 Tool->Embedded->RTOSViewer,打开 RTOSViewer工具

嵌入式

五、在RTOSViewer中选择FreeRTOS Kernel9.0.0

嵌入式

六、Debug工程,运行大约10S,待程序稳定以后暂停程序运行。由于对操作系统信息的读取需要一定的时间,需要等待

嵌入式

七、通过RTOSViewer中的Tasks观察窗口查看任务的相关信息

嵌入式
  1. Reference:任务序号

  2. Name:任务名称

  3. Priority:任务优先级

  4. Sate:任务状态

    1. Ready : Ready to execute and present in ready list

    2. Delayed: Blocked task in delayed list

    3. Suspended: Suspendered by vTaskSuspend() call

    4. Running: Currently executing task

    5. Deleted: Terminated task but the memory is not yet freed

  5. TCB ID:任务的入口地址

  6. Stack(Start/Top):任务的堆栈起始地址

八、通过RTOSViewer中的Queue观察窗口查看消息队列的相关信息

嵌入式
  1. Sno:队列序号

  2. Registered Queue Name:队列名称

  3. Queue Head:队列开始地址

  4. Queue Tail:队列结束地址

  5. Write To:队列下一个待写地址

  6. Read From:队列最后以后读取地址

  7. Pending Messages:队列中待处理的消息数

  8. Length:队列长度

  9. Item Sizes:队列单元的 size

九、通过RTOSViewer中的CoRoutines观察窗口查看协同运行函数的相关信息

嵌入式
  1. Sno:序号

  2. Functions:函数名称

  3. Blocking Event:阻塞的事件

  4. State:状态

  5. Priority:优先级

十、通过RTOSViewer中的System观察窗口查看系统的相关信息

嵌入式原文转自Microchip微芯

如何关注Excelpoint世健微信订阅号?第一步:请按住该二维码,待窗口弹出“识别图中二维码”后,选择“识别图中二维码”;第二步:待窗口弹出Excelpoint世健微信订阅号时,选择“关注”,即完成关注Excelpoint世健微信订阅号。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分