xTaskCreate

task. hportBASE_TYPE xTaskCreate( pdTASK_CODE pvTaskCode, const portCHAR * const pcName, unsigned portSHORT usStackDepth, void *pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle *pvCreatedTask );創建新的任務並添加到任務佇列中,準備運行

基本介紹

  • 外文名:XTaskCreate-FreeRTOS API
  • 簡寫:xTaskCreate
  • 出處:Open RTOS
  • 含義:跳轉到: 導航搜尋
名稱,出自Open RTOS,參數,返回,例子,

名稱

XTaskCreate-FreeRTOS API

出自Open RTOS

跳轉到: 導航, 搜尋

參數

pvTaskCode
指向任務的入口函式. 任務必須執行並且永不返回 (即:無限循環).
pcName
描述任務的名字。主要便於調試。最大長度由configMAX_TASK_NAME_LEN.定義
usStackDepth
指定任務堆疊的大小 ,堆疊能保護變數的數目- 不是位元組數. 例如,如果堆疊為16位寬度,usStackDepth定義為 100, 200 位元組,這些將分配給堆疊。堆疊嵌套深度(堆疊寬度)不能超多最大值——包含了size_t類型的變數
pvParameters
指針用於作為一個參數傳向創建的任務
uxPriority
任務運行時的優先權
pvCreatedTask
用於傳遞一個處理——引用創建的任務的句柄

返回

pdPASS 是如果任務成功創建並且添加到就緒列中,另外錯誤代碼在projdefs. H檔案定義

例子

// 創建任務
void vTaskCode( void * pvParameters )
{ for( ;; )
{ // 任務代碼 }
}
// 函式來創建一個任務
void vOtherFunction( void )
{ static unsigned char ucParameterToPass;
xTaskHandle xHandle;
// 創建任務,存儲處理。注意傳遞的參數為ucParameterToPass
//它在任務中不能始終存在, 所以定義為靜態變數. 如果它是動態堆疊的變數,可能存在
// 沒有那么長,或者至少隨著時間毀滅,
// 新的時間, 嘗試存儲它
xTaskCreate( vTaskCode,
"NAME",
STACK_SIZE,
&ucParameterToPass,
tskIDLE_PRIORITY,
&xHandle );
// 使用句柄來刪除任務
vTaskDelete( xHandle );
}

相關詞條

熱門詞條

聯絡我們