- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式教学大纲
文档目的
本文档从大方向上对嵌入式学院的教学方针、教学内容、进度计划做出指引,希望嵌入式学院的全体教员按照本指引安排教学计划,使全学院在教学方向和观念上保持一致。
阅读对象
嵌入式学院全体教师,嵌入式学院全体咨询师,学院相关领导。
概要
嵌入式教学以培养有扎实功底的软件工程师为主要目的,重点放在软件开发基础训练,强调动手能力,不追求过多地灌输软件知识。
根据80/20原理,汇文教学应该将重点放在20%的基础知识上,保证在有限的教学时间内让学员能够真真正正地理解和掌握到最基本、最简单、最常用的那部分技术知识,而不采用大学教学模式,一味追求知识面和教学进度。
汇文教学强调动手能力,教学过程中动手练习和课堂授课的时间比例应该在2:1甚至更高,即动手练习的时间占全部教学时间的2/3以上。希望学员通过自己动手,做到自己发现问题,思考问题,解决问题,从而能够对所应用的知识有深刻的理解和形成正确的软件开发的思维习惯。
整个教学过程大致可以分为3个阶段:基础阶段、提高阶段和扩展阶段。基础阶段强调软件开发基本功;提高阶段教授现代的软件开发技术;扩展阶段介绍当前市场上某些热点领域的背景知识(可选)。3个阶段的教学时间可以根据实际情况灵活地调整,本计划只给定一个指导时间。
4.基础阶段
4.1阶段目标
通过大量的编程练习,将学员代码量提高到10000行以上,使学员学会如何“编程”。
结合基础知识的教授和练习,让学员打下扎实的编程基本功。
4.2教学内容
实训模块基础阶段 实训时间
(6~7周) 实训内容 Linux开发环境 0.5周 (1)Linux基本命令
(2)vi,gcc, gdb, make
C语言(重点)
2.5周 (1)数据类型、运算符
(2)选择、循环控制
(3)数组 数组练习
(4)编译预处理、函数 函数练习
(5)指针
(6)指针练习
(7)结构体、共用体
(8)位运算 位操作,位域,大小端等
C++语言
1周 (1)类与对象的概念
(2)继承与重载
(3)C++ 其余语法
数据结构(重点)
2周 (1)线性结构(顺序表,链表,栈,队列,哈希表)
(2)排序
(3)查找(顺序查找,二分法)
(4)树(二叉树) 软件工程 1天 (1)瀑布模型中各个阶段及各个阶段的任务
项目
(穿插与每个模块之间)
2周 (1)智能俄罗斯方块
(2)战争模拟器
(3)动态内存管理(malloc)(必做)
(4)图书馆管理系统(可选)
(5)有限状态自动机实现
.....
提高阶段
5.1教学目标
学员能够对现代常用编程技术有一个基本的掌握
对嵌入式应用技术和嵌入式系统搭建技术有一个总体的掌握
5.2教学内容
提高阶段模块 实训时间
(8周) 实训知识点 相关实验和项目 IO编程 0.5周 (1)c库文件操作(普通)
(2)低级文件读写(重点)
多进程多线程(重点)
1周 (1)进程特点(普通)
(2)进程通信(重点)
(3)进程同步(重点)
(4)线程特点(普通)
(5)多线程同步(重点)
(6)死锁(普通)
(1)生产者与消费者模型实现(重点)
(2)死锁训练(可选)
网络编程
(重点)
1周 (1)以太网(普通)
(2)TCP/IP(普通)
(3)Socket编程(流式,数据报)(重点),raw socket(可选)
(1)基于socket的c/s结构的程序(重点)
(2)基于socket的udp程序(可选)
ARM体系结构
(重点)
1周 (1)嵌入式系统硬件结构综述(普通)
(2)嵌入式的软件系统综述(linux、 uC/os)(普通)
(3)ARM CPU体系结构(普通)
(4)嵌入式平台外围接口芯片(普通)
(5)嵌入式裸机汇编程序和C语言开发工具(普通)
(1)纯汇编的LED,Key,Beep,UART综合驱动(重点)
Embedded Linux
(重点)
2周 (1)Bootloader(u-boot)原理,启动流程及命令(普通)
(2)u-boot 编译,调整,烧录
(3)嵌入式Linux开发环境的搭建
(4)Root fs搭建(普通)
(5)简单嵌入式Linux应用程序开发及烧录(重点)
(6)内核配置编译及烧录(普通)
(7)linux驱动开发(普通字符设备,LED驱动,按键的中断驱动) (1)u-boot 编译,调整,烧录
(2)嵌入式Linux开发环境的搭建
(3)嵌入式Linux helloworld程序 (重点)
(4)内核配置编译及烧录
(5)linux驱动开发(普通字符设备,LED驱动,按键的中断驱
文档评论(0)