在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

空閑任務鉤子函數(shù)詳解

麥辣雞腿堡 ? 來源:嵌入式Linux系統(tǒng)開發(fā) ? 作者:嵌入式Linux系統(tǒng)開 ? 2023-07-30 10:57 ? 次閱讀

空閑任務鉤子函數(shù)詳解

1、鉤子函數(shù)

FreeRTOS中有多個鉤子函數(shù),鉤子函數(shù)類似回調函數(shù),當某個功能(函數(shù))執(zhí)行的時候就會調用鉤子函數(shù),至于鉤子函數(shù)的具體內(nèi)容那就由用戶來編寫。如果不需要使用鉤子函數(shù)的話就什么也不用管,鉤子函數(shù)是一個可選功能,可以通過宏定義來選擇使用哪個鉤子函數(shù),可選的鉤子函數(shù)如表所示:

圖片

鉤子函數(shù)的使用方法基本相同,用戶使能相應的鉤子函數(shù),然后自行根據(jù)實際需求編寫鉤子函數(shù)的內(nèi)容,下一節(jié)我們會以空閑任務鉤子函數(shù)為例講解如何使用鉤子函數(shù)。

2、空閑任務鉤子函數(shù)

在每個空閑任務運行周期都會調用空閑任務鉤子函數(shù),如果想在空閑任務優(yōu)先級下處理某個任務有兩種選擇:

● 在空閑任務鉤子函數(shù)中處理任務。

不管什么時候都要保證系統(tǒng)中至少有一個任務可以運行,因此絕對不能在空閑任務鉤子函數(shù)中調用任何可以阻塞空閑任務的 API 函數(shù),比如vTaskDelay(),或者其他帶有阻塞時間的信號量或隊列操作函數(shù)。

● 創(chuàng)建一個與空閑任務優(yōu)先級相同的任務。

創(chuàng)建一個任務是最好的解決方法,但是這種方法會消耗更多的 RAM

要使用空閑任務鉤子函數(shù)首先要在 FreeRTOSConfig.h 中將宏 configUSE_IDLE_HOOK 改為1,然后編寫空閑任務鉤子函數(shù)vApplicationIdleHook()。通常在空閑任務鉤子函數(shù)中將處理器設置為低功耗模式來節(jié)省電能,為了與 FreeRTOS 自帶的 Tickless模式做區(qū)分,這里我暫且將這種低功耗的實現(xiàn)方法稱之為通用低功耗模式(因為幾乎所有的 RTOS 系統(tǒng)都可以使用這種方法實現(xiàn)低功耗)。這種通用低功耗模式和
FreeRTOS 自帶的 Tickless 模式的區(qū)別我們通過下圖來對比分析一下。

圖片

圖中有三個任務,它們分別為一個空閑任務(Idle),兩個用戶任務(Task1 和Task2),其中空閑任務一共有運行了三次,分別為(1)、(2)、(3),其中 T1 到 T12 是 12 個時刻

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5092

    文章

    19177

    瀏覽量

    307682
  • 函數(shù)
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62973
  • FreeRTOS
    +關注

    關注

    12

    文章

    484

    瀏覽量

    62396
收藏 人收藏

    評論

    相關推薦

    ucosii空閑任務鉤子函數(shù)App_TaskIdleHook睡眠之后是不是只有喚醒才能執(zhí)行?

    static u16 cnt = 0;voidApp_TaskIdleHook (void){cnt++; __WFI;}在空閑任務鉤子函數(shù)增加睡眠指令,發(fā)現(xiàn)cnt++計數(shù)反而要比系統(tǒng)時間
    發(fā)表于 12-31 14:36

    菜鳥求助 u/Cos III 空閑任務鉤子函數(shù) 數(shù)據(jù)不會溢出的問題

    1、使用的精英版的官方歷程,稍微做了修改,把每次空閑任務鉤子函數(shù)里num++ 后的值用串口打印了出來,結果發(fā)現(xiàn)static int num定義的變量竟然可以超過65535.無法理解。2、還有個
    發(fā)表于 01-27 19:34

    Flask中的鉤子函數(shù)使用

    Flask鉤子函數(shù)(十一)
    發(fā)表于 08-01 07:04

    u/Cos III空閑任務鉤子函數(shù)static int num定義的變量竟然可以超過65535.

    使用的精英版的官方歷程,稍微做了修改,把每次空閑任務鉤子函數(shù)里num++ 后的值用串口打印了出來,結果發(fā)現(xiàn)static int num定義的變量竟然可以超過65535.無法理解。求大神指教
    發(fā)表于 03-11 04:37

    FreeRTOS檢測堆棧溢出,鉤子函數(shù)是回調到哪里?

    FreeRTOS中有個宏configCHECK_FOR_STACK_OVERFLOW用來檢測堆棧溢出,在檢測堆棧溢出后調用鉤子函數(shù)鉤子函數(shù)是回調到哪里,,是讓他回到檢測的地方么。
    發(fā)表于 07-28 07:28

    關于鉤子函數(shù),在CCS的編譯器里有哪幾個規(guī)則?

    如何對鉤子函數(shù)的使用進行控制?關于鉤子函數(shù),在CCS的編譯器里有哪幾個規(guī)則?
    發(fā)表于 04-19 06:09

    為什么在鉤子函數(shù)中不能使用串口打印函數(shù)

    UCOSIII,STM32F107官方移植工程中,鉤子函數(shù)中不能使用串口打印函數(shù)APP_TRACE_INFO(); 未找到原因。
    發(fā)表于 08-23 07:14

    【每日一練】第六節(jié):空閑線程及兩個常用的鉤子函數(shù)

    本視頻為【每日一練】的第6節(jié)學習視頻,注:剛開始學習的童鞋請從第一節(jié)視頻開始打卡哦(本節(jié)視頻在下面打卡即可)學習任務:1、線程退出后,資源在哪里被回收?(簡答)2、可以在調度其鉤子函數(shù)中查看線程切換(判斷)打卡規(guī)則詳見:第二期【每日一練】來啦,16天入門RT-Thread
    發(fā)表于 08-28 19:15

    鉤子函數(shù)是什么?RT-Thread系統(tǒng)引入鉤子函數(shù)有何用處

    鉤子函數(shù),在線程切換和空閑線程循環(huán)中調用。內(nèi)存鉤子函數(shù),在分配或釋放內(nèi)存塊時調用。定時器鉤子函數(shù),在定時器超時時調用。函數(shù)說明rt_err_
    發(fā)表于 08-29 15:30

    NANO3.15無法進入空閑線程鉤子函數(shù)該怎么辦

    使用NANO 3.15 keil5 ARMV6編譯 芯片STM32F767使用CUBE生成硬件初始化。HAL庫使用線程和軟件定時器正常。目前想要加入空閑線程鉤子函數(shù)來運行看門狗喂狗函數(shù)。測試發(fā)現(xiàn)不進
    發(fā)表于 09-07 10:50

    UCOS擴展例程-UCOSIII空閑任務鉤子函數(shù)的使用

    UCOS擴展例程-UCOSIII空閑任務鉤子函數(shù)的使用
    發(fā)表于 12-14 17:24 ?31次下載

    Zynq中使用FreeRTOS的空閑鉤子函數(shù)時在SDK中的設置

    本文介紹zynq中使用FreeRTOS的空閑鉤子函數(shù)時在SDK中的設置和一些說明
    發(fā)表于 03-09 14:33 ?2626次閱讀
    Zynq中使用FreeRTOS的<b class='flag-5'>空閑</b><b class='flag-5'>鉤子函數(shù)</b>時在SDK中的設置

    FreeRTOS_005_FreeRTOSConfig.h配置文件(二) HOOK鉤子函數(shù)

    FreeRTOS_005_FreeRTOSConfig.h配置文件(二)_HOOK鉤子函數(shù)
    的頭像 發(fā)表于 03-14 14:04 ?3451次閱讀
    FreeRTOS_005_FreeRTOSConfig.h配置文件(二) HOOK<b class='flag-5'>鉤子函數(shù)</b>

    實操RT-Thread系統(tǒng)CPU利用率功能添加

    除了在空閑任務可以設置鉤子函數(shù),還有可能在任務切換、系統(tǒng)啟動、任務創(chuàng)建等等關鍵的地方設置,當然了,這里的每一個
    的頭像 發(fā)表于 06-03 11:29 ?6422次閱讀
    實操RT-Thread系統(tǒng)CPU利用率功能添加

    RTOS中鉤子函數(shù)的用途及用法

    在很多操作系統(tǒng)中,都存在這樣一類API函數(shù)接口:HOOK函數(shù)(也叫鉤子函數(shù))。
    的頭像 發(fā)表于 10-23 16:25 ?357次閱讀
    RTOS中<b class='flag-5'>鉤子函數(shù)</b>的用途及用法
    主站蜘蛛池模板: jlzzjlzz亚洲大全 | 无毒不卡在线观看 | 久久夜色精品国产亚洲 | 中文字幕乱码人成乱码在线视频 | 夜操 | 色天使在线视频 | 天天干干天天 | 91色在线视频 | 男女互插小说 | 免费xxxx大片 | 天堂在线www天堂中文在线 | 免费看的黄网站 | 久久亚洲精品国产亚洲老地址 | 天天天操天天天干 | 亚洲人成毛片线播放 | 又黄又粗暴的120秒免费gif视频 | 色天天综合色天天看 | 手机看片1024日韩 | 国产精品二区三区免费播放心 | hs网站在线观看 | 轻点灬大ji巴太粗太大了小说 | 国产亚洲一区二区三区在线 | 久操色 | 婷婷久久精品 | 人人干人人模 | 天天槽天天槽天天槽 | www.色视频 | 色欲情狂 | 久久这里只精品热在线8 | 天天操天天操天天操香蕉 | 亚洲一区二区三区在线播放 | 色视频在线观看网站 | 欧美性一区二区三区五区 | 香蕉久久夜色精品国产小说 | 九色 在线| 色avav| 男人天堂网在线观看 | 成人性色生活片免费看爆迷你毛片 | 又粗又长又大又黄的日本视频 | 国产三级高清 | 国产精品推荐天天看天天爽 |