资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,嵌入式系统操作系统,*,嵌入式系统操作系统,C/OS-的文件体系,2,嵌入式系统操作系统,基于S3C44B0的C/OS-移植及应用开发,6.,1,基于S3C44B0的C/OS-移植及应用开发,6,.2 C/OS-用户可以调用的内核函数,3,嵌入式系统操作系统,一、移植的条件,二、uC/OS-II移植内容及步骤,4,嵌入式系统操作系统,移植条件,1、处理器的C编译器能产生可重入代码,2、用C语言就可以打开和关闭中断,3、处理器支持中断并且能产生定时中断,4、处理器支持容纳一定量数据的硬件堆栈,5、处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令,5,嵌入式系统操作系统,1.,处理器的C编译器能产生可重入代码,可重入代码指的是可以被多个任务同时调用,但不会破坏数据的一段代码,或者说代码具有在执行过程中打断后再次被调用的能力。C/OS-是多任务内核,函数可能会被多个任务调用。所以要完成多任务,代码的可重入性是基础,6,嵌入式系统操作系统,由此可见,在函数中应尽量避免使用全局变量。,此外,除了在C程序中要使用局部变量以外,还需要C编译器的支持,使用EmbestIDE的集成开发环境,可以生成可重入的代码。,7,嵌入式系统操作系统,2.用C语言就可以打开和关闭中断,uCOS-II在C语言代码中通过使用以下两个宏,OS_ENTER_CRITICAL()OS_EXIT_CRITICAL(),打开和关闭中断,从而保护临界代码,8,嵌入式系统操作系统,9,嵌入式系统操作系统,10,嵌入式系统操作系统,(3)处理器支持中断并且能产生定时中断。,(4)处理器能支持并容纳一定量数据的硬件堆栈。,(5)处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令。,ARM处理器中汇编指令stmfd可以将所有寄存器压栈,对应也有一个出栈的指令ldmfd。,11,嵌入式系统操作系统,二、uC/OS-II移植内容及步骤,移植第一步基本的配置和定义,移植第二步移植与处理器相关的OS_CPU_A.ASM汇编代码文件,移植第三步移植与处理器相关的OS_CPU_C.C标准C代码文件,12,嵌入式系统操作系统,移植第一步,13,嵌入式系统操作系统,移植第二步,14,嵌入式系统操作系统,移植第三步,15,嵌入式系统操作系统,举个例子看一下钩子函数的结构,16,嵌入式系统操作系统,17,嵌入式系统操作系统,6,.2 C/OS-用户可以调用的内核函数,包括:,函数的功能描述,函数原型,函数名称及源代码,函数使用到的常量,函数参数,函数返回值,特殊说明和注意点,18,嵌入式系统操作系统,19,嵌入式系统操作系统,20,嵌入式系统操作系统,21,嵌入式系统操作系统,22,嵌入式系统操作系统,23,嵌入式系统操作系统,24,嵌入式系统操作系统,25,嵌入式系统操作系统,26,嵌入式系统操作系统,27,嵌入式系统操作系统,28,嵌入式系统操作系统,29,嵌入式系统操作系统,30,嵌入式系统操作系统,31,嵌入式系统操作系统,32,嵌入式系统操作系统,33,嵌入式系统操作系统,34,嵌入式系统操作系统,35,嵌入式系统操作系统,36,嵌入式系统操作系统,37,嵌入式系统操作系统,38,嵌入式系统操作系统,39,嵌入式系统操作系统,40,嵌入式系统操作系统,41,嵌入式系统操作系统,42,嵌入式系统操作系统,43,嵌入式系统操作系统,44,嵌入式系统操作系统,45,嵌入式系统操作系统,46,嵌入式系统操作系统,48,嵌入式系统操作系统,49,嵌入式系统操作系统,50,嵌入式系统操作系统,51,嵌入式系统操作系统,52,嵌入式系统操作系统,53,嵌入式系统操作系统,54,嵌入式系统操作系统,55,嵌入式系统操作系统,56,嵌入式系统操作系统,57,嵌入式系统操作系统,58,嵌入式系统操作系统,59,嵌入式系统操作系统,60,嵌入式系统操作系统,61,嵌入式系统操作系统,62,嵌入式系统操作系统,63,嵌入式系统操作系统,64,嵌入式系统操作系统,
展开阅读全文