《嵌入式操作系统》课程设计(DOC)_第1页
《嵌入式操作系统》课程设计(DOC)_第2页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、長m譽嵌入式操作系统课程设计指导书专 业:计算机科学与技术专业方向:计算机科学与技术计算机科学与工程学院1第一章课程设计指导书1、目的任务本设计的目的在于使学生全面理解实践已学的相关课程内容,深刻理解嵌入式系统 开发的全过程。从硬件的角度掌握嵌入式开发板的组成,接口部件的结构和与宿主机间 的连接,从软件的角度掌握嵌入式系统软件开发的全过程。使学生通过自己的实践,初 步了解和掌握一个实用嵌入式系统的开发步骤,综合应用所学的基础知识和编程手段独 立完成嵌入式系统开发的基础内容。2、设计内容基础实验(必做)一一嵌入式系统开发环境搭建扩展实验(从以下三个实验中任选一个)实验一 一一 利用Autotoo

2、ls工具自动生成Makefile文件实验二-使用BusyBox制作根文件系统实验三一一使用GTK+进行图形界面编程3、时间安排时间:第17周第一天确定题目、查找相关资料,安装系统;第二到第四天为实验和程序设计、完 善总结、撰写报告,第五天答辩。4、工作要求(1) 爱护实验开发板,为避免烧坏开发板,对开发板的任何插拔工作,都必须在 断电之后进行。(2) 明确实验要求和步骤,在进行实验之前详细阅读开发板配套手册和相关资 料。(3)在本设计过程中,学生应随时做实习笔记,记录每天的工作内容及结果,同时还应规划出次日的实习计划与解决问题的方案。25、 成绩评定设计结束时,由指导老师对学生进行全面考核,评

3、分按五级分制(优、良、中、及格、不及格)评定成绩,评分依据以下几个方面。(1)平时成绩包括遵守纪律情况,实习中的工作态度,实习日记的记录情况等。(2)设计中实验结果的成绩教师要把关,确认实验结果是由实验人做出的。如不能按设计要求做出实验结果的, 要予以扣分;对于有创新的实验及结果者,应给予好的成绩。对于以下情况之一者,要严 格进行处理。1.照抄他人,自己没有消化者,应给予“不及格”。2严重迟到早退,应给予“不及格”。3.实习不认真,违反实验室规定者,应给予“不及格”。4.缺勤大于整个工作时间的25%上者,应给予“不及格”。5.实习报告不认真者,至少不能给“优”和“良”的成绩。6、 参考资料(1

4、) 熊茂华、熊昕编著嵌入式Linux实时操作系统及应用编程.清华大学出版社.2011年5月第1版(2) 深圳友坚恒天科技公司开发板配套光盘中用户手册:idea6410开发板linux使用手册ubu ntu-UserMa nu al_v0.18UT6410-A ndroid2.1_ma nual(3) 相关国嵌、申嵌视频资料7、设计说明书(报告)(1)正文:正文内容层次序号为:1、1.1、1.1.1 ”。正文内容一般为:1.选题背景:说明本课题应解决的主要问题及应达到的技术要求;简述本设计3的指导思想。2方案论证:说明设计原理并进行方案选择,阐明为什么要选择这个设计方案以及所采用方案的特点。3过

5、程(设计或实验)论述:对设计工作的详细表述。要求层次分明、表达确切。4.结果分析:对研究过程中所获得的主要的数据、现象进行定性或定量分析,得出结论和推论。5.结论或总结:对整个研究工作进行归纳和综合。(2)图纸要求:图面整洁,布局合理,线条粗细均匀,圆弧连接光滑,尺寸标注规 范,文字注释必须使用工程字书写。提倡学生使用计算机绘图。(3)曲线图表要求:所有曲线、图表、线路图、流程图、程序框图、示意图等不准 徒手画,必须按国家规定标准或工程要求绘制(应尽可能采用计算机辅助绘图)。课程设计说明书(报告)要求文字通顺,语言流畅,无错别字,不得使用铅笔书写。 按教务处印制的统一格式封皮装订。有条件的可用

6、B5纸打印。课程设计说明书(报告)中图表、公式一律采用阿拉伯数字连续编号。图序及图名 置于图的下方;表序及表名置于表的上方;说明书(报告)中的公式编号,用括号括起 来写在右边行末,其间不加虚线。4第二章嵌入式系统开发流程2.1 嵌入式系统开发的一般流程当前,嵌入式开发已经逐步规范化,在遵循一般工程开发流程的基础上,嵌入式开 发有其自身的一些特点,下图为嵌入式系统开发的一般流程。主要包括系统需求分析(要 求有严格规范的技术要求)、体系结构设计、硬件/软件设计、系统集成、系统测试,最 终发布产品。2.1.1.系统需求分析确定设计任务和设计目标,并提炼出设计规格说明书,作为正式设计指导和验收的 标准

7、。系统的需求一般分功能性需求和非功能性需求两方面。功能性需求是系统要实现 的基本功能,如输入输出信号、操作方式等;非功能性需求包括系统性能、成本、功耗、5体积、重量等因素。2.1.2体系结构设计描述系统如何实现所述的功能性和非功能性需求,包括对硬件、软件和执行装置的 功能划分以及系统的软件、硬件选型等。一个好的体系结构是设计成功与否的关键。2.1.3硬件/软件协同设计(硬件、软件、执行装置并行设计)基于体系结构,对系统的软件、硬件进行详细设计。为了缩短产品开发周期,设计 往往是并行的。嵌入式系统设计的大部分工作集中在软件设计上,采用面向对象技术、 软件组件技术、模块化设计是现代软件工程经常采用

8、的方法。2.1.4.系统集成把系统的软件、硬件和执行装置集成在一起,进行调试,发现并改进单元设计过程 中的错误。2.1.5.系统测试对设计好的系统进行测试,检查是否满足规格说明书中给定的功能要求。嵌入式系统开发模式最大特点是软件、硬件综合开发。这是因为嵌入式产品是软硬 件的结合体,软件针对硬件开发、固化、不可修改。2.2 基于 Linux 的嵌入式系统开发如果在一个嵌入式系统中使用Linux技术开发, 根据应用需求的不同有不同的配置 开发方法,但是,一般情况下,在遵照一般嵌入式系统开发流程的同时,都需要经过如 下的过程。2.2.1.开发目标板硬件6设计目标板硬件选型及器件布局。2.2.2.建立

9、一套交叉编译工具建立一套交叉编译工具,能够在宿主机上产生目标板上运行的目标代码。通过网络 下载相应的GC(交叉编译器进行安装(比如,arm-1inux-gcc、arm-uclibc-gcc),或者安 装产品厂家提供的相关交叉编译器;并配置开发主机,使其与目标板建立通信,配置MINICOM般的参数为波特率115200Baud/s,数据位8位, 停止位为1,无奇偶校验, 软件硬件流控设为无。 在Windows下的超级终端的配置也是这样。MINICOM软件的作用 是作为调试嵌入式开发板的信息输出的监视器和键盘输入的工具。配置网络主要是配置NFS网络文件系统,需要关闭防火墙,简化嵌入式网络调试环境设置

10、过程。2.2.3.移植一个合适的引导加载程序到目标板上,用于初始化目标板和加载内核从网络上下载一些公开源代码的BOOTLOADE如U-BOOTVIVI、ARM-BOC等,根 据具体芯片进行移植修改。 有些芯片没有内置引导装载程序, 就需要编写开发板上FLASH的烧写程序,可以在网上下载相应的烧写程序,也有Linux下的公开源代码的J-FLASH程序。如果不能烧写自己的开发板,就需要根据自己的具体电路进行源代码修改。这是 让系统可以正常运行的第一步。如果用户购买了厂家的仿真器比较容易烧写FLASH虽然无法了解其中的核心技术,但对于需要迅速开发自己的应用的人来说可以极大提高开 发速度。2.2.4.

11、移植一个合适的Linux内核到目标板上如果有专门针对所使用的CPU移植好的Linux操作系统那是再好不过,下载后再添 加特定硬件的驱动程序,然后进行调试修改,对于带MM的CPU可以使用模块方式调试 驱动,否则只能编译进内核进行调试。2.2.5.建立一个根文件系统7可以从http : /下载使用BUSYBOX件进行功能裁减,产生一个 最基本的根文件系统,再根据自己的应用需要添加其他的程序。由于默认的启动脚本一 般都不会符合应用的需要,所以就要修改根文件系统中的启动脚本,它的存放位置位于/etc目录下,包括:/etc/init.d/rc.S、/etc/profile、/etc/.profile等,

12、自动挂装 文件系统的配置文件/etc/fstab,具体情况会随系统不同而不同。根文件系统在嵌入式 系统中一般设为只读,需要使用mkcramfsgenromfs等工具产生烧写映像文件。2.2.6.开发特定外设的驱动程序为特定外设编写驱动程序并添加进内核运行。2.2.7.开发上层的应用程序开发上层应用程序之后,可以将其放入根文件系统中运行,也可以放入YAFFSJFFS2文件系统中,有的开发不使用根文件系统,也可直接将应用程序和内核设计在一起。8第三章课程设计内容基础实验嵌入式系统开发环境搭建一、实验目的对嵌入式系统开发而言,配置宿主机-目标板开发环境、建立合适的开发工具链、 对内核进行配置和移植等

13、工作是进一步进行上层应用程序开发的不可或缺的重要步骤。 当前In ternet上具有丰富的Lin ux相关开发源代码可供用户下载和使用,其中包括编译 器等开发工具链,各种协议的支持软件工具,以及操作系统自身。如何使用这些资源是 本实验的重要内容。通过本实验,旨在使学生能够:1.掌握开发主机与嵌入式开发板通信的方法2.掌握嵌入式开发工具链的构造过程3.掌握烧写镜像文件到开发板的方法4.掌握相关镜像文件配置和编译的过程二、实验环境要求1) 开发板准备:1dea6410开发板2.交叉串口线(双母头):用于连接开发板COM和PC机COM口进行调试用3. USB数据线:用于下载镜像4.电源适配器:用于给

14、开发板供电5.SD卡:用于初次烧写时,从SD启动6.USB接口SD读卡器:用于在PC端烧写启动代码至SD卡中2) 主机环境准备:在虚拟机VMware安装ubuntu1O.O4三、实验准备1.参照手册UT6410-Android2.1_manual和Ubuntu安装资料中方法在虚拟机VMware中安装ubuntu1O.O492.学习【申嵌视频】1体验篇”视频,参照“【申嵌视频】1体验篇”中视频的开 发板连线方法将目标板与主机相连四、实验步骤1.开发主机和嵌入式开发板间的通信嵌入式内核和应用软件经过编译和链接后,可以下载到嵌入式系统中,同时在程序 运行过程中需要用户通过控制终端输入命令,并向用户显

15、示特定信息。这就需要在开发 主机和嵌入式系统之间进行通信。串行接口是开发主机和嵌入式系统通信的基本手段, 可以通过串行接口为嵌入式系 统中Linux建立一个控制终端,也可以完成内核和应用程序的下载。嵌入式系统开发中四种常见串口调试工具有:超级终端、SecureCRT DNWVminicom通过学习“【申嵌视频】1体验篇”视频和相关资料,掌握开发主机和嵌入式开发 板间串口的通信的方法。2.掌握嵌入式开发工具链的构造过程交叉编译工具链是指在一个体系结构平台下开发另一个平台下运行的程序所需的编 译工具集。目前主机一般采用x86指令系统,而默认的编译器配置是将高级语言程序编 译为x86指令系统。交叉编

16、译工具就是要将高级语言程序编译成为嵌入式系统中特定处 理器的指令系统(如ARM旨令系统)。交叉编译工具链包括汇编器,高级语言编译器,连接工具和make工具等。交叉开发 环境的建立实际上就是在通用PC机上安装一个交叉开发工具链,这一过程包括如下步 骤:1创建编译环境,包括准备源文件、建立编译目录、建立内核头文件2建立二进制工具(bin utils)3建立初始编译器(gcc)4建立C语言库(glibc)5建立全套编译器也可直接安装开发板附带光盘中的交叉编译器。参照“idea6410开发板linux使用手册”和课程设计资料中“s3c6410开发环境配 置”进行交叉工具链的安装和环境变量的设置。3.掌

17、握烧写镜像文件到开发板的方法10嵌入式开发板系统运行需要有bootloader、Linux内核镜像、根文件系统镜像3个 部分,参照“idea6410开发板linux使用手册”中“第三章烧写镜像文件到开发板” 以及UT6410-Android2.1_manua”手册中“第五章烧写镜像”和“【申嵌视频】1体 验篇”视频内容学习如何将镜像文件烧写到开发板运行。4.掌握相关镜像文件配置和编译的过程参照“idea6410开发板linux使用手册”中“第四章 编译镜像文件”内容学习u-boot源码包和kernel源码包的编译方法。五、报告要求1、简述开发主机与嵌入式开发板通信的方法2、简述嵌入式开发工具链

18、的构造过程3、简述烧写镜像文件到开发板的方法4、简述相关镜像文件配置和编译的过程5、说明在课程设计过程中遇到的困难和解决方法11扩展实验一利用 Autotools 工具自动生成 Makefile 文件一、实验目的Makefile文件是make工程管理不可缺少的文件,当工程比较庞大时手动建立Makefile文件是不可行的,往往需要借助于相关的工具来实现。通过本实验,旨在使学 生掌握使用Autotools工具自动生成Makefile文件的方法。二、 实验环境要求主机环境:在虚拟机VMware安装ubuntu10.04,Autotools工具三、 实验准备由于实验环境不能上网,因此我们使用离线安装的

19、方法进行。1使用ubuntu dvd安装盘作为软件源, 参照ubuntu dvd软件包读取”中方法, 将ubuntudvd安装盘导入,并打开新立得软件包管理器查看添加情况。如果添加成功,将能够搜索到autotools的相关安装包,使用apt-get命令安装, 例女口apt-get in stall autotools-dev。2或参照课程设计资料中makefile文件的自动生成”中内容,使用 即t-getin stall autotools-dev命令在现有环境下安装好autotools。四、 实验步骤参照教材嵌入式Linux实时操作系统及应用编程和课程设计资料中“自动生成Makefile”内容进行。五、 练习用编辑器至少编写一个.c文件,其中输出你的学号,使用Autotools工具生成对应的makefile文件。六、 报告要求详细说明练习完成的步骤(包括相应代码的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论