/************************************************************* FileName : testUcosII.c FileFunc : 模拟uCOS-II Version : V0.1 Author : Sunrier Date : 2011-06-07 Descp : 入口 *************************************************************/ #include <stdio.h> #include "Os_cpu.h" #define TASK_STK_SIZE 512 //定义堆栈的长度(2KB) OS_STK MyTask1Stk[TASK_STK_SIZE]; //定义一个数组来作为任务堆栈 void MyTask1( void *pdata ) ; void main( void ) { OSInit(); //初始化ucos OSTaskCreate( MyTask1, //任务的指针 (void *)0, //传递给任务的参数 &MyTask1Stk[TASK_STK_SIZE-1], //任务堆栈栈顶地址 (支持堆栈向下增长方式的处理器) 20 //任务的优先级别(0-63)(63-空闲任务,62-统计任务) //在文件OS_CFG.H中通过给表示最低优先级别的常数OS_LOWEST_PRIO赋值的方法,来说明程序中任务优先级别的数目 //(0-OS_LOWEST_PRIO) ); OSStart(); //开始运行ucos } void MyTask1( void *pdata ) { pdata = pdata; //无用,仅为消除编译器报警 while(1) //任务体,总是死循环 { printf("MyTask1:我在运行!/n"); //打印 OSTimeDlyHMSM(0, 0, 1, 0); //延时0小时0分1秒0毫秒 } } 看了几天书,还是准备一边看一边模拟下uCOS-II,使用的是Visual C++ 6.0环境,先开个头,晚上回去继续。。。。。。