ucos对每个任务都分配了一个栈STACK,这个STK是模拟堆栈,不是指MCU自带的STACK。
UCOS堆栈的生长方向可以通过OS_STK_GROWTH来定义。
#define TASK_STACK_SIZE 64
OS_STK TaskStack[TASK_STACK_SIZE];
#if OS_STK_GROWTH == 0 //堆栈由低地址向高地址方向增长
OSTaskCreate(task, pdata, &TaskStack[0], prio);//第三个参数是栈顶地址
#else //堆栈由高地址向低地址方向增长
OSTaskCreate(task, pdata, &TaskStack[TASK_STACK_SIZE-1], prio);
#endif