ucosii嵌入式系统
特点:适用于小型控制系统,具有执行效率高,占用空间小,实时性能优良和扩展性强等特点。
1.任务堆栈的声明:
ucos-ii为每个任务建立单独的任务堆栈,并且任务堆栈需要用户自行声明,数据类型为OS_STK,堆栈结构一般用数组来实现。
#define TASK_STK_SIZE 512
OS_STK TaskStk[N_TASKS][TASK_STK_SIZE]; //堆栈尺寸
2.随机信号量的声明:
建立一个信号量之前,需要声明一个OS_EVENT*型指针,用于存储只想事件控制块ECB的地址。
OS_EVENT *RandomSem;
3.任务及功能函数原型声明:
声明任务函数,并不代表任务就是函数,只是借用函数的形式。
(1)任务声明:
void Task(void *data); //创建任务数组
void TaskStart(void *data); //任务起始
(2)功能函数声明:
static void TaskStartCreateTasks(void); //建立任务
static void TaskStartDispInit(void); //任务初始化
4.main函数
完成ucos-ii系统初始化,DOS环境保存,中断向量设置,指定ucos-ii中的任务切换处理函数,首任务简历以及启动多任务系统。