欢迎来到天天文库
浏览记录
ID:37799709
大小:730.50 KB
页数:72页
时间:2019-05-31
《移植μC OS-II到ARM》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、嵌入式技术与应用智能电器与智能系统省重点实验室移植μC/OS-II到ARM76CHAPTER第6章目录1.μC/OS-II简介2.移植规划3.移植μC/OS-II4.移植代码应用到LPC2000第6章目录1.μC/OS-II简介2.移植规划3.移植μC/OS-II4.移植代码应用到LPC20006.1μC/OS-II简介概述μC/OS-II是源码公开的著名实时内核,可用于各类8位、16位和32位单片机或DSP。从μC/OS算起,该内核已有10多年应用史,在诸多领域得到广泛应用。μC/OS-II是一个完整的、可移植、可固化、可
2、剪裁的占先式实时多任务内核。μC/OS-II使用ANSIC语言编写,包含一小部分汇编代码,使之可以供不同架构的微处理器使用。至今,从8位到64位,μC/OS-II已在超过40种不同架构的微处理器上运行。μC/OS-II特点提供源代码:购买作者撰写的《嵌入式实时操作系统μC/OS-II》一书即可获得μC/OS-IIV2.52版本的所有源代码,购买此书的其它版本可以获得相应版本的全部源代码。可移植性(portable):μC/OS-II的源代码绝大部分是使用移植性很强的ANSIC写的,将与微处理器硬件相关的汇编语言使用量压缩到最
3、低的限度,以使μC/OS-II便于移植到其它微处理器上。目前,μC/OS-II已经被移植到多种不同架构的微处理器上。可固化(ROMmable):只要具备合适的软硬件工具,就可以将μC/OS-II嵌入到产品中成为产品的一部分。可剪裁(scalable):μC/OS-II使用条件编译实现可剪裁,用户程序可以只编译自己需要的(μC/OS-II的)功能,而不编译不要需要的功能,以减少μC/OS-II对代码空间和数据空间的占用。可剥夺(preemptive):μC/OS-II是完全可剥夺型的实时内核,μC/OS-II总是运行就绪条件下
4、优先级最高的任务。μC/OS-II特点多任务:μC/OS-II可以管理64个任务,然而,μC/OS-II的作者建议用户保留8个给μC/OS-II。这样,留给用户的应用程序最多可有56个任务。可确定性:绝大多数μC/OS-II的函数调用和服务的执行时间具有确定性,也就是说,用户总是能知道μC/OS-II的函数调用与服务执行了多长时间。任务栈:μC/OS-II的每个任务都有自己单独的栈,使用μC/OS-II的占空间校验函数,可确定每个任务到底需要多少栈空间。系统服务:μC/OS-II提供很多系统服务,例如信号量、互斥信号量、时间
5、标志、消息邮箱、消息队列、块大小固定的内存的申请与释放及时间管理函数等。中断管理:中断可以使正在执行的任务暂时挂起,如果优先级更高的任务被中断唤醒,则高优先级的任务在中断嵌套全部退出后立即执行,中断嵌套层数可达255层。μC/OS-II特点稳定性与可靠性:μC/OS-II是μC/OS的升级版,μC/OS自1992年以来已经有数百个商业应用。μC/OS-II与μC/OS的内核是一样的,只是提供了更多的功能。2000年7月,μC/OS-II在一个航空项目中得到了美国联邦航空管理局对商用飞机的、符合RTCADO–178B标准的认证
6、。这表明,该操作系统的质量得到了认证,可以在任何应用中使用。作者及其著作第6章目录1.μC/OS-II简介2.移植规划3.移植μC/OS-II4.移植代码应用到LPC20006.2移植规划概述所谓“移植”,就是使一个实时内核能在其它的微处理器或微控制器上运行。尽管大部分μC/OS-II的代码是用C语言编写的,但是在编写与处理器硬件相关的代码时还是不得不使用汇编语言。移植的主要工作就是编写这些与处理器硬件相关的代码。在移植前针对所使用的微处理器进行规划,主要有以下几个方面的考虑:编译器的选择、任务模式的选择和支持的指令集。μC
7、/OS-II移植应用程序(用户代码)μC/OS-II(与处理器无关代码)OS_CORE.cOS_FLAG.c...μC/OS-II配置(与应用无关)OS_CFG.HINCLUDES.HμC/OS-II移植(与处理器相关代码)CPU定时器硬件软件——μC/OS-II硬件软件体系结构用于产生系统时钟移植时需要编写的代码6.2移植规划编译器的选择针对ARM处理器核的C语言编译器有很多,如SDT、ADS、IAR、TASKING和GCC等。目前国内最流行的是ADS、SDT和GCC。SDT和ADS均为ARM公司开发,ADS为SDT的升级
8、版,以后ARM公司不再支持SDT,所以不会选择SDT。GCC虽然支持广泛,很多开发套件使用它作为编译器,但是与ADS比较其编译效率较低,这对充分发挥芯片性能很不利,所以最终使用ADS编译程序和调试。6.2移植规划任务模式的取舍ARM7处理器核具有用户、系统、管理、中止、未定义、中断和快中断
此文档下载收益归作者所有