文檔說明
在調(diào)試 i.MX RT FreeRTOSMCUXpresso SDK工程的時(shí)候, 很多網(wǎng)友需要添加查看每個(gè)task的runtime功能。
該功能可以在MCUXpressoIDE的TASK List(FreeRTOS)中調(diào)出來(lái): Windows->show view->other->MCUXpresso IDEFreeRTOS->Task List(FreeRTOS),如下圖:
但是在運(yùn)行i.MX RTSDK工程的時(shí)候, 會(huì)發(fā)現(xiàn)Runtime欄目是一個(gè)問號(hào), 如下:
那么如何配置出具體的Runtime呢?
實(shí)際上, 我們有個(gè)國(guó)外的專家寫過一篇基于Kinetis K64的FreeRTOSruntime添加案例。
i.MX RT的SDK FreeRTOS中添加runtime的方法和KINETIS類似, 同樣需要添加一個(gè)硬件timer去做runtime的記錄。K64使用的是FTM, i.MX RT沒有FTM的模塊,可以換其他的timer, 本文使用PIT硬件定時(shí)器去添加到i.MX RTfreetos代碼中,實(shí)現(xiàn) MCUXpressoSDK工程的runtime功能。
軟硬件準(zhǔn)備如下:
MIMXRT1064-EVK
SDK_2.7.0_EVK-MIMXRT1064
MCUXpresso IDE
具體步驟
1. 導(dǎo)入 SDK 工程
本文以SDK FreeRTOShello 工程為基礎(chǔ): SDK_2.7.0_EVK-MIMXRT1064oardsevkmimxrt1064 tos_examplesfreertos_hello 2. 添加PIT 硬件配置
配置的硬件定時(shí)器時(shí)間需要至少是 RTOS tick 時(shí)間 10 倍,從 FreeRTOSConfig.h 中可以看到 RTOS tick 時(shí)間:
#define configTICK_RATE_HZ ((TickType_t)200)
所以,需要配置 PIT 的定時(shí)時(shí)間為 200*10=2Khz
配置好之后, 點(diǎn)擊 update code,更新 PIT 外設(shè)驅(qū)動(dòng)到工程的相關(guān)代碼中??截?SDK 中的 pit.c, pit.h到導(dǎo)入 MCUXpresso 工程的 driver folder中
SDKpit 驅(qū)動(dòng)路徑是:
SDK_2.7.0_EVK-MIMXRT1064devicesMIMXRT1064drivers
3. 修改代碼
3.1freertos_hello.c
添加頭文件
添加 PIT 中斷服務(wù)函數(shù)
添加 runtime 相關(guān)代碼
Main函數(shù)添加外設(shè)調(diào)用
Hello_task任務(wù)函數(shù)把掛起改為 vTaskDelay.
3.2 FreeRTOSConfig.h
Run time宏定義打開
添加 runtime 的宏定義相關(guān)代碼
到目前為止,所有代碼已經(jīng)修改完畢。
測(cè)試結(jié)果
下面進(jìn)行燒錄到 MIMXRT1064-EVK 測(cè)試:
上圖中Task List 中runtime,可以看到 hello_task, IDLE 的 runtime 百分比情況, 已經(jīng)實(shí)現(xiàn) runtime觀察功能。
審核編輯:湯梓紅
-
恩智浦
+關(guān)注
關(guān)注
14文章
5886瀏覽量
108479 -
FreeRTOS
+關(guān)注
關(guān)注
12文章
484瀏覽量
62425 -
SDK
+關(guān)注
關(guān)注
3文章
1047瀏覽量
46331 -
runtime
+關(guān)注
關(guān)注
0文章
17瀏覽量
2193 -
mcuxpresso
+關(guān)注
關(guān)注
1文章
41瀏覽量
4245
原文標(biāo)題:【經(jīng)驗(yàn)分享】在i.MX RT的FreeRTOS MCUXpresso工程中添加runtime
文章出處:【微信號(hào):NXP_SMART_HARDWARE,微信公眾號(hào):恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
i.Mx RT平臺(tái)內(nèi)存建議
01:i.MX RT的市場(chǎng)應(yīng)用和參考解決方案
![01:<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>的市場(chǎng)應(yīng)用和參考解決方案](https://file.elecfans.com/web1/M00/7E/93/o4YBAFwbSLKAL8huAAAsy0wfxyk367.jpg)
02:i.MX RT系列產(chǎn)品的介紹與演示
![02:<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>系列產(chǎn)品的介紹與演示](https://file.elecfans.com/web1/M00/7F/0B/pIYBAFwbSSqAAi9iAAAuup1cykg609.jpg)
恩智浦i.MX RT1170開創(chuàng)GHz MCU時(shí)代
恩智浦i.MX RT1170在將該系列帶上了更高的層面
i.MX RT開發(fā)筆記-08 | i.MX RT1062嵌套中斷向量控制器NVIC(按鍵中斷檢測(cè))
![<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>開發(fā)筆記-08 | <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1062嵌套中斷向量控制器NVIC(按鍵中斷檢測(cè))](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
RT-Thread & NXP 發(fā)布 i.MX RT 系列 BSP 新框架
![<b class='flag-5'>RT</b>-Thread & NXP 發(fā)布 <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b> 系列 BSP 新框架](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
i.MX RT超低功耗模式捉蟲記
![<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>超低功耗模式捉蟲記](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
適用于i.MX RT500和i.MX RT600 MCU的Xtensa音頻框架介紹
在i.MX RT1050上如何實(shí)現(xiàn)雙大容量存儲(chǔ)(MSC)設(shè)備
![<b class='flag-5'>在</b><b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1050上如何實(shí)現(xiàn)雙大容量存儲(chǔ)(MSC)設(shè)備](https://file1.elecfans.com/web2/M00/A4/99/wKgaomUD39uAR6O6AAB40WgIfAg916.png)
評(píng)論