ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:45.31KB ,
资源ID:6543771      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6543771.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《嵌入式操作系统》课程设计.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

《嵌入式操作系统》课程设计.docx

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

18、译的过程5、说明在课程设计过程中遇到的困难和解决方法扩展实验一 利用Autotools工具自动生成Makefile文件一、 实验目的Makefile文件是make工程管理不可缺少的文件,当工程比较庞大时手动建立Makefile文件是不可行的,往往需要借助于相关的工具来实现。通过本实验,旨在使学生掌握使用Autotools工具自动生成Makefile文件的方法。二、实验环境要求主机环境:在虚拟机VMware中安装ubuntu10.04,Autotools工具 三、实验准备由于实验环境不能上网,因此我们使用离线安装的方法进行。使用ubuntu dvd安装盘作为软件源,参照“ubuntu dvd 软

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

20、具生成对应的makefile文件。 六、报告要求详细说明练习完成的步骤(包括相应代码的编写和修改,输入的命令等)扩展实验二 使用BusyBox制作根文件系统一、 实验目的根文件系统是Linux内核挂载的第一个文件系统,其中包含系统启动所需的目录、配置文件和一系列Shell命令。通过本实验,旨在使学生掌握根文件系统制作的方法。二、实验环境要求主机环境:在虚拟机VMware中安装ubuntu10.04 三、实验准备BusyBox工具根文件系统相关制作工具(mkyaffsimage或cramfs等)四、实验步骤参照教材嵌入式Linux实时操作系统及应用编程和课程设计资料中“根文件系统制作”内容进行。

21、五、练习制作生成根文件系统。 五、报告要求说明制作根文件系统的步骤。扩展实验三 使用GTK+进行图形界面编程一、 实验目的通过本实验,旨在使学生掌握GTK+的基本知识,一些基础函数,以及使用GTK+编写一个简单图形界面的方法。二、实验环境要求主机环境:在虚拟机VMware中安装ubuntu10.04,GTK+ 三、实验准备由于实验环境不能上网,因此我们使用离线安装的方法进行。参照课程设计资料中“gtk+”中内容,使用apt-get install libgtk2.0-dev命令在现有环境下安装好gtk+的相关库。四、实验步骤参照教材嵌入式Linux实时操作系统及应用编程和课程设计资料中“gtk+”中内容进行。五、练习使用GTK+编写一个图形界面,要求至少使用菜单控件、label和按钮。 六、报告要求详细说明练习完成的步骤(包括相应代码的编写,输入的命令等)

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2