收藏 分享(赏)

嵌入式系统原理与设计课程设计.docx

上传人:dzzj200808 文档编号:2310275 上传时间:2018-09-10 格式:DOCX 页数:16 大小:27.30KB
下载 相关 举报
嵌入式系统原理与设计课程设计.docx_第1页
第1页 / 共16页
嵌入式系统原理与设计课程设计.docx_第2页
第2页 / 共16页
嵌入式系统原理与设计课程设计.docx_第3页
第3页 / 共16页
嵌入式系统原理与设计课程设计.docx_第4页
第4页 / 共16页
嵌入式系统原理与设计课程设计.docx_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、1嵌入式系统原理与设计课程设计一、课程设计目的嵌入式系统的教学可以分为课堂理论教学、实验教学和课程设计三个层面。这三个层面的目标有所不同。理论学习的主要目标是掌握嵌入式系统的一般原理,例如嵌入式系统的基本概念、ARM 指令、驱动设计和应用设计的一般方法等等。实验教学的主要目的是掌握嵌入式系统的主要开发流程和基本方法,例如开发工具链的使用、驱动程序开发和小型应用开发等。课程设计的主要目的是通过实际的嵌入式应用系统开发实例掌握嵌入式系统设计和开发的技能和专门知识,积累实践和工程经验。二、课程设计要求1、学生按题目分组参加课程设计,要求每个学生有明确的分工,每组成员最多不超过 4 人;2、必须按照工

2、程化开发流程,撰写相应的文档和代码,最后还必须通过课设答辩。课程设计成果包括设计文档、程序代码等。文档必须按照规定的格式撰写(具体见“五、课程设计写作细则” ,否则必须调整好格式才能参加答辩。3、考核办法及评分比例:设计文档占 60%,程序代码占 40%。三、课程设计流程1、准备阶段针对题目所涉及的基本实验(详见“四、课程设计参考题目” ) ,进行分析研究,掌握课题所需要的基本知识,包括理论部分及实验部分的基础知识。2、需求分析根据课设题目进行需求分析,各小组组织召开需求分析研讨会,充分挖掘潜在的需求。3、设计阶段根据需求分析,进行系统设计,可以分为两步:(1)概要设计2概要设计主要完成系统软

3、件模块的划分,给出软件总体框图,分析数据之间的关系,确定所需要的数据结构。(2)详细设计详细设计阶段针对概要设计所划分出的软件模块,设计函数原型、数据结构,确定函数之间的接口,并细化每个函数的设计,给出函数的流程图。4、编码阶段根据设计阶段所提交的系统设计说明书,编写程序。要注意采用统一的编程规范,注重代码的合理注释;在保证功能的基础上,提高算法的效率。5、程序调试利用实验室的实验箱,对所编写的代码进行调试,从而实现在需求分析说明书中所提出的需求。在调试过程中,应将所遇到的问题记录下来,分析产生的原因,提出解决的办法。6、撰写课设综合论文及答辩课件综合课程各步所得成果,对课程进行总结,撰写设计

4、论文,并撰写答辩 PPT,准备答辩。四、课程设计参考题目要求以下各课题都基于嵌入式 Linux 操作系统来设计。1、串口驱动程序的设计(字符设备驱动)(1)课程设计目的通过本课程设计, 了解串口驱动程序的架构及编程方法,掌握串口的使用方法。(2)课程设计要求本课题所设计的系统要求实现以下功能。 理解基于 Linux 的嵌入式系统交叉开发环境,对嵌入式系统的开发流程有详细的了解; 掌握开发工具链的构建方法,能 独立进行系统开发操作;3 掌握 Linux 的常用命令,在 linux 系统下能熟练的使用这些常用命令; 熟悉 linux 内核的知识以及原理,掌握定制 Linux 内核的方法; 基于 L

5、inux 操作系统,以及 GEC2440 实验箱一套,编写串口驱动程序,把串口挂载目标板上并通过串口进行通信。(3)课题人数:4 人2、USB 接口驱动程序的设计(块设备驱动)(1)课程设计目的掌握 Linux 系统下 USB 内核及 USB 主控制器驱动模块的配置及编译,了解Linux 系统下 USB 主机的软件结构,掌握在 GEC2440B 教学试验箱下的 U 盘的使用方法。 。2了解 Linux 系统下 USB 主机的软件结构。(2)课程设计要求本课题所设计的系统要求实现以下功能。 理解基于 Linux 的嵌入式系统交叉开发环境,对嵌入式系统的开发流程有详细的了解; 掌握开发工具链的构建

6、方法,能独立进行系统开发操作; 掌握 Linux 的常用命令,在 linux 系统下能熟练的使用这些常用命令; 熟悉 linux 内核的知识以及原理,掌握定制 Linux 内核的方法; 基于 Linux 操作系统,以及 GEC2440 实验箱一套,编写 USB 驱动程序,把 USB 挂载目标板上并进行文件读写操作测试。(3)课题人数:4 人3、有线网卡驱动程序的设计(网络设备)(1)课程设计目的4掌握基本的网络设备的驱动程序设计,熟悉常用网络服务,熟悉常用网络服务。(2)课程设计要求本课题所设计的系统要求实现以下功能。 理解基于 Linux 的嵌入式系统交叉开发环境,对嵌入式系统的开发流程有详

7、细的了解; 掌握开发工具链的构建方法,能独立进行系统开发操作; 掌握 Linux 的常用命令,在 linux 系统下能熟练的使用这些常用命令; 熟悉 linux 内核的知识以及原理,掌握定制 Linux 内核的方法; 基于 Linux 操作系统,以及 GEC2440 实验箱一套,编写有线网卡驱动程序; 学习 linux 内核中对网卡驱动进行配置,对根文件系统和应用程序的相应文件进行配置。(3)课题人数:4 人4、网络聊天程序的设计网络聊天程序是目前应用极为广泛的一种网络软件,对于方便人们的交流沟通非常有效,同时,作为一种典型的网络应用,编写网络聊天程序是学习基于 Linux的网络编程的有效方法

8、。(1)课程设计目的本课题设计是在使用 Linux 线程和 Socket 接口的基础上,编写网络聊天程序,从而掌握 Linux 应用程序开发的基本方法,练习 Linux 线程及 Socket 编程的方法,从而将所学知识融会贯通。(2)课程设计要求本课题所设计的系统要求实现以下功能。 实现在服务器的控制下,完成多人聊天,鉴于实验条件的限制,采用单机5多终端模拟方式。 在服务器端,使用多线程机制,为多个用户服务。 服务器能够对要求接入的客户端进行身份识别,完成聊天数据的转发,并能够将不同用户聊天记录存档。 要求给出编译所用到的 Makefile 文件。(3)课题人数:4 人5、守护进程的设计守护进

9、程是 Linux 中一类特殊的进程,是实现系统服务的常见方式,也是需要长时间运行于后台的用户程序所常采用的一种形式,因此,学习如何编写守护进程,对于全面掌握 Linux 程序设计具有重要意义。(1)课程设计目的本课程设计在掌握 Linux 进程的创建的基础上,掌握守护进程的实现方式,掌握文件的操作方法,还应掌握日志文件的操作方法。(2)课程设计要求 实现守护进程功能。 每隔 10 秒将当前运行的进程信息记录到日志文件中。 创建进程,将上述信息在屏幕上显示出来。 要求给出编译所用到的 Makefile 文件。(3)课题人数:4 人6、多进程程序的设计嵌入式系统软件的实时性是其非常重要的特性,采用

10、多进程设计可以提高系统的效率,增强系统的实时性,因此,掌握多进程编程,是学习嵌入式 Linux 必须达到的目标6(1)课程设计目的本课程设计通过设计多进程程序,掌握创建多进程的方法,掌握通过有名管道实现进程之间的通信,掌握进程中运行现有程序的方法。(2)课程设计要求本课题所设计的系统要求实现以下功能。 创建子进程 1 及子进程 2。 子进程 1 创建子进程 A、B,子进程 1 等待子进程 A、B 退出后退出。 子进程 A、B 之间通过有名管道 FIFO1 进行通信,实现生产者 -消费者功能。 子进程 2 创建子进程 C、D,子进程 C 运行“ls l”命令,子进程 D 通过有名管道 FIFO1

11、 作为消费者与进程 A 通信。 要求给出编译所用到的 Makefile 文件。(3)课题人数:4 人7、进程通信机制的应用进程管理是操作系统的重要功能,进程之间要完成相互之间的同步与互斥,实现相互之间的通信,Linux 中有多种进程间通信的方式,掌握进程间通信程序的设计,是开发多进程实时应用软件必须的目标。(1)课程设计目的通过本课程设计,掌握进程的创建方法,掌握消息队列、信号量等通信机制的实现方法。(2)课程设计要求本课题所设计的系统要求实现以下功能。 编写 3 段程序,分别使用 1 个终端运行它们,使用下面的通信机制完成所需功能。7 程序 1:接受用户输入的信息,包括:help、alarm

12、1、alarm2、quit ,并将这些信息分别发送给程序 2 和程序 3。 程序 2 与程序 1 通过消息队列 1 进行通信,当收到 help 信息后,打开帮助文件 helpfile,读取其中的内容,显示出来;当收到 quit 后,退出程序。 程序 3 创建 2 个子进程。程序 3 与程序 1 通过消息队列 2 进行通信,当收到 alarm1 时,通过信号量 1 通知子进程 1 报警(向屏幕输出报警信息) ;当收到 alarm2 时,通过信号量 2 通知子进程 2 报警(向屏幕输出报警信息)。 要求给出编译所用到的 Makefile 文件。(3)课题人数:4 人8、读者-写者问题一个数据文件可

13、以被多个进程共享,其中,有些进程要求读(reader 进程) ,而另一些进程要求对数据进行写或修改(writer 进程) 。允许多个 reader 进程同时读一个共享对象,因为读操作不会使数据文件混乱,但绝不允许一个 writer 进程和其他 reader 进程或 writer 进程同时访问共享对象。所谓 “读者-写者问题”是指保证一个 writer 进程必须与其他进程互斥访问共享对象的同步问题。(1)课程设计目的通过本课程设计,要求掌握 Linux 进程的创建方法,掌握文件的操作方法,掌握信号量的使用方法。(2)课程设计要求本课题所设计的系统要求实现以下功能。 创建一个文件 sharefil

14、e 作为共享数据存放的文件。 创建 2 个 reader 进程及 2 个 writer 进程,4 个进程共享使用文件sharefile。 使用信号量机制,编写“读者-写者问题”的实现代码,使得每个 writer 进程与其他进程互斥访问共享文件 sharefile。8 要求给出编译所用到的 makefile 文件。(3)课题人数:1 人9、过桥问题一座小桥(最多只能承重 2 个人)横跨南北两岸,任意时刻同一方向只允许一个人过桥,南侧桥段和北侧桥段较窄只能通过一人,桥中央一处宽敞,允许两个人通过或歇息。因此,过桥问题就是采用某种机制,使得两岸的人可以顺利地过桥,同时又能保证桥的安全性。(1)课程设

15、计目的本课题设计根据上述对于过桥问题的描述,使用 Linux 的信号量机制编程解决该问题。通过本课设掌握 Linux 进程创建的方法,掌握信号量使用方法。(2)课程设计要求本课题所设计的系统要求实现以下功能。 编写 2 段程序,程序 1 创建 3 个子进程,分别编号 A、B 、C,用于模拟从南岸前往北岸的人;程序 2 创建 3 个子进程,分别编号 C、D 、E,用于模拟从北岸前往南岸的人。 通过向屏幕输出语句模拟过桥过程,如输出“南往北-到桥中间”表示从南岸前往北岸的人到达了桥中间;输出“南往北-到达北岸”表示从南岸前往北岸的人到达了北岸。通过观察输出语句,可以发现过桥时是否发成冲突。 使用

16、Linux 的信号量机制,编写解决过桥问题的代码。 要求给出编译所用到的 makefile 文件。(3)课题人数:1 人10、和尚挑水问题某寺庙中有小和尚、老和尚若干人。庙内有一水缸,由小和尚提水入缸,供老9和尚饮用。水缸可容纳 30 桶水,每次入水、取水仅为 1 桶,不可同时进行。水取自同一水井,水井路窄,每次只能容纳一个水桶取水,设水桶个数为 5 个。和尚挑水问题就是使用某种机制,能够使得若干名老和尚可以顺利地喝到水,若干名小和尚之间能够有条不紊地往水缸中入水。(1)课程设计目的本课题设计根据上述对于和尚挑水问题的描述,使用 Linux 的信号量机制编程解决该问题。通过本课设掌握 Linu

17、x 进程创建的方法,掌握信号量使用方法。(2)课程设计要求本课题所设计的系统要求实现以下功能。 编写 2 段程序,程序 1 创建 3 个子进程,分别编号 A、B 、C,用于模拟 3名老和尚;程序 2 创建 3 个子进程,分别编号 C、 D、E,用于模拟 3 名小和尚。 通过向屏幕输出语句模拟过桥过程,如输出“目前水缸水量为 10 桶”表示目前水缸中有存水 10 桶;输出“小和尚取水成功”表示从水井中成功取到1 桶水;输出“小和尚倒 1 桶水到水缸中”表示小和尚将 1 桶水倒入水缸中。通过观察输出语句,可以发现执行过程是否发成冲突。 使用 Linux 的信号量机制,编写解决和尚挑水问题的代码。

18、要求给出编译所用到的 makefile 文件。(3)课题人数:2 人11、其它应用程序的课程设计:GEC2440 实验箱 Linux 基础应用实验 2.22.8:2.2 文件 IO 实验2.3 进程间通信实验2.4 多线程实验2.5 网络编程102.6 QTHelloWorld2.7 QT 跑马灯2.8 QT 聊天五、课程设计写作细则1、书写格式A4 纸打印,正文中任何部分不得超出边框。页面设置:上、下、左 2.5 厘米,右 2 厘米。采用单倍行距,标准字符间距,西文、数字等符号采用 times new roman 字体。题目用小 2 号黑体字如:U-BOOT 在嵌入式实验箱上的移植正文:小

19、4 号宋体字参考文献:5 号宋体字。图表字号:5 号宋体字2、标题层次全部标题层次有条不紊,整齐清晰。章节号采用阿拉伯数字编号方法,第一级为 1,2,3 等,第二级为 2.1,2.2,2.3 等,第三级为 2.1.1,2.1.1 等,如此类推。各层标题均单独占行书写第一级标题(章)用 3 号黑体字,居中。第二级标题(节)用 4 号黑体字,居左顶格。第三级标题用小 4 号黑体字,居左顶格。3、页眉页脚11页眉:奇数页书写“华南理工大学广州学院电信学院课程设计” ,偶数页书写“姓名:设计题目” ,均采用小 5 号宋体字。页脚:页码居中。4、参考文献书写格式按国标 GB7714-87顺序为:序号.著

20、者.文献题名.文献类型标识.出版地.出版者.出版年.起止页码。包括:设计用到的专业课、专业基础课课本,课程设计知道书,工具书,查阅、引用过的书籍、资料,电子文献等。5、公式公式应居中书写,有编号,编号用圆括号包括后放在公式右边行末。6、插图每幅插图应有图序和图题,图题 5 号字。六、课程设计内容要求1、封面及评分表封面格式内容见下页例。要求封面后的第一页为评分表。2、目录全部标题层次有条不紊,整齐清晰。章节号采用阿拉伯数字编号方法,第一级为 1,2,3 等,第二级为 2.1,2.2,2.3 等,第三级为 2.1.1,2.1.1 等, 标题后应对应开始页码。3、正文正文结构形式不做具体要求,内容

21、可根据不同题目自行调整,但至少包括:A、设计题目B、对设计题目的分析C、按照工程化开发方法对设计课题展开论述,包括需求分析、系统设计(包括概要设计和详细设计) 、编码、调试等。12D、需求分析部分必须给出功能需求分析、性能需求分析、课题任务目标、输入输出的要求、数据需求、系统运行环境等内容。E、系统设计部分包括概要设计和详细设计两个部分。概要设计要根据需求划分任务模块,给出系统的软件构架图;详细设计要针对每个软件模块设计函数原型,定义入口参数及出口参数,采用流程图或伪代码的形式给出每个函数的流程图,分析模块之间的关系及限定条件等。F、编码部分不应将代码全部贴到正文中,而应将代码放到“6、附录”

22、部分。在设计文档的正文中,可以给出函数之间的调用关系图,简要介绍编码中用到的关键技术等。G、调试及测试部分应论述所设计的调试及测试方案,调试及测试过程中遇到的问题,分析问题产生的原因,给出处理方法。4、总结设计说明书最后要给出设计总结,包括:对设计效果的分析、设计过程的心得体会、设计中发现的问题、关于课程设计的意见建议等。5、参考文献包括:设计用到的专业课、专业基础课课本,课程设计知道书,工具书,查阅、引用过的书籍、资料,电子文献等。6、附录在附录中列出主要程序清单,流程图可保留在正文中。嵌入式系统原理与设计课程设计专 业: 班 级: 学 号: 姓 名: 设计题目: 2015 年 12 月15课程设计评分表姓 名 班 级 学 号课设题目 指导教师评分项目 满分分值 得分封面 3页面布局 5目录格式 4图表质量 2文档格式页眉页脚 2内容完整性 8内容逻辑性 6设计文档(40分)文档内容内容正确性 10程序功能 25编程规范 7程序代码(40分)编程文档 8课题陈述 7问题答辩 10答辩(20 分)是否超时 3总评成绩16指导教师评语签名: 年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报