我按照wstrom 的 一步一步教你使用uCOS-II 中的步骤,可以实现第一个工程helloEEworld。但是当我把test.c文件的内容重写后,却无法生成TEST.exe了,这是什么问题?test.c内容如下: ********************************************************************************************************* * uC/OS-II * The Real-Time Kernel * * (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL * All Rights Reserved * * HELLO EEWORLD #1 ********************************************************************************************************* */
#include "includes.h"
/* ********************************************************************************************************* * CONSTANTS ********************************************************************************************************* */
#define TASK_STK_SIZE 512 /* Size of each task's stacks (# of WORDs) */ OS_STK MyTaskStk[TASK_STK_SIZE]; //定义任务堆栈 INT16 key; //用于退出USOSII的键 void MyTask(void* pdata); /* ********************************************************************************************************* * VARIABLES ********************************************************************************************************* */
/* ********************************************************************************************************* * FUNCTION PROTOTYPES ********************************************************************************************************* */
// void Task(void *data); /* Function prototypes of tasks */ // void TaskStart(void *data); /* Function prototypes of Startup task */ //static void TaskStartCreateTasks(void); //static void TaskStartDispInit(void); //static void TaskStartDisp(void);
/*$PAGE*/ /* ********************************************************************************************************* * MAIN ********************************************************************************************************* */
void main (void) { char* s_M = "M"; OSInit(); PC_DOSSaveReturn(); PC_VectSet(uCOS, OSCtxSw); OSTaskCreate(MyTask, s_M, &MyTaskStk[TASK_STK_SIZE - 1], 0); OSStart();
} void MyTask(void* pdata) { #if OS_CRITICAL_METHOD == 3 /* Allocate storage for CPU status register */ OS_CPU_SR cpu_sr; endif pdata=pdata; OS_ENTER_CRITICAL(); PC_VectSet(0x08, OSTickISR); PC_SetTickRate(OS_TICKS_PER_SEC); OS_EXIT_CRITICAL(); OSStatInit(); for(;;) { if(x>10) { x=0; y+=2; } PC_DispChar( x,y, *(char*)pdata, DISP_BGND_BLACK+DISP_FGND_WHITE ); x+=1; if(PC_GetKey(&key)==TRUE) { if(key==0x1B) { PC_DOSReturn(); } } OSTimeDlyHMSM(0,0,1,0); }
}
|