毕业设计翻译文献

文献题目:Construction of Embedded System Platform which Based on μC/OS- and ARM7 Kernel Microprocessor

构建基于μC/ OS-和ARM7内核微处理器的嵌入式系统平台

学生姓名:

学 院: 信息与通信工程学院

专 业: 电子信息工程

指导教师: 万 忠 民

2015年 5 月 10 日

构建基于μC/ OS-和ARM7内核微处理器的嵌入式系统平台Yujun Bao Xiaoyan Jiang

摘 要

今天,嵌入式系统被广泛地应用于各行各业。引入嵌入式操作系统在嵌入式发展中已经是一种趋势。嵌入式操作系统能够适用于不同的系统硬件,并能够显著的减少开发费用,缩短研究周期。μC/ OS-是一款优秀的开源,轻型内核,占用少量资源并且在实时性方面有着高性能的嵌入式操作系统。μC/ OS-适用于越来越多的32位ARM7核微处理器,本文介绍了基于ARM7微处理器的μC/ OS-嵌入式操作系统的移植方法。最终实现了构建基于μC/ OS-和ARM7内核处理器的嵌入式开发平台。该平台能有效的简化软件程序开发流程,并缩短工程研究的周期和显著提高系统的执行效率。

关键字:嵌入式系统;嵌入式操作系统;ARM7内核;μC/ OS-

介绍

所谓的操作系统移植是一个实时操作系统内核可以在运行在其他微处理器上。移植部分对于不同的CPU具有对应的不同的代码。大多数μC / OS-代码是用C编程语言编写的,这对于移植μC / OS -是非常方便的。但根据不同的微处理器,用户仍然需要使用汇编语言编写一些有关不同微处理器的硬件的程序。这是因为当μC / OS-读或写寄存器时,它只依赖于汇编语言。

因为μC / OS -操作系统的要求,有三个文件需要当μC / OS-移植到一个特定的微处理器。整个移植工作主要围绕创建这三个文件。这些文件显示如下:

1、在C语言中的头文件OS_CPU中,一些与编译器无关的数据

类型需要定义OS_CPU中。

这些数据类型包括使用的堆栈数据类型和堆栈的增长方向。一些与ARM7内核相关的软件中断也被定义在该文件中。

2、另一个OS_CPU_C.C是一个 C源文件程序。该文件主要包括μC / OS-的任务堆栈的初始化函数和一些被μC / OS-操作系统调用的用户函数。

3、最后一个OS_CPU_A.S文件是一个汇编程序源文件。这是一个时钟中断服务函数在运行的时候,也包含了一个用于引起中断的任务切换函数,并且也具有总是运行最高优先级的任务当μC / OS-系统首次进入多任务环境时。

OS_CPU.H文件

A、定义与编译器有关的数据类型

因为不同的微处理器有不同的字长度,所以μC / OS-的移植包含一系列的数据类型的定义,这使移植能够实现。尤其是在C语言中使用的数据类型,例如短型、整型、长型等等,这些数据类型不能直接用于μC / OS-。因为这些数据类型与编译器类型有关,它们不能被移植。所以这些数据类型都定义为整型数据结构,在许多情况下,他们是可移植的。

中断是一种硬件机制,但在μC / OS -操作系统,一些重要的任务函数的实现应该取决于中断级的代码。所以,这种情况下,μC / OS-操作系统需要一条预处理器指令来模拟中断。它类似于一个硬件中断,所以它被称为软中断。大多数微处理器的内核可以提供这种类型的软中断指令。在ARM7内核,它是“SWI”。

为了使底层接口函数是独立的处理器状态并且底层任务函数不需要知道调用函数的准确的地址当任务被调用时。SWI指令应该用作底层接口。并且不同的函数能够通过不同的软件中断函数编号的方法进行区分。ADS1.2编译器总是使用“_swi”来声明一个不存在的函数。而一旦不存在的函数被调用时,一条SWI的指令应该插入调用函数并指定函数编号的位置。这里显示一些在μC / OS-Ⅱ中重要功能的软中断函数

_swi(0x00) void OS_TASK_SW(void);//在任务间切换功能

_swi(0x01) void _OSStartHighRdy(void);//首先运行最高优先级任务

_swi(0x02) void OS_ENTER_CRITICAL(void);//关中断

_swi(0x03) void OS_EXIT_CRITICAL(void);//开中断

_swi(0x80) void ChangeToSYSMode(void);//切换到系统模式

这些函数的具体代码在文件OS_CPU_C.C和OS_CPU_A.S中。根据μC / OS-的要求,所有在应用系统中的C文件必须包括文件INCLUD

c语言 中英文文献,外文文献中英文翻译嵌入式.doc相关推荐

  1. 计算机文献双语外文,22中英文双语外文文献翻译成品:基于Unity3D的虚拟现实(VR)新方法...

    22中英文双语外文文献翻译成品:基于Unity3D的虚拟现实(VR)新方法 p外文标题 A New of Virtual Reality Based on Unity3D 外文作者 Sa Wang, ...

  2. 计算机病毒检测外文文献,外文文献翻译 计算机网络病毒与防范.doc

    文档介绍: 外文文献翻译_计算机网络病毒与防范.docEvaluationWarning:ThedocumentwascreatedwithSpire..ingincreasinglywidespre ...

  3. 计算机网络安全外文文献,外文文献-计算机网络安全和防范

    外文文献-计算机网络安全和防范 附录一 翻译Computer network security and to guard against Abstract: When mankind entered ...

  4. 计算机网络安全外文文献,外文文献-计算机网络安全和防范x.docx

    外文文献-计算机网络安全和防范x 附录一 翻译Computer network security and to guard against Abstract: When mankind entered ...

  5. c语言考试系统外文文献,C语言考试系统的设计[文献翻译]

    C语言考试系统的设计[文献翻译] (14页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 毕业论文(设计) 外文翻译 外文原文 Web Se ...

  6. oracle中英文文献,库存管理外文文献及中英文翻译.doc

    企业库存管理中英文对照外文翻译文献 外文文献: Zero Inventory Approach Managing optimal inventory in the supply chain is cr ...

  7. Android软件测试外文文献,软件测试中英文对照外文翻译文献

    软件测试中英文对照外文翻译文献 STUDY PAPER ON TEST CASE GENERATION FOR GUI BASED TESTING ABSTRACT With the advent o ...

  8. 计算机联锁的英语文献,计算机联锁系统毕业论文中英文资料外文翻译文献

    中英文资料外文翻译文献 Component-based Safety Computer of Railway Signal Interlocking System 1 Introduction Sig ...

  9. 英文软件测试文章翻译,软件测试中英文对照外文翻译文献

    软件测试中英文对照外文翻译文献 STUDY PAPER ON TEST CASE GENERATION FOR GUI BASED TESTING ABSTRACT With the advent o ...

最新文章

  1. [转]int.ToString()输出不同格式的数字字符串
  2. JZOJ 5267. 费马点问题
  3. 局域网络连接的计算机不全,WIN10局域网电脑和设备显示不完整
  4. BASH Shell 简易进度条小函数
  5. 一夜抢空880万!中国最狠印钞机,终于开始收割年轻人了
  6. python两大特性与四大语法_Day 1:Python 两大特性和四大基本语法
  7. 大数据分析为啥越来越重要
  8. 996.ICU凉凉了!
  9. 【JDBC】JDBC的使用(数据库的增删改查询)
  10. c语言 mongodb,MongoDB的C语言编程实例
  11. Python基础教程:教你制作一个汇率换算程序
  12. php 项目如何运行_运行PHP项目(phpstorm+wampserver)
  13. python+opencv实现相似图片的搜索
  14. 使用hexo基于cactus仙人掌主题最全美化客制教程
  15. 【时光隧道——使用Html、JavaScript等实现(附源代码)】
  16. 2022-02-16 工作记录--Swiper-实现跑马灯效果:鼠标经过时停止滑动,鼠标离开后继续滑动
  17. VS2019生成DLL
  18. 用C语言编写简易计算器
  19. 【ZCMU1434】糖果迷阵
  20. JavaScript数据结构和算法笔记一(前八章)

热门文章

  1. windows:简单方法确定自己电脑是否被监控
  2. sqlsugar mysql连接字符串_通用数据访问组件UniDAC最新版本v8.2.4,支持Lazarus中的macOS 64位...
  3. Android UID的分配、查看及相关知识
  4. Java作业:类的继承的实例(正方体、圆柱体、圆锥体、球体分别继承自矩形类和圆类)
  5. Android中获取屏幕宽度(利于屏幕适配)
  6. 太赞:苹果产品Apple Watch又救人了!
  7. 极域电子书包windows版本怎么安装
  8. json数组格式的字符串通过方法直接转换为JSONArray
  9. Win10 下使用OpenJDK,并配置 JAVA_HOME
  10. 基于Android 6.0 MTK 彩信收发