日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

FreeRTOS 查询任务 剩余的栈空间的 方法

發(fā)布時間:2025/4/5 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FreeRTOS 查询任务 剩余的栈空间的 方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

FreeRTOS 源碼下載地址

1、官方文檔提供了 ? 函數(shù) ?用來查詢 ?任務(wù) 剩余 ? 棧 空間,首先是看官方的文檔解釋(某位大神 翻譯 的?官方文檔。)

參數(shù)解釋:?? ? xTask:被查詢?nèi)蝿?wù)的句柄——欲知如何獲得任務(wù)句柄,詳情請參見API 函數(shù)xTaskCreate()的參數(shù)pxCreatedTask。如果傳入 NULL 句柄,則任務(wù)查詢的是自身棧空間的高水線。

返回值:?任務(wù)棧空間的實際使用量會隨著任務(wù)執(zhí)行和中斷處理過程上下浮動。uxTaskGetStackHighWaterMark()返回從任務(wù)啟動執(zhí)行開始的運(yùn)行歷史中,棧空間具有的最小剩余量。這個值即是棧空間使用達(dá)到最深時的剩下的未使用的棧空間。這個值越是接近0,則這個任務(wù)就越是離棧溢出不遠(yuǎn)了。

?

?

下面要說我的 使用方法:?

? 首先 在 創(chuàng)建任務(wù)的時候 得 添加任務(wù)句柄:

具體方法是:

1、xTaskHandle?pvCreatedTask_ToggleLed4; //這句代碼 是定義一個 空指針變量。(typedef void * xTaskHandle;)

2、xTaskCreate(ToggleLed4, (int8_t *)"LED4", configMINIMAL_STACK_SIZE, NULL, LED_TASK_PRIO,&pvCreatedTask_ToggleLed4);//創(chuàng)建一個任務(wù)

3、要使用uxTaskGetStackHighWaterMark?這個函數(shù),首先得看下面說明:

  * INCLUDE_uxTaskGetStackHighWaterMark must be set to 1 in FreeRTOSConfig.h for
  * this function to be available.

意思是在FreeRTOS.h(英文描述錯誤,實際在這個FreeRTOS.h中)文件中要 把?INCLUDE_uxTaskGetStackHighWaterMark的宏定義改為1,不能改的,修改一下文檔的屬性,把只讀去掉!

?

2018年8月8日14:06:45,注,不是源文檔描述錯誤,是我理解錯誤,應(yīng)該修改配置文件 FreeRTOSConfig.h,在該文件中 增加 宏定義 #define?INCLUDE_uxTaskGetStackHighWaterMark 1。

?

4、//下面就是我要查詢的 任務(wù) 剩余的棧空間,里面調(diào)用了uxTaskGetStackHighWaterMark?這個函數(shù)

void ToggleLed4(void * pvParameters)
{
  unsigned portBASE_TYPE uxHighWaterMark;
  for( ;; )
  {
    /* toggle LED4 each 250ms */
    STM_EVAL_LEDToggle(LED4);
    uxHighWaterMark=uxTaskGetStackHighWaterMark( pvCreatedTask_ToggleLed4 );
    printf("ToggleLed4剩余棧空間是多少:%d.\r\n",uxHighWaterMark);//gxp,串口檢測,2015年11月17日11:26:42
    vTaskDelay(500);
  }
}

5、看 結(jié)果:

?

6、分析:

? ? ? ? ?1、這里的 ?“74”,應(yīng)該就是 ?74*4=296個 字節(jié)(1字節(jié)=8位),因為 freertos 在設(shè)置棧的時候是按照 “字”計算的,在STM32中一個字是32位!

? ? ? ???2、根據(jù) 返回的數(shù)據(jù)判斷,這個任務(wù) 還剩余 296個字節(jié)沒有使用。

   ?3、configMINIMAL_STACK_SIZE==128,還剩余74,就是已經(jīng)使用等于128-74=54,那么設(shè)置任務(wù)棧的時候應(yīng)該設(shè)置(已經(jīng)使用*2)即54*2=108合適,即2倍合適(參考),2017年11月7日08:56:24.

?

7、2016年11月28日17:25:23,可以通過API 直接看系統(tǒng)的運(yùn)行情況,進(jìn)行可視化調(diào)試,這里推薦一個大神的博客!

  朱工http://blog.csdn.net/zhzht19861011/article/details/50717549

總結(jié)

以上是生活随笔為你收集整理的FreeRTOS 查询任务 剩余的栈空间的 方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 秋霞三区| 久久大 | 精东传媒在线观看 | 少妇野外性xx老女人野外性xx | 精品视频www | 久久久人人人 | 国产熟妇与子伦hd | 亚洲福利社区 | av性色| 蜜桃精品视频在线 | 91视频99 | 污视频在线 | 日本美女性高潮 | 亚洲成人网在线 | 亚洲污网站 | 91抖音在线观看 | 日韩精品一区二区三区四区五区 | 在线观看一区二区视频 | 日日夜夜免费精品视频 | 久久激情婷婷 | 日韩欧美视频在线播放 | 落日余晖 | 成人深夜视频 | 在线黄av| 成人深夜视频 | 性欧美一区| 91成人免费看片 | 最新中文字幕av | 成人免费视频观看视频 | 久久激情av | 精品国产一区二区三区久久 | 免费看黄色漫画 | 婷婷久久五月 | 麻豆电影网站 | 一区二区在线观看视频 | aaa午夜| 日韩精品 欧美 | 四虎看黄 | 成人av手机在线观看 | av影视在线观看 | 日韩精品免费一区二区在线观看 | 欧美成人综合色 | 天天插天天操 | 我要看黄色大片 | 丝袜av电影| 人人精品久久 | av导航福利 | 激情视频免费在线观看 | 国语对白永久免费 | 欧美亚洲伦理 | 成人在线观看免费视频 | 国产一区二区在线精品 | 日韩三级精品 | 未满十八18禁止免费无码网站 | www.成年人| 国产第五页| 青青草视频在线观看免费 | 久久国 | 先锋影音一区二区 | 三女警花合力承欢猎艳都市h | 光棍影院av | 日韩成人在线视频 | 国产美女www爽爽爽 www.国产毛片 | 国产av精国产传媒 | 在线视频一区二区 | 久久久久久久久国产精品一区 | 欧美成人国产va精品日本一级 | 99草在线视频 | 国产亚洲精品美女久久久久 | 亚洲国产三级 | 超碰狠狠干 | 日批免费观看 | 少妇视频在线 | 日本高清免费aaaaa大片视频 | 在线色亚洲 | 欧美18一19性内谢 | 91国内揄拍国内精品对白 | 午夜免费网站 | 人人爱超碰 | 91久久超碰| 四虎在线免费观看视频 | 玖玖爱资源站 | 欧美黄网站 | 青青青青青草 | 久久久久久久久99 | 男女啪啪免费看 | 日韩精品中文字幕一区二区 | 午夜日韩精品 | 欧美一级看片 | 国产区在线视频 | 91精品国产aⅴ一区二区 | 日本久久综合 | 久插视频 | 波多野结衣在线播放视频 | 欧美成人精品三级网站 | 成人小视频免费在线观看 | 亚洲免费福利视频 | 日韩中文在线字幕 | 欧美成人一区二区 |