簡介
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觀察窗口查看任務的相關信息

-
Reference:任務序號
-
Name:任務名稱
-
Priority:任務優先級
-
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
-
TCB ID:任務的入口地址
-
Stack(Start/Top):任務的堆棧起始地址
八、通過RTOSViewer中的Queue觀察窗口查看消息隊列的相關信息

-
Sno:隊列序號
-
Registered Queue Name:隊列名稱
-
Queue Head:隊列開始地址
-
Queue Tail:隊列結束地址
-
Write To:隊列下一個待寫地址
-
Read From:隊列最后以后讀取地址
-
Pending Messages:隊列中待處理的消息數
-
Length:隊列長度
-
Item Sizes:隊列單元的 size
九、通過RTOSViewer中的CoRoutines觀察窗口查看協同運行函數的相關信息

-
Sno:序號
-
Functions:函數名稱
-
Blocking Event:阻塞的事件
-
State:狀態
-
Priority:優先級
十、通過RTOSViewer中的System觀察窗口查看系統的相關信息

如何關注Excelpoint世健微信訂閱號?第一步:請按住該二維碼,待窗口彈出“識別圖中二維碼”后,選擇“識別圖中二維碼”;第二步:待窗口彈出Excelpoint世健微信訂閱號時,選擇“關注”,即完成關注Excelpoint世健微信訂閱號。
-
嵌入式
+關注
關注
5152文章
19675瀏覽量
317606 -
microchip
+關注
關注
52文章
1549瀏覽量
119071
原文標題:【世說設計】Microchip MPLAB? Harmony之學習篇(20)
文章出處:【微信號:Excelpoint_CN,微信公眾號:Excelpoint_CN】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
在i.MX RT的FreeRTOS MCUXpresso工程中添加runtime

為什么CubeMX設計的FreeRTOS工程只能正常運行3個任務?
FreeRTOS調試功能代碼報錯
使用Tracealyzer跟蹤FreeRTOS內核
mcuxpressor freertos調試崩潰的原因?怎么解決?
使用RealView MDK進行SW調試和實時跟蹤

AS:可視化的調試工具--FreeRTOS+Trace
關于CoreSight中調試和跟蹤的相關內容
IAR移植FreeRTOS

評論