這裡說的所有內容都是基於 ProjectZero 項目進行二次開發的
正常創建方式,可以自由配置 stack 大小和優先級:
#define TASK_SIZE 1024
// 任務結構體
Task_Struct mTask;
// 棧內存
uint8_t mTaskStack[TASK_SIZE];
static void m_task_fxn(UArg a0, UArg a1) {
for(;;) {
// ......
}
}
void m2_task_run() {
Task_Params taskParams;
Task_Params_init(&taskParams);
taskParams.stack = mTaskStack;
taskParams.stackSize = TASK_SIZE ;
taskParams.priority = 1;
Task_construct(&mTask, m_task_fxn, &taskParams, NULL);
}