资源描述
嵌入式软件开发教学大纲
一、课程概况所属专业:计算机科学与技术开课单位:数学计算机科学学院
课程类型:专业方向课程课程代码:07492090开课学期:6学分:2
学时:课堂讲授16+实验核心课程:否32+课外自主3
拟使用教材:
陈文智.嵌入式软件开发.北京:高等教育出版社.20152国内(外)现有教材:
[1]周立功.ARM嵌入式系统软件开发实例(一).北京:北京航空航天大学 出版社.2004.1
[2]何先波,李薇,罗建.嵌入式系统软件开发技术实验教程.北京:清华大学 出版社.2011.7
[3]姜先刚,袁祖刚.嵌入式Linux系统开发教程.北京:电子工业出版社.2016.8 学习参考资料
[1]何坚.嵌入式软件开发技术.北京:科学出版社.2014.9
[2]华清远见嵌入式学院
[3]华清创客学院.
[4]嵌入式培训I . :〃 l/qianrenshi.html#bbdss-qrs二、课程描述
本课程为计算机科学与技术专业嵌入式系统与物联网方向课程。学习嵌入式 软件开发的基本知识、方法和技术,内容包括:嵌入式软件开发概述,嵌入式软 件开发环境,嵌入式软件编程,嵌入式软件调试,Boot Loader程序设计,嵌入 式系统级软件设计(包含嵌入式操作系统内核设计、嵌入式文件系统设计、嵌入 式驱动程序设计和嵌入式数据库设计),嵌入式GUI及应用程序设计,嵌入式程 序代码优化,嵌入式软件测试,以及嵌入式应用程序创新设计。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:设计性实验。
实验八:嵌入式程序代码优化
(授课时间:第六学期第十四周) 教学目标:掌握嵌入式程序代码优化方法。
主要内容:嵌入式程序代码优化。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:验证性实验。
实验九:嵌入式软件测试
(授课时间:第六学期第十五周) 教学目标:掌握嵌入式软件测试方法。
主要内容:嵌入式软件测试工具使用。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:验证性实验。
实验十:嵌入式应用程序创新设计
(授课时间:第六学期第十六周) 教学目标:完成嵌入式应用程序创新设计。
主要内容:设计一个嵌入式应用系统。
学 时:4学时。
教学方法:演示法/讲授/现场指导。
实验类型:设计性实验。
1、课程教学中可随嵌入式软件开发技术的开展进行内容调整。
2、可适当布置课外自主学习内容。.
三、课程目标
了解嵌入式软件的组成要素与结构,掌握嵌入式软件开发的思想和方法,掌 握嵌入式软件开发的过程和技巧,熟练使用相关嵌入式软件开发工具,具备初步 分析问题和解决问题的能力,能够从事嵌入式软件开发。
四、教学要求
依据本课程的性质、目的及任务,教学基本要求是紧扣多媒体教学、课后答 疑、实验几个主要环节,要求学生系统地了解、熟悉和掌握嵌入式软件开发基本 方法,能开发嵌入式软件系统。
五、考核方式及要求
为实现课程教学目标,本门课程采用过程性考核和期末考核结合的方式进行 考核。过程性考核占总成绩70%,其中:考勤占10%,随机点到,每人不少于3 次,其中无故缺席1次,按无考勤成绩计算;课程实验9次,占70%,实验时间 和内容根据教学进度由教师安排;课程作业3次,按批改成绩折算,占20%。期 末考核占总成绩30%,完成一个嵌入式应用系统设计,为开卷考试。
六、课程内容课堂教授
第一章:嵌入式软件开发概述(授课时间:第六学期第一周)
教学目标:了解嵌入式系统的历史与现状、嵌入式系统的特点和应用领域和开展 方向;掌握嵌入式软件的组成与特点;了解嵌入式软件的开展趋势; 掌握嵌入式软件开发流程和嵌入式软件的开发管理。
教学重点:嵌入式软件的组成与特点;嵌入式软件开发流程和嵌入式软件的开发 管理。 教学难点:嵌入式软件的组成。
学 时:课堂教学1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)嵌入式系统概述;(2)嵌入式软件的组成与特点;
(3)嵌入式软件的开展趋势;(4)嵌入式软件开发流程;
(5)嵌入式软件的开发管理。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成嵌入式软件的组成与特点,嵌入式软件开发流程和嵌入式软件的 开发管理等知识点练习题。
第二章:嵌入式软件开发环境(授课时间:第六学期第二周至第三周)
教学目标:了解嵌入式软件开发特点和嵌入式软件开发模式;掌握宿主机环境、 目标机环境和交叉编译工具链。
教学重点:交叉编译工具链。
教学难点:交叉编译工具链。
学 时:课堂教学2学时,课外自主学习时间不少于1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)嵌入式软件开发模式;(2)宿主机环境;
(3)目标机环境;(4)交叉编译工具链。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成嵌入式软件开发模式、交叉编译工具链等知识点练习题。
第三章:嵌入式软件编程(授课时间:第六学期第四周至第五周) 教学目标:了解嵌入式汇编语言基础、嵌入式高级编程知识,掌握嵌入式开发工 程;了解嵌入式汇编编程技术;掌握嵌入式高级编程技术;掌握高级 语言与汇编语言混合编程。
教学重点:嵌入式开发工程;嵌入式高级编程技术;高级语言与汇编语言混合编 程。
教学难点:高级语言与汇编语言混合编程。
学 时:课堂教学2学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)嵌入式编程基础;(2)嵌入式汇编编程技术;
(3)嵌入式高级编程技术;(4)高级语言与汇编语言混合编程。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成嵌入式开发工程,嵌入式高级编程技术,高级语言与汇编语言混 合编程等知识点练习题。
第四章:嵌入式软件调试
(授课时间:第六学期第六周)
教学目标:了解GDB调试器;掌握GDB远程调试、KGDB内核调试、网络调 试工具tcpdump; 了解典型嵌入式集成开发环境。
教学重点:GDB远程调试;KGDB内核调试;网络调试工具tcpdump。
教学难点:GDB远程调试;KGDB内核调试;网络调试工具tcpdump。
学 时:课堂教学1学时,课外自主学习时间不少于1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)GDB调试器;(2)远程调试;
(3)内核调试;(4)网络调试;
(5)典型嵌入式集成开发环境。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成GDB远程调试,KGDB内核调试,网络调试工具tcpdump等知 识点练习题。
第五章:BootLoader程序设计(授课时间:第六学期第七周)
教学目标:理解Boot Loader基础知识;了解Boot Loader典型结构;掌握Boot Loader基本设计。
教学重点:Boot Loader基础知识;Boot Loader基本设计。
教学难点:Boot Loader基本设计。
学 时:课堂教学1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1) Boot Loader基础知识;Boot Loader 典型结构;
(2) Boot Loader 基本设计。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成Boot Loader基础知识等知识点练习题。
第六章:嵌入式系统级软件设计
(授课时间:第六学期第八周至第九周)
教学目标:理解嵌入式操作系统内核设计;掌握嵌入式文件系统设计、嵌入式驱 动程序设计;了解嵌入式数据库设计。
教学重点:嵌入式操作系统内核设计;嵌入式文件系统设计、嵌入式驱动程序设 计。
教学难点:嵌入式操作系统内核设计。
学 时:课堂教学2学时,课外自主学习时间不少于1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)嵌入式操作系统内核设计;(2)嵌入式文件系统设计;
(3)嵌入式驱动程序设计;(4)嵌入式数据库设计。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成嵌入式操作系统内核设计,嵌入式文件系统设计,嵌入式驱动程 序设计等知识点练习题。
第七章:嵌入式GUI及应用程序设计(授课时间:第六学期第十周至第十一周)
教学目标:了解嵌入式GUI设计需求和嵌入式GUI设计原那么;掌握嵌入式GUI 体系结构设计;了解基于主流GUI的应用程序设计。
教学重点:嵌入式GUI体系结构设计。
教学难点:嵌入式GUI体系结构设计。
学 时:课堂教学1学时,课外自主学习时间不少于1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)嵌入式GUI设计概述;(2)嵌入式GUI体系结构设计;
(3)基于主流GUI的应用程序设计。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成嵌入式GUI体系结构设计等知识点练习题。
第八章:嵌入式程序代码优化
(授课时间:第六学期第十二周)
教学目标:了解嵌入式程序代码优化基本方法。
教学重点:嵌入式程序代码优化基本方法。
教学难点:嵌入式程序代码优化基本方法。
学 时:课堂教学1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)嵌入式程序代码优化概述;(2)提高代码效率;
(3)减少代码尺寸;(4)有效使用内存;
(5)降低代码能耗。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成嵌入式程序代码优化基本方法等知识点练习题。
第九章:嵌入式软件测试
(授课时间:第六学期第十三周至第十四周)
教学目标:了解嵌入式软件测试基础知识;掌握静态测试技术、白盒测试技术、 黑盒测试技术等嵌入式软件测试技术;了解测试与分析工具。
教学重点:嵌入式软件测试技术。
教学难点:嵌入式软件测试技术。
学 时:课堂教学2学时,课外自主学习时间不少于1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)嵌入式软件测试基础;(2)嵌入式软件测试技术;
(3)测试与分析工具。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:完成嵌入式软件测试技术等知识点练习题。
第十章:嵌入式应用程序创新设计(授课时间:第六学期第十五至第十六周)
教学目标:掌握设计任务和设计过程。
教学重点:设计过程。
教学难点:设计过程。
学 时:课堂教学1学时。
教学方法:讲授法、演示法、讨论法。
主要内容:(1)设计任务;(2)设计过程。
学习方法:听讲记录,小组讨论,上网调研。
课后作业:。
实验
实验一:建立开发团队和制定管理规范
(授课时间:第六学期第一周至第二周) 教学目标:学会建立开发团队和制定管理规范。
主要内容:建立开发团队和制定管理规范。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:演示性实验。
实验二:开发环境构建
(授课时间:第六学期第三周至第四周) 教学目标:掌握开发环境构建方法。
主要内容:开发环境构建。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:验证性实验。
实验三:嵌入式软件编程技术
(授课时间:第六学期第五周至第六周) 教学目标:掌握嵌入式软件编程技术。
主要内容:汇编和C语言等嵌入式软件编程技术。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:验证性实验。
实验四:调试技术演练
(授课时间:第六学期第七周至第八周) 教学目标:掌握调试技术。
主要内容:调试技术演练。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:验证性实验。
实验五:设计与实现Boot Loader
(授课时间:第六学期第九周至第十周) 教学目标:掌握Boot Loader设计与实现方法。
主要内容:设计与实现Boot Loader。
学 时:2学时。
教学方法:演示法/讲授/现场指导。
实验类型:验证性实验。
实验六:嵌入式操作系统内核与驱动程序
(授课时间:第六学期第十一周至第十二周) 教学目标:掌握嵌入式操作系统内核与驱动程序编制方法。
主要内容:编制嵌入式操作系统内核与驱动程序。
学 时:4学时。
教学方法:演示法/讲授/现场指导。
实验类型:综合性实验。
实验七:嵌入式GUI应用设计
(授课时间:第六学期第十三周) 教学目标:掌握嵌入式GUI应用设计。
主要内容:嵌入式GUI应用设计。
展开阅读全文