1、函數(shù) uxTaskPriorityGet()
此函數(shù)用來獲取指定任務的優(yōu)先級,要使用此函數(shù)的話宏 INCLUDE_uxTaskPriorityGet 應 該定義為 1。
2、函數(shù) vTaskPrioritySet()
此 函 數(shù) 用 于 改 變 某 一 個 任 務 的 任 務 優(yōu) 先 級 , 要 使 用 此 函 數(shù) 的 話 宏 INCLUDE_vTaskPrioritySet 應該定義為 1。
3、uxTaskGetSystemState()
此函數(shù)用于獲取系統(tǒng)中所有任務的任務壯態(tài),每個任務的壯態(tài)信息保存在一個 TaskStatus_t 類型的結構體里面,這個結構體里面包含了任務的任務句柄、任務名字、堆棧、優(yōu)先級等信息, 要使用此函數(shù)的話宏 configUSE_TRACE_FACILITY 應該定義為 1。
4、函數(shù) vTaskGetInfo()
此函數(shù)也是用來獲取任務壯態(tài)的,但是是獲取指定的單個任務的壯態(tài)的,任務的壯態(tài)信息 填充到參數(shù) pxTaskStatus 中,這個參數(shù)也是 TaskStatus_t 類型的。要使用此函數(shù)的話宏 configUSE_TRACE_FACILITY 要定義為 1。
5、函數(shù) xTaskGetApplicationTaskTag()
此函數(shù)用于獲取任務的 Tag(標簽)值,任務控制塊中有個成員變量 pxTaskTag 來保存任務的 標簽值。標簽的功能由用戶自行決定,此函數(shù)就是用來獲取這個標簽值的,FreeRTOS 系統(tǒng)內(nèi)核 是不會使用到這個標簽的。要使用此函數(shù)的話宏 configUSE_APPLICATION_TASK_TAG 必須為 1。
6、函數(shù) xTaskGetCurrentTaskHandle()
此函數(shù)用于獲取當前任務的任務句柄,其實獲取到的就是任務控制塊,在前面講解任務創(chuàng) 建 函 數(shù) 的 時 候 說 過 任 務 句 柄 就 是 任 務 控制。如 果 要 使 用 此 函 數(shù) 的 話 宏INCLUDE_xTaskGetCurrentTaskHandle 應該為 1。
7、函數(shù) xTaskGetHandle()
此函數(shù)根據(jù)任務名字獲取任務的任務句柄,在使用函數(shù) xTaskCreate()或 xTaskCreateStatic()創(chuàng)建任務的時候都會給任務分配一個任務名,函數(shù) xTaskGetHandle()就是使用這個任務名字來 查詢其對應的任務句柄的。要使用此函數(shù)的話宏 INCLUDE_xTaskGetHandle 應該設置為 1。
8、函數(shù) xTaskGetIdleTaskHandle()
此 函 數(shù) 用 于 返 回 空 閑 任 務 的 任 務 句 柄 , 要 使 用 此 函 數(shù) 的 話 宏 INCLUDE_xTaskGetIdleTaskHandle 必須為 1。
9、函數(shù) uxTaskGetStackHighWaterMark()
每個任務都有自己的堆棧,堆棧的總大小在創(chuàng)建任務的時候就確定了,此函數(shù)用于檢查任務從創(chuàng)建好到現(xiàn)在的歷史剩余最小值,這個值越小說明任務堆棧溢出的可能性就越大!FreeRTOS 把這個歷史剩余最小值叫做“高水位線”。此函數(shù)相對來說會多耗費一點時間,所以在代碼調試階段可以使用,產(chǎn)品發(fā)布的時候最好不要使用。要使用此函數(shù)的話宏INCLUDE_uxTaskGetStackHighWaterMark 必須為 1。
10、函數(shù) eTaskGetState()
此函數(shù)用于查詢某個任務的運行壯態(tài),比如:運行態(tài)、阻塞態(tài)、掛起態(tài)、就緒態(tài)等,返回值是個枚舉類型。要使用此函數(shù)的話宏 INCLUDE_eTaskGetState 必須為 1。
11、函數(shù) pcTaskGetName()
根據(jù)某個任務的任務句柄來查詢這個任務對應的任務名。
12、函數(shù) xTaskGetTickCount()
此函數(shù)用于查詢?nèi)蝿照{度器從啟動到現(xiàn)在時間計數(shù)器 xTickCount 的值。xTickCount 是系統(tǒng) 的時鐘節(jié)拍值,并不是真實的時間值。每個滴答定時器中斷 xTickCount 就會加 1,一秒鐘滴答 定時器中斷多少次取決于宏 configTICK_RATE_HZ。理論上 xTickCount 存在溢出的問題,但是 這個溢出對于 FreeRTOS 的內(nèi)核沒有影響,但是如果用戶的應用程序有使用到的話就要考慮溢 出了。什么時候溢出取決于宏 configUSE_16_BIT_TICKS,當此宏為 1 的時候 xTixkCount 就是個 16 位的變量,當為 0 的時候就是個 32 位的變量。
13、函數(shù) xTaskGetTickCountFromISR()
此函數(shù)是 xTaskGetTickCount()的中斷級版本,用于在中斷服務函數(shù)中獲取時間計數(shù)器xTickCount 的值。
14、函數(shù) xTaskGetSchedulerState()
此函數(shù)用于獲取 FreeRTOS 的任務調度器運行情況:運行?關閉?還是掛起!要使用此函數(shù)的話宏 INCLUDE_xTaskGetSchedulerState 必須為 1。
15、函數(shù) uxTaskGetNumberOfTasks()
此函數(shù)用于查詢系統(tǒng)當前存在的任務數(shù)量。
16、函數(shù) vTaskList()
此函數(shù)會創(chuàng)建一個表格來描述每個任務的詳細信息。
17、函數(shù) vTaskGetRunTimeStats()
FreeRTOS 可以通過相關的配置來統(tǒng)計任務的運行時間信息,任務的運行時間信息提供了每個任務獲取到 CPU 使用權總的時間。函數(shù) vTaskGetRunTimeStats()會將統(tǒng)計到的信息填充到一個表里面,表里面提供了每個任務的運行時間和其所占總時間的百分比。
18、函數(shù) vTaskSetApplicationTaskTag()
此函數(shù)是為高級用戶準備的,此函數(shù)用于設置某個任務的標簽值 ,這個標簽值的具體函數(shù)和用法由用戶自行決定,F(xiàn)reeRTOS 內(nèi)核不會使用這個標簽值,如果要使用此函數(shù)的話宏configUSE_APPLICATION_TASK_TAG 必須為 1。
19、函數(shù) SetThreadLocalStoragePointer()
此函數(shù)用于設置線程本地存儲指針的值,每個任務都有它自己的指針數(shù)組來作為線程本地存儲,使用這些線程本地存儲可以用來在任務控制塊中存儲一些應用信息,這些信息只屬于任務自己的。
20、函數(shù) GetThreadLocalStoragePointer()
此函數(shù)用于獲取線程本地存儲指針的值, 如 果 要 使 用 此 函 數(shù) 的 話 宏configNUM_THREAD_LOCAL_STORAGE_POINTERS 不能為 0。
-
嵌入式
+關注
關注
5091文章
19176瀏覽量
307189 -
API
+關注
關注
2文章
1510瀏覽量
62339 -
FreeRTOS
+關注
關注
12文章
484瀏覽量
62351
發(fā)布評論請先 登錄
相關推薦
評論