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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

RTX5 | 时间延时

發(fā)布時間:2025/3/15 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RTX5 | 时间延时 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 一、前言
  • 二、API
    • 2.1、osDelay()
    • 2.2、osDelayUntil()

一、前言


RTX5提供兩個延時API函數(shù):

  • 相對延時osDelay(uin32_t ticks)
  • 絕對延時osDelayUntil(uint32_t ticks)
  • 無論哪一種時間延遲方式都難以避免線程被延時執(zhí)行。當(dāng)各個線程的優(yōu)先級不一樣時,RTX5執(zhí)行可剝奪型線程管理。某個線程的延時時間到達(dá)時,很有可能有其他更高優(yōu)先級的線程處于就緒態(tài),或者產(chǎn)生ISR中斷回調(diào)處理,此時線程就會被推遲執(zhí)行。線程被推遲的時間肯定會波動的,比如某一次延時時間達(dá)到時,系統(tǒng)上并沒有優(yōu)先級更高的線程正處于就緒態(tài),或者也沒有ISR中斷回調(diào)需要執(zhí)行,這個理想的條件下,線程不會被推遲執(zhí)行。所以,要計算每一次線程被推遲的時間比較困難。

    兩種延時方式也許看不出區(qū)別,但實際上兩者是不同的。絕對延時OsDelayUntil()需要與另一個API函數(shù)osKernelGetTickCount()配合使用。相對延時osDelay()非常簡單,在需要延時的地方直接調(diào)用它即可。相對延時osDelay()在系統(tǒng)負(fù)荷較重時有可能會少一個節(jié)拍,RTX5官方手冊也有說明。使用絕對延時osDelayUntil()也很難避免被推遲,但它總會和預(yù)期的“匹配值”同步(osKernelGetTickCount()獲取),因此,一般推薦使用“絕對延時”來實現(xiàn)長時間運行的周期性延時。比如,線程A在CPU上電時就被創(chuàng)建,創(chuàng)建之后一直以5ms的周期運行,永不停止。

    二、API


    2.1、osDelay()


    總的來說,當(dāng)調(diào)用osDelay()時,當(dāng)前線程進(jìn)入WAIT_DELAY(BLOCKED)狀態(tài),調(diào)度器將運行下一個已經(jīng)處于就緒態(tài)(READY)的線程。當(dāng)計時時間到達(dá),調(diào)用osDelay()的線程從WAIT_DELAY(BLOCKED)狀態(tài)切換到就緒態(tài)(READY),如果沒有其他更高優(yōu)先級的線程,那么當(dāng)前線程就直接進(jìn)入運行態(tài)(RUNNING),繼續(xù)執(zhí)行下面的代碼。

    #include "cmsis_os2.h"void Thread_1 (void *arg) { // 線程函數(shù)osStatus_t status; delayTime = 1000U; // 延時1000個Systick while(1){..... //其他代碼.....status = osDelay(delayTime); // 延時} }

    使用舉例:

    2.2、osDelayUntil()


    總的來說,osDelayUntil()基于一個絕對時間來延時,這個絕對時間來自osKernelGetTickCount()。調(diào)用osDelayUntil()使線程進(jìn)入阻塞態(tài)(BLOCKED)并立刻進(jìn)行上下文切換,當(dāng)計時時間達(dá)到時,線程從阻塞態(tài)(BLOCKED)切換到準(zhǔn)備態(tài)(READY),如果當(dāng)前沒有更高優(yōu)先級的其他線程的話,那么線程直接進(jìn)入運行態(tài)(RUNNING)。

    #include "cmsis_os2.h"void Thread_1 (void *arg) { // 線程函數(shù)uint32_t tick;tick = osKernelGetTickCount(); // 獲取當(dāng)前系統(tǒng)的時間while(1){tick += 1000U; // 絕對延時1000個SystickosDelayUntil(tick);// ...} }

    總結(jié)

    以上是生活随笔為你收集整理的RTX5 | 时间延时的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

    主站蜘蛛池模板: 色视频免费在线观看 | 日韩精品一区在线观看 | 亚洲春色av| 91爱爱爱爱 | 日韩毛片中文字幕 | 国产精品不卡一区 | 性活交片大全免费看 | 爱爱91| 五月婷网站 | 精品国模一区二区三区欧美 | 欧美xxxxav| 男女做爰猛烈刺激 | 精品免费在线 | 国产一区黄色 | 久久午夜免费视频 | 国产伦乱视频 | 国产精品自拍网站 | 精品人妻伦一区二区三区久久 | 亚洲午夜久久久久 | 蜜桃91丨九色丨蝌蚪91桃色 | 伊人老司机| 国产精品2018| 久久成人久久爱 | 国产成人免费在线观看 | 国产精品海角社区 | 免费日本在线 | 九九热视频在线免费观看 | 性淫影院 | 欧美色图在线播放 | 欧美性xxxx | 少妇太紧太爽又黄又硬又爽 | 一级全黄裸体免费观看视频 | 精品一区二区三区蜜臀 | 亚洲第一av | 国产高清不卡 | 视色网 | 中日韩精品一区二区三区 | 美国少妇性做爰 | 一区二区三区在线观看 | 日产欧产va高清 | 国产精品69av | 美女黄页网站 | 国产在线一级片 | 中文有码av | 欧美激情一级精品国产 | 久久久久久久久久久电影 | 欧美爱爱网| 一级做a在线观看 | 最新av网站在线观看 | 亚洲天堂av片 | 欧美乱大交xxxxx潮喷l头像 | aa一级片| 在线国产视频一区 | 手机av在线播放 | 成人一区二区三区在线观看 | 69堂精品 | 91原创视频| 久久国产区 | 久章草影院 | 国产在线拍揄自揄拍无码视频 | 欧美一区二区三区免 | 亚洲av无码国产精品麻豆天美 | 国产免费一区二区三区 | 日韩在线欧美 | 亚洲精品美女视频 | 中文字幕 人妻熟女 | 欧美日韩一区二区三区在线视频 | 免费性视频| 91一级片 | xxx日本黄色 | 国产精品一区二区三区四区视频 | 日本少妇激三级做爰在线 | www.久热 | 日日网站 | 91国产视频在线播放 | 欧美a级成人淫片免费看 | 欧美日韩第一区 | 国产男男网站 | 亚洲精品国产精品国自产网站按摩 | 国产精品久久久久久久久久久久久久久久久久 | 精品动漫一区 | 四虎国产成人精品免费一女五男 | 色呦| 欧美极品少妇xxxxⅹ裸体艺术 | 激情欧美一区二区免费视频 | 国产精品中文在线 | 美女久久久久久久久 | 四虎少妇做爰免费视频网站四 | www.久久久久 | 黄色大片免费观看视频 | 人人干人人模 | 色老大影院 | 美女被男生免费视频 | 99久久久无码国产精品衣服 | 男生坤坤放进女生坤坤里 | 在线天堂av| 日韩av中文字幕在线 | 亚洲综合在线网 | 欧美精品一二三四 |