基于ARM9的μCOS-Ⅱ嵌入式系统移植.doc
《基于ARM9的μCOS-Ⅱ嵌入式系统移植.doc》由会员分享,可在线阅读,更多相关《基于ARM9的μCOS-Ⅱ嵌入式系统移植.doc(20页珍藏版)》请在咨信网上搜索。
1、大庆师范学院本科毕业论文(设计)大庆师范学院 本科生毕业论文基于ARM9上的C/OS-嵌入式系统移植-院 (系) 物理与电气信息工程 专 业 电子信息工程 研 究 方 向 嵌入式 学 生 姓 名 钮佳楠 学生名采用四号楷体,加粗、居中。其余各项均为四号宋体,数字用四号“Times New Roman”。各项下划线末端对齐。学 号 200901071677 指导教师姓名 成宝芝 指导教师职称 讲师 2013年 5 月 15 日摘 要“摘要”采用小五号黑体。行间距18磅,上下各空一标准行。随着计算机和电子技术的发展,越来越多的嵌入式产品出现在人们的日常生活和工业生产之中。由于嵌入式设备的智能型,使
2、得生活和生产变得极为方便,由此也带来了嵌入式操作系统的迅速发展。C/OS-内核作为一种代码公开的嵌入式实时操作系统,ARM9以内核耗电少,成本低,二者相互搭配,构成了较为完美的搭配组合。 本文主要讲述的是C/OS-在ARM9上的系统移植问题。 中文摘要内容采用小五号楷体,首行缩进2字符,行间距18磅。字数一般为150-300字。关键词:C/OS-;Arm9;移植每篇论文(设计)选取3-6个词作为关键词。“关键词”采用小五号黑体,并缩进2字符。关键词内容采用小五号楷体,关键词之间用“;”分隔,行间距18磅。Abstract“Abstract”采用小五号“Times New Roman”,加粗,行
3、间距为固定值18磅,上下各空一标准行。With the development of computer and electronic technology, embedded has become an indispensable part of modern society. Big to industrial production, such as aerospace, small to daily life, such as smart card applications, many devices are built into the embedded, makes the equip
4、ment or device has a high automation performance and some degree of intelligence, great convenience to peoples production and living needs, and thus also brought the rapid development of the embedded operating system. Mu C/OS - kernel code, as a kind of open embedded real-time operating system, the
5、ARM kernel, less consumption, lower cost, the two match each other, form the relatively perfect collocation. This article mainly tells the mu C/OS - portability issues on the ARM of the system.Keywords: u C/OS - ; Arm; transplant目录第一章 嵌入式系统基础51.1 嵌入式系统概述51.2 嵌入式体系硬件基础51.3 嵌入式体系软件基础6第二章 C/OS-II介绍6第三章
6、ARM9介绍7第四章 C/OS-在S3C2440上的移植84.1 移植环境简介84.2 移植条件84.3 移植步骤84.3.1 INCLUDES.H94.3.2 OS_CFG.H94.3.3 OS_CPU.H 文件94.3.4 OS_CPU_C.C 文件104.3.4.1 OSTaskStkInt()104.3.4.2 OSTaskCreateHook()104.3.4.3OSTaskDelHook()104.3.4.4 OSTaskSwHook()114.3.4.5 OSTaskStatHook()114.3.4.6 OSTimeTickHook()114.3.5 OS_CPU_A.ASM
7、文件114.3.5.1 OSStartHighRdy()114.3.5.2 OSCtxSw()124.3.5.3 OSIntCtxSw()124.3.5.4 OSTickISR()124.4 移植测试12第五章 实例移植135.1 工程创建135.2 工程设置145.3 实例调试18第六章 结束语18参考文献19谢 辞20第一章 嵌入式系统基础1.1 嵌入式系统概述基于计算机技术,以应用为中心,且软硬件可裁剪,对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统,叫做嵌入式系统。一般由以下几部分组成:1. 嵌入式的微处理器2. 硬件设备(外围)3. 嵌入式的操作系统4. 特定应用程序嵌入
8、式系统具有以下几个特点:1. 特定且广泛的应用2. 密集的技术、知识、资金3. 高效性4. 较长生命周期5. 高可靠性6. 软硬件集于一体,以软件为主嵌入式系统的应用领域十分广泛,主要包括交通管理、机器人、军事电子、通信设备、网络设备、医疗仪器、环境监测、汽车电子、工控设备等。嵌入式系统从上世纪60年代中期开始,从无操作系统、简单操作系统、实时操作系统直至今日面向Intenet的阶段,历经50多年。嵌入式因为广泛应用性,巨大的创业型和广阔市场性,走进了千家万户。1.2 嵌入式体系硬件基础嵌入式系统的硬件核心是嵌入式微处理器,另外包括总线、存储器、输入/输出接口和设备。1. 微处理器:至少包含一
9、个微处理器,采用的体系结构是冯诺依曼或哈佛结构。2. 总线:集成在嵌入式微处理器中,选择总线和微处理器密切相关,总线的种类随不同的微处理器的结构而不同。3. 存储器:包括主存和外存。主存用于存数代码和数据;外存存放各种信息4. 输入/输出接口和设备:集成在微处理器中,主要包括中断控制器、DMA、串行和并行接口等1.3 嵌入式体系软件基础RTOS(实时多任务操作系统)、文件系统、GUI(图形接口)、网络系统和通用的组件模块构成了嵌入式系统的软件层。EOS,即嵌入式操作系统是一种用途广泛的系统软件,主要负责系统软硬件分配、任务控制,调度以及协调并发的活动。目前,世界上一些应用比较成功的EOS产品系
10、列已经被推出了。随着Internet技术发展、信息家电普及应用,EOS已经开始从单一弱功能向高专业化强功能的方向发展。EOS除了具备了一般操作系统最基本的功能(如任务调度、机制同步、中断处理、文件功能等)外,还具有以下的特点:1. 可装载卸载性。开放性、可伸缩性体系结构。2. 极强的实时性。EOS实时性较强,可用于各种设备的控制当中。3. 统一的接口。提供了各种设备驱动接口。4. 方便操作、简单、提供图形GUI,图形的界面,追求的是易学易用性。5. 支持TCP/IP协议和其它的网络协议,提供多种网络协议和MAC访问的接口,为各种手持移动设备预留了接口。6. 强稳定性和弱交互性。7. 固化的代码
11、,系统和应用软件固化在ROM中。8. 更好的适应硬件,具有良好的移植性。第二章 C/OS-II介绍实时操作系统,英文称Real Time Operating System,简称RTOS,是一种能够接受并快速处理外界时间或中断,且处理接口在规定时间内来控制过程作出响应,并控制所有实时任务一致运行的系统。1992年美国人Jean J.Labrosse在Embedded SystemProgramming杂志上最先发表了RTOS,名为C/OS,从而开创了它的新时代。C/OS是一个源码开放,抢占式微内核的实时操作系统,C/OS-II是它的升级版本,全部代码约有5000行,由ANSI C,以及少量的汇编
12、语言编写而成,结构简洁,实时性和内核的稳定性强。至今,从8位到64位,C/OS-II已经在超过40种的不同微处理器上运行,在世界范围内得到广泛使用,包括诸多领域,如手机、路由器、集线器、不间断电源、飞行器、医疗设备及工业控制等。实际上,C/OS-II已经通过了非常严格的测试,并且得到了美国航空管理局(Federal Aviation Administration)的认证,可以用在飞行器上。这说明C/OS-II是稳定可靠的,可用于与人性命攸关的安全紧要(safety critical)系统;当然,也可用于非安全紧要系统。C/OS-II体系结构如图2.1所示图2.1 C/OS-II体系结构第三章A
13、RM9介绍ARM9是32位通用微处理器ARM(Advanced RISC Machine)家族中的一员,具有比较低的电源消耗和良好的性价比,由此广泛应用于工业生产和日常生活中。基于RISC(精简指令)的结构,较微程序的控制复杂指令系统的计算机相对简单,使得它用有较高的中断响应和指令处理的能力。ARM9的指令集共包含了11种基本类型:用于偏上的算术逻辑单元,桶式的移位器及乘法器(两种);指令控制数据传送:用在弹性地址,高速内容切换,和交换数据(三种); 用于流程控制和特权级执行的指令(三种);专门用在能够扩展到片外的协处理器中(三种)。指令集比较适用不同的高级语言编译器,但需要临界代码段,汇编语
14、言编程也比较简单,不像其它的需要复杂的编译器来管理指令。ARM9的流水线技术,能够使指令处理和系统存储的各个部分都可以连续的运行。比如一条指令正在执行,下一条指令正在被破译,同时第三条指令可以从存储器取出。 在存储的系统中,ARM9存储接口的设计能够最大限度的发挥性能潜力且代价降低,被做成流水线方式,速度敏感控制信号推动着由工业DRAM提供的快速局部访问模式。 ARM9有32位地址总线,也可以配制成26位的地址线,向下兼容其它的早期处理器。 全静态的CMOS的ARM9,允许时钟在周期内的停止,并保存当前的状态。基于上述的优势,ARM9适用于一些需要紧凑且功能强大的RISC处理器系统,包括电子通
15、讯、数据通信、信息存储、图像处理、JOEG控制器等,为人们的日常生活和工业生产带来了极大的便利。第四章 C/OS-在S3C2440上的移植4.1 移植环境简介移植就是使实时内核能够在多个微处理器或微控制器上成功运行的过程。本文采用的是S3C2440芯片,开发环境采用Keil uVision3,基本满足了移植的需求。三星公司的16/32位精简指令集的微处理器S3C2440,基于ARM920T的核心,实现了内存管理,ARBA总线和哈佛结构高速缓冲的具有独立的16KB指令高速缓存和16KB数据高速缓存体系结构。4.2 移植条件由于CPU版本的不同,C/OS-II 可能会出现不兼容的问题,这时需要对操
16、作系统进行移植,使它能够在使用的CPU 上运行。C/OS-II 的移植需满足以下的要求:1. 处理器的 C 编译器可产生可重入代码; 2. 进入和退出临界区代码可以使用 C 进行调用; 3. 处理器必须支持具有定时中断源的硬件中断; 4. 处理器必须能够容纳一定的数据硬件堆栈; 5. 处理器需要有交换数据的指令,使其能够在 CPU 的寄存器和内核及堆栈间进行数据的交换。 4.3 移植步骤C/OS-作为实时操作系统操作系统,在设计初期就已经充分考虑了可移植性,针对不同的CPU版本,C/OS-的移植核心环节就是改写一些与处理器硬件相关的函数。移植工作包括以下内容:1. 用#define设置一些常量
17、的值(OS_CPU.H)2. 声明10个指定的数据类型(OS_CPU.H) 3. 用#define声明2个宏(OS_CPU.H) 4. 用 C 语言编写6个简单函数(OS_CPU_C.C) 5. 根据硬件编写了4个函数(OS_CPU_ A.ASM)4.3.1 INCLUDES.H INCLUDES.H是一个被包含在所有.C文件中的头文件。简而言之,在这个INCLUDES.H使得项目中的每个.C文件不需要分头文件中包含了可能用到的头文件以及一些可能与实际应用不相关的头文件。虽然这增加了文件编译的时间,但是增强了可移植性。我们可以通过INCLUDES.H来增加自己需要的头文件,为了避免重新编译已编
18、译的内容,增加的头文件必须添加在头文件列表的最后。4.3.2 OS_CFG.H内核是一个系统的核心,而OS_CFG.H就是用来配置内核的头文件,根据不同的需要和应用,我们可以对内核进行定制和裁剪,从而提高了实时性。4.3.3 OS_CPU.H 文件 OS_CPU.H主要包含了一些用#define定义的常量,宏和类型定义(与处理器相关)。众所周知,不同的处理器字长是不相同的,尤其是,C/OS-代码不使用与编译器相关的C的short(短整),int(整型)和long(长整)等数据类型。所以为了移植的成功,需要对C/OS-中的数据类型进行重新的定义。与所有的实时内核一样,C/OS-需要先将中断禁止再
19、进行访问代码临界段,且在访问完毕重新允许中断。C/OS-定义了两个宏来禁止和允许中断:OS_ENTER_CRITICAL() 和OS_EXIT_CRITICAL()。结构常量OS_STK_GROWTH是用来改变堆栈生长方式。因为不同的微处理器和微控制器堆栈生长方式不同,C/OS-中可以通过改变OS_STK_GROWTH的值来改变堆栈生长方式当把OS_STK_GROWTH值置0,堆栈的生长方式是从下往上长。当把OS_STK_GROWTH值置1,堆栈的生长方式是从上往下长。OS_TASK_SW()是一个在C/OS-进行任务切换(低任务优先级级到最高优先级任务)时被调用的宏。任务切换只是简单的把处于
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM9 COS 嵌入式 系统 移植
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。