μC/OS-II在S3C44BOX处理器上的移植
(1)设置OS_CPU.H中与处理器和编译器相关的代码
*************************************************
与编译器相关的数据类型
*************************************************
typedef unsigned char BOOLEAN;
typedef unsigned char INT8U; /*8位无符号整数*/
typedef signed char INT8S; /*8位有符号整数*/
typedef unsigned short INT16U; /*16位有符号整数*/
typedef signed short INT16S; /*16位无符号整数*/
typedef unsigned long INT32U; /*32位无符号整数*/
typedef signed long INT32S; /*32位有符号整数*/
typedef float FP32; /*单精度浮点数*/
typedef double FP64; /*双精度浮点数*/
typedef unsigned int OS_STK;/*堆栈入口宽度为16位*/与ARM处理器相关的代码:
#define OS_ENTER_CRITICAL () ARMEnableInt() /*开启中断*/
#define OS_STK_GROWTH 1 /*堆栈由高地址向低地址增长*/
(2)用C语言编写6个操作系统相关的函数(OS_CPU_C.C)
void OSTaskStkInit(void(task)(void *pd),void *pdata,void *ptos,INT16U opt)
{ unsigned int *stk;
opt =opt; /*因“opt”变量没有用到,防止编译器产生警告*/
stk =(unsigned int *)ptos; /*装载堆栈指针*/
《μC/OS-II在S3C44BOX处理器上的移植(第2页)》