(参考)基于arm平台的uCOSII移植.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
西 南 科 技 大 学 创新基金项目过程与结果总结报告 基于ARM7平台的μC/OS-Ⅱ的移植 年 级: 2007 级 学 号: 姓 名: 吴 友 强 专 业: 计算机科学与技术 二零一零年五月 一.准备工作 1.μC/OS-Ⅱ简介 uC/OS-II读做“micro COS2”, 意为“微控制器操作系统版本2”。uC/OS-II是著名的,源代码公开的实时内核,可用于各类8位,16位和32位单片机或DSP。从uC/OS算起,该内核已有十多年应用历史,在诸多领域得到广泛应用。简要说明一下该题目的特点和它的实际意义和社会价值。(约250字并翻译英文) μC/OS-Ⅱ的特点 提供源代码 可固化 可裁剪 可剥夺 多任务 可确定性 任务栈 系统服务 中断管理 稳定性与可靠性 编译器的选择 ARM处理器核的C编译器有很多,大概有SDT,ADS1.2,IAR,TASKING和GCC等。我最终选择的是ADS1.2编译程序和调试。为什么要选择ADS1.2,要简要说明理由。(约200字) ARM7简介 ARM7处理器核具有用户,系统,管理,中止,未定义,中断和快中断7中工作模式。其中除了用户模式外其他均为特权模式。同时支持两个指令集:16位Thumb指令集和32位ARM指令集。为什么要选择ARM7,而不选ARM9或ARMX的高版本进行uC/OS-II的移植,简要说明理由。(约200字) 开发环境的搭建 操作系统:Windows XP 集成开发环境:ADS1.2 调试环境:AXD(ADS1.2配套的软件) 串口调试工具 项目中所运用到的技术创新 (1)实现了加密程序,保护了用户应用程序代码,利用在特定的地址0x1fc处写入特定的值0现加密 (2)通过工程配置文件加载程序代码,实现了写应用程序的模板工程,不用每次配置工程设置 (3)初始化程序和操作系统代码都留有很多扩充的接口,方便不同的用户需要实现不同的启动代码功能和扩充操作系统的功能 项目的特色 (1)在本文档中有完整的源代码,并且有很详细的注释 (2)只要具备同样的软硬件环境,根据我的《过程与结果总结报告》完全可以实现这个项目 (3)同时完成了引导程序和操作系统的移植 (4)涉及到软硬件的知识,不仅仅只是软件 移植过程 编写bootloader(ARM启动代码) 启动代码综述(精确简述移植过程,关键程序不要省略,其它程序可用流程图表达和说明即可。) 在一般32位ARM应用系统中,软件大多数采用C语言进行编程,并且以嵌入式操作系统为开发平台,这样大大的提高了开发效率及软件性能。为了能够进行系统初始化,通常会用一个汇编文件作为启动代码。它可以实现向量表定义、堆栈初始化、系统变量初始化、中断系统初始化、I/O初始化、外围初始化和地址重映射等操作。 ARM公司之设计内核,不生产芯片,只是把内核授权给其他厂商。其他厂商购买了授权后加入自己的外设,生产出各具特色的芯片。这样就促进了基于ARM处理器核的芯片的多元化,但也使得各种芯片的启动代码差别很大,不易编写出统一的启动代码。 文件的组成 汇编文件1.Startup.S:异常向量表、各模式堆栈初始化和跳到main()函数入口等 2.IRQ.S :负责管理中断嵌套 C文件 Target.C :初始化目标板 头文件 Config.H :系统配置和类型定义 Target.H :一些和目标板相关的声明 LPC2294.H :LPC2000系列芯片特殊寄存器定义 分散加载文件mem_a.Scf:在片内Flash发布,RelInFLASH Mem_b.Scf:在片内RAM调试,DebugInRAM,在uCOSII中不使用这种布局模式 Mem_c.Scf:在片内Flash调试,DebugInFLASH 各源代码文件内容及其注释 Startup.S: ;**--------------File Info--------------------------------------------- ;** File name: Startup.s ;** Last modified Date: 2009-08-17 ;** Last Version: 1.0 ;** Descriptions: 为 LPC2100系列芯片的启动代码,从这里开始执行,包括初始化代码,为每一种模 ;** 式 的进入口和任务的堆栈 ;定义堆栈的大小 SVC_STACK_LEGTH EQU 0 FIQ_STACK_LEGTH

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档