新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > uC/OSII移植步骤

uC/OSII移植步骤

作者: 时间:2016-10-08 来源:网络 收藏
SP!, {R0-R12,LR,PC}^;pop new task's context
2.多任务应用程序的编写
1)C语言入口函数
函数Main()为C语言入口函数,所有C程序从这里开始运行,在该函数中进行如下操作:
调用函数ARMTaskgetInit初始化ARM处理器
调用OSInit初始化系统
调用OSTaskCreat函数创建任务:Task1和Task2
调用ARMTaskgetStart函数启动时钟节拍中断
调用OSStart启动系统任务调度
#i nclude “config.h”
OS_STKTaskStartStk[TASK_STK_SIZE];
OS_STKTaskStk[TASK_STK_SIZE];
int Main(void){
OSInit();
OSTaskCreate(Task1,(void*)0,TaskStartStk[TASK_STK_SIZE-1],0);
OSStart();
return();
}
2)任务处理函数
Task1
void Task1(void *pdata){
pdata=pdata;
TargetInit();
For(;;){
OSTimeDly(OS_TICKS_PER_SEC/50);
If(GetKey()!=KEY1){
continue;
}
OSTaskCreate(Task2,(void *)0,TaskStk[TASK_STK_SIZE-1],10);
While(GetKey()!=0){
OSTimeDly(OS_TICKS_PER_SEC/50);
}
}
}
Task2
void Task2(void *pdata){
pdata=pdata;
BeeMoo();
OSTimeDly(OS_TICKS_PER_SEC/8);
BeeMoo();
OSTimeDly(OS_TICKS_PER_SEC/4);
BeeMoo();
OSTimeDly(OS_TICKS_PER_SEC/8);


关键词:

评论


相关推荐

技术专区

关闭