如果想讓任務以絕對時間執行,比如每3000毫秒執行一次,要求精度很高分毫不差。此時用vTaskDelay(3000)就不能實現了。需要用到以下函數:
vTaskDelayUntil(&xLastWakeTime, xFrequency)//本函數會自動更新xLastWakeTime為最后一次喚醒的時間,只需第一次使用時賦值。
xTaskGetTickCount():1ms增加1,是uint32_t類型,49天才會復位

審核編輯:劉清
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
FreeRTOS
+關注
關注
14文章
499瀏覽量
66928
原文標題:FreeRTOS任務以絕對時間運行
文章出處:【微信號:硬件會,微信公眾號:硬件會】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
熱點推薦
馴服時間的藝術:GPS對時裝置工程實踐
在現代社會看不見摸不著的地方,一場靜默的革命早已完成。從電力系統的故障錄波到金融交易的時序記錄,從5G基站的協同信令到智能工廠的工業總線,時間同步的精度直接定義了整個系統的運行邊界 。作為這一
標準脈沖時間間隔發生器使用場景解析
協同,都離不開對時間間隔的精準調控。時間間隔發生器作為生成高穩定、可定制時序信號的核心設備,憑借其對時間維度的精細掌控能力,成為連接理論研究與工程應用的“時序橋梁”。其中,西安同步電子科技有限公司研發的SY
FreeRTOS 空閑任務
FreeRTOS 中很多人會注意到為什么有一個叫IDLE task的任務占用了CPU百分之九十多的使用權,但是這個任務并沒有自己手動創建。原因就是這個空閑任務是系統自己創建的,每當系統
發表于 12-04 07:35
嵌入式實時操作系統的特點
通常具有以下特點:
快速響應:實時嵌入式操作系統能夠迅速響應外部事件或任務請求,以滿足實時任務的時間要求。
穩定性和可靠性:實時嵌入式操作系統要求系統能夠在各種環境條件下穩定可靠地
發表于 11-13 06:30
FreeRTOS任務調度及優先級問題
大家好,最近本人在學習FreeRTOS ,之前有過一些裸機開發的經驗,目前知道了FreeRTOS的任務是基于時間片輪轉來調度,也就是知道了任務
發表于 11-06 02:18
at_device 包 ml307長時間運行有內存泄漏問題怎么解決?
使用 at_device 包中的 ml307 包長時間運行有大量內存泄漏問題,大概漲了20K,求助解決。
發表于 09-24 07:41
stm32f407 以太網 長時間運行 modbustcp 數據,網絡接口掛死怎么解決?
硬件配置:正點原子F407開發板
軟件環境:env rtthread 5.2
問題描述:使用modbus slave tcp進行數據通信,長時間運行后,發現上位機客戶端無法連接開發板,拔掉網線后
發表于 09-11 08:23
STM32F103長時間運行,串口發送失敗怎么解決?
STM32F103長時間運行,串口發送失敗,目前定位到一致卡在USART_FLAG_TC判斷那里,我們采用輪詢的方式發送數據,然后判斷USART_FLAG_TC是否發送成功,在大量發送后出現了一次發送后USART_FLAG_TC沒有置位,然后就一直卡在這里了,這可如何是好?
發表于 07-30 07:55
GPS對時裝置如何提升工業系統的時間精度?
在現代工業、電力、通信等領域,時間同步的精確性直接影響著系統的穩定性和可靠性。GPS對時裝置作為一種高精度的時間同步解決方案,被廣泛應用于各類關鍵基礎設施中。本文將從實際應用的角度,分享GPS
時統設備在各行業都扮演什么角色??
的 “時間導航儀”?
航空航天領域對時間同步的精度和可靠性要求堪稱極致。在衛星發射過程中,從火箭點火的那一刻起,直至衛星成功入軌,每一個環節都如同精密時鐘的齒輪,必須精確咬合,才能確保任務順利完成
發表于 06-12 16:18
posix函數異常怎么解決?
測試發現所有和絕對時間相關的函數都是異常的 這該怎么解決目前測試過的有
mq_timedreceive
mq_timedsend
sem_timedwait
pthread_cond_timedwait
pselect
全都是異常的 要不然就立即返回 要不然就一直阻塞永不退出
發表于 06-12 07:48
向FreeRTOS的任務中發送事件隊列是有什么限制嗎?
任務發送事件告知運動完成。
因為板卡有六路電機,每一路單獨控制的時候沒有什么問題。但是多路運行特別是多路復位的時候有的電機會卡死,查詢電機狀態顯示運行中,通過DEBUG發現每一路的電機復位指令下發
發表于 06-11 07:57
在STM32L431上使用內部RTC,時間運行到23:59:59秒后,變為了24:00:00并不是00:00:00,為什么?
大家好,我在STM32L431上使用內部RTC,時間運行到23:59:59秒后,變為了24:00:00,并不是00:00:00,并且weekday也沒有加一,這是為什么呢?
發表于 03-11 06:32
如何讓FreeRTOS任務以絕對時間運行呢
評論