FreeRTOS任務的建立和刪除

2021-10-12 17:29:22 字數 1007 閱讀 8148

freertos 最基本的功能就是任務管理,而任務管理最基本的操作就是建立和刪除任務。

任務的建立:

basetype_t xtaskcreate

( taskfunction_t pxtaskcode,

const char *

const pcname,

const uint16_t usstackdepth,

void

*const pvparameters,

ubasetype_t uxpriority,

taskhandle_t *

const pxcreatedtask

)

引數:

pxtaskcode: 任務函式。

pcname: 任務名字,一般用於追蹤和除錯,任務名字長度不能超過。

configmax_task_name_len。

usstackdepth: 任務堆疊大小,注意實際申請到的堆疊是 usstackdepth 的 4 倍。其中空閒任

務的任務堆疊大小為 configminimal_stack_size。

pvparameters: 傳遞給任務函式的引數。

uxpriotiry: 任務優先順序,範圍 0~ configmax_priorities-1。

pxcreatedtask: 任務控制代碼,任務建立成功以後會返回此任務的任務控制代碼, 這個控制代碼其實就是

任務的任務堆疊。 此引數就用來儲存這個任務控制代碼。其他 api 函式可能會使

用到這個控制代碼。

返回值:

pdpass: 任務建立成功。

errcould_not_allocate_required_memory: 任務建立失敗,因為堆記憶體不足!

任務的刪除:

vtaskdelete

( taskhandle_t xtasktodelete )

引數:

xtasktodelete: 要刪除的任務的任務控制代碼。

02 FreeRTOS任務建立和刪除

basetype t xtaskcreate taskfunction t pxtaskcode,const char const pcname,const uint16 t usstackdepth,void const pvparameters,ubasetype t uxpriority,ta...

FreeRTOS學習 一 任務的建立和刪除

宣告及感謝 跟隨正點原子資料學習,在此作為學習的記錄和總結 環境 keil stm32f103 1.任務的建立 建立任務的方法有三種 1 動態建立 xtaskcreate 使用此xtaskcreate函式 需配置 configsupport dynamic allocation 巨集定義為1 建立開...

任務建立和刪除

在freertos移植到cortex m3硬體平台的文章中,我們已經見過任務建立api,但那篇文章的重點在於如何移植freertos,本文將重點放在任務的建立和刪除api函式上面。任務建立和刪除api函式位於檔案task.c中,需要包含task.h標頭檔案。1.1函式描述 objc view pla...