
ucos学习
yinjiabin
这个作者很懒,什么都没留下…
展开
-
lpc2200移植ucos-II心得
1.1 uC/OS-IIuC/OS-II读做“micro COS 2”,意为“微控制器操作系统版本2”。uC/OS-II是源代码开放的实时性内核,可用于各类8位、16位和32位单片机。uC/OS-II是一个完整、可移植、可固化及可裁剪的占先式实时多任务内核。uC/OS-II用ANSI C语言编写,包含一小部分汇编代码,使之可以供不同架构的微处理器使用。1.2 移植规划1 编译器选择原创 2012-01-03 10:29:02 · 2634 阅读 · 0 评论 -
lpc2200移植ucos-II总结(二 移植简介)
2.1 移植简介根据uC/OS-II的要求,移植uC/OS-II到一个新的体系结构上需要提供2个或3个文件:OS_CUP.H(C语言头文件)、OS_CUP_C.C(C程序源文件)及OS_CUP_A.ASM(汇编程序源文件),其中OS_CPU_A.ASM在某些情况下不需要,但极其罕见。 本移植包含OS_CPU. h、OS_CPU_C. c及OS_CPU_A. s三个文件。将OS_CPU原创 2012-05-01 16:58:41 · 1224 阅读 · 0 评论 -
lpc2200移植ucos-II总结(四 编写os_cpu_c.c文件)
2.4 编写os_cpu_c.c文件OSTaskStkInt()任务堆栈初始化函数,在编写此函数之前,必须先确定任务的堆栈结构。而任务的堆栈结构是与CPU的体系结构、编译器有密切的关联。本移植的堆栈结构见图2.1所示。图2.1 任务堆栈结构图1. 函数OSTaskStkInt()代码OS_STK *OSTaskStkInit (void (*task)(void *pd), v原创 2012-05-01 17:01:11 · 2643 阅读 · 0 评论 -
lpc2200移植ucos-II总结(六 关于中断及时钟节拍)
2.5 关于中断及时钟节拍关于中断和时钟节拍,UCOS-II对于ARM7通用的中断服务程序的汇编与c函数接口如下:MACRO和MEND伪指令用于宏定义。MACRO……MEND伪指令可以将一段代码定义为一个整体,称为宏定义。其中,$标号在宏指令被展开时,标号会被代换为用户定义的符号。MACRO标识宏定义的开始,MEND标识宏定义的结束。定义之后在程序中就可以通过宏指令多次调用该段代码。MAC原创 2012-05-01 17:04:54 · 1341 阅读 · 0 评论 -
lpc2200移植ucos-II总结(一 移植环境)
1.1 uC/OS-IIuC/OS-II读做“micro COS 2”,意为“微控制器操作系统版本2”。uC/OS-II是源代码开放的实时性内核,可用于各类8位、16位和32位单片机。uC/OS-II是一个完整、可移植、可固化及可裁剪的占先式实时多任务内核。uC/OS-II用ANSI C语言编写,包含一小部分汇编代码,使之可以供不同架构的微处理器使用。1.2 移植规划1 编译器选择原创 2012-05-01 16:53:34 · 1013 阅读 · 0 评论 -
lpc2200移植ucos-II总结(三 编写OS_CPU.h)
2.3 编写OS_CPU.h1. 不依赖于编译的数据类型uC/OS-II不使用C语言中的short,int和long等数据类型的定义,因为他们与处理的类型有关,隐含着不可移植性。代之以移植性强的整数数据类型,这样既直观又可移植。不依赖于编译器的数据类型typedef unsigned char BOOLEAN;typedef unsigned char INT8Ut原创 2012-05-01 16:59:43 · 2050 阅读 · 1 评论 -
lpc2200移植ucos-II总结(五 编写OS_CPU_A.S)
2.4 编写OS_CPU_A.S 1. 软件中断的汇编接口 软件终端代码的汇编部分: SoftwareInterrupt LDR SP, StackSvc ; 重新设置堆栈指针 STMFD SP!, {R0-R3, R12, LR}; 将R0-R3,R12,LR压入堆栈,SP指向LR MOV原创 2012-05-01 17:03:18 · 2977 阅读 · 3 评论