TI E2E™ 英文论坛海量技术问答的中文版全新上线,可点击相关论坛查看,或在站内搜索 “参考译文” 获取。

This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2640R2F: TIOS任务堆栈的问题

Part Number: CC2640R2F
Other Parts Discussed in Thread: CC2642R

我的两个自建任务,堆栈开销都比较大,单独跑都没问题,但是同时跑就跑不起来,编译都没问题,我看map文件,ram还有富余,为什么同时跑不起来。

static Char senserTaskStack[1500];
void senser_createTask(void)
{
Task_Params taskParams;
// Configure task
Task_Params_init(&taskParams);
taskParams.stack = senserTaskStack;
taskParams.stackSize = 1500;
taskParams.priority = 4;
Task_construct(&senserTask, senser_taskFxn, &taskParams, NULL);
}

这个任务低于1500,单独跑都跑不起来,所以至少1500;

static Char loraAppTaskStack[512];
void lora_createTask(void)
{
Task_Params taskParams;

// Configure task
Task_Params_init(&taskParams);
taskParams.stack = loraAppTaskStack;
taskParams.stackSize = 512;
taskParams.priority = 3;

Task_construct(&loraAppTask, lorawanThread, &taskParams, NULL);
}

这个任务单独跑没问题,但是如果和上面任务同时跑,上面任务就跑不起来,

这个任务创建是用的堆栈内容是从哪儿分配的,我能不能改大小,现在太小了,两个任务堆栈明显的互相冲突;