杭州汇文:
汇文3G嵌入式课程最主要的两个特色如下:
1、三阶段走,逐步深入,稳扎稳打;
实训阶段 | 实训内容 | 实训目标 | 实训项目 |
基础阶段1 4周 |
C语言&数据结构&Linux开发环境 1、Linux常用命令,GCC/GDB/makefile 2、嵌入式C (C基本语法、指针、关键字、头文件、大小端、类型、位操作、Volatile用法等) 3、基本数据结构知识(线性结构) |
1、良好代码编写能力 2、良好的代码风格 3、具备基本的工程思想、质量意识 4、精通C语言,代码量4000行以上 |
1、大量课堂练习 2、超市存取包系统/ATM机系统/银行叫号系统/战争模拟系统/俄罗斯方块(N选2) 3、拓展阶段大项目招标书发布 |
基础阶段2 3周 |
C++&数据结构&软件工程 C++设计模式和设计思想(类、对象、继承、重载、多态以及其他C++基本语法) 数据结构强化训练(树形结构、算法、排序等) 3、项目管理 |
1、精通数据结构,常用算法 2、了解并掌握C++经典设计模式 3、代码量4000行以上 4、具备软件工程师的基本编程能力,能胜任一般的应用软件开发岗位 |
1、大量课堂练习 2、Malloc 3、复杂图书管理系统 4、拓展阶段大项目竞标书完成 |
提高阶段 14周 |
Arm体系结构&Arm Linux&LINUX高阶编程 1、嵌入式硬件、软件详解 2、Arm CPU体系结构 3、嵌入式外围芯片接口 4、裸机开发工具 5、Embedded Linux 6、IO、进程、线程、IPC |
1、熟悉ARM体系,对基本的硬/软件结构熟悉,看懂操作手册和流水图 2、掌握Linux操作系统高阶编程 3、掌握嵌入式软件开发编程,能熟练开发并移植应用程序,并熟悉基本的调试方式和工具 4、具备一般的嵌入式软件工程师(应用)开发能力 |
1、大量课堂练习 2、Linux高阶编程项目 3、小型的嵌入式软件移植实验 4、拓展阶段大项目需求说明书发布并开始项目实施的前期规划 |
提高阶段2 4周 |
QT&网络编程&LINUX内核&UCOS/ii 1、QT基本界面&复杂界面 2、UCOS逐行详解 3、以太网、TCP/IP,SOCKET详解 4、块设备,字符设备,网络设备,自旋锁,信号量,内存管理,中断 |
1、熟悉QT编程,掌握基本的复杂界面绘制技巧 2、熟悉网络编程,掌握网络编程核心原理 3、熟悉UCOS/ii工作原理 4、了解linux内核配置,编译技巧 5、了解驱动编写、移植 6、具备嵌入式工程师所需的基本技能 |
1、大量课堂练习 2、复杂界面绘制 3、网络编程基本实验,如:raw_socket洪水攻击 4、基本的驱动、内核移植实验 5、基本完成拓展阶段项目实施必备的基本知识 |
拓展项目(招投标方式进行并结合嵌入式设计大赛) 1、网络安全,深度检测 2、海量数据存储、删除、压缩 |
1、贯穿整个学习过程,从基础阶段到提升阶段,全程按照工程招标模式进行 2、熟练使用常用开发管理工具,如:SVN |
1. VOIP电话 2. 网络MP3(流播放) 3. 点菜系统 |
|
拓展阶段 贯穿整个教学过程,最后项目实施时间为3周 |
3、云计算 4、音视频编解码技术 5、Raid阵列、DAS、SAN、NAS 6、无线传输 7、流播放 8、任何你感兴趣的嵌入式领域! |
3、采取模拟公司制,体验并掌握在公司研发组织内部工程师和管理者的角色关系 4、实践项目管理和软件工程 5、成长为合格的嵌入式工程师,月薪基本达到最低4000起 |
4、公交导程系统 5、网络瘦客户机 6、倒车雷达系统 7、GPS导航系统 8、HTTP深度检测防火墙系统 9、ARM视频监控系统(无线/有线) 10、硬件加速系统 。。。。。。 |
● 课程目标 (2012新版嵌入式linux就业培训课程体系介绍) |
|
|||
通过本课程的系统学习,可以使学员由浅入深地对嵌入式Linux系统全面学习,能够独立胜任嵌入式Linux应用开发、系统开发、驱动开发及基于Linux内核的Android应用和底层开发等多方面的工作。课程目标包括: 1. 熟练使用Linux操作系统 2. 精通Linux下C语言编程 3. 精通嵌入式Linux应用开发 4. 掌握ARM处理器平台及其接口硬件开发 5. 掌握嵌入式Linux下Bootloader的移植方法 6. 精通嵌入式Linux内核裁减移植及内核调试 7. 精通嵌入式Linux下常用接口的驱动开发 8. 了解嵌入式Linux在3G领域的典型应用-Android系统的应用开发 9. 掌握基于Linux内核的Android底层系统开发 10. 熟悉嵌入式Linux实际项目案例开发流程 |
序号 | 课程名称 | 课程内容 | 掌握要求 |
1 | Linux操作系统使用 | 本课程从零起点,讲解Linux操作系统的概念和安装方法,详细介绍Linux下的基本命令、管理配置和编辑器,包括VI编辑器,GCC编译器,GDB调试器和 Make 项目管理工具等知识。 | 精通 |
2 | 嵌入式Linux C语言编程 (C语言基础补习) |
C语言是嵌入式领域最重要也是最主要的编程语言,本课程将在学员C语言基础知识之上,通过大量编程实例重点讲解C语言的高级编程知识,包括函数与程序结构、指针、数组、常用算法、库函数的使用等知识,另外,本节还重点讲解数据结构的基础内容,包括链表、队列、栈、树、哈希表、图等内容。 | 精通 |
3 | Java编程基础 (Java基础补习) |
本课程主要让学员掌握Java语言基本语法,熟悉面向对象编程方法,熟悉Java中重要的核心API,为后续的Android应用编程打下基础。 | 熟悉 |
4 | 嵌入式Linux项目开发流程 | 本课程主要让学员从宏观了解嵌入式Linux开发环境搭建和项目开发流程,让学员建立起整体架构的概念,包括嵌入式产品需求分析和选型、硬件平台、移植、启动代码、驱动开发、系统部署等整个过程。 | 熟悉 |
序号 | 课程名称 | 课程内容 | 掌握要求 |
5 | 嵌入式 Linux应用编程 | 嵌入式Linux应用开发是嵌入式Linux中最重要的一部分,也是就业面最广的方向。本课程的主要目标是精通嵌入式Linux下的程序设计,精通嵌入式Linux开发环境,强化学员对Linux应用开发的理解和编码调试的能力,包括系统编程、文件I/O、多进程和多线程、网络编程、GUI图形界面编程、数据库。 | 精通 |
6 | Android应用编程 | 本课程主要让学员掌握Android应用编程的主要方法,熟悉Android中的主要组件和常用图形界面组件,熟悉Android中的事件处理方法等,并完成一个Android平台音乐播放器的编写。 | 熟悉 |
7 | ARM处理器编程 | ARM是嵌入式领域最主要的CPU处理器,了解ARM处理器的基础知识将为后面课程的底层开发打好坚实基础,本课程内容包括ARM处理器体系结构、编程环境、指令集、寻址方式、调试、汇编和混合编程等方面的内容,为后面移植课程的学习打好基础。学完此课程学员可获得ARM公司全球统一授权培训证书。 | 熟练 |
8 | ARM硬件接口开发 | 本课程重点介绍ARM的常用接口开发及硬件电路设计基础(包括IO、串口、看门狗、实时时钟、SPI、IIC、扫描键盘、FLASH操作等),为以后的设备驱动的学习打好基础。 | 熟练 |
9 | 嵌入式Linux系统开发 | 系统开发是嵌入式Linux底层开发必备的基本技能,本课程将教会学员在硬件电路板做好的情况下,如何从零开始搭建嵌入式Linux运行环境,内容包括内核裁减、内核移植、交叉编译、内核调试、启动程序Bootloader编写、根文件系统制作和集成部署Linux系统等整个流程。 | 熟练 |
10 | 嵌入式Linux内核开发 | 本课程是驱动开发的基础课程,深入内核细节,了解Linux相关运行机理,为后面的驱动开发打好理论基础,内容包括内核源码结构、内存管理、进程管理、中断管理、系统调用、内核同步、时钟和定时器管理、信号、调度、进程间通信、文件系统和I/O设备管理等方面的内容。 | 熟悉 |
11 | 嵌入式Linux驱动开发基础 | 介绍嵌入式Linux驱动开发相关概念及开发流程,了解驱动涉及到的关键技术点,并重点学习字符设备驱动开发,包括串口、I/O、看门狗、实时时钟、SPI、IIC、扫描键盘、A/D转换、定时器等接口的驱动开发,为后续深入学习驱动高级开发打好基础。 | 熟练 |
12 | 嵌入式Linux驱动高级开发 | 驱动开发是嵌入式Linux开发难度最高的内容,也是目前嵌入式行业最紧缺的人才之一。有了前面课程知识的铺垫,本课程将重点讲解嵌入式Linux下常用接口驱动的编写方法,内容包括: 1、flash驱动:掌握在linux环境下驱动常见flash存储器(nor flash、nand flash); 2、块设备驱动:掌握块设备驱动的原理、学会ramdisk的编写; 3、网卡驱动:掌握网卡设备的编写原理、能够熟练移植各种网卡驱动。在对网卡硬件寄存器熟悉的基础上,有能力为其编写出完善的网卡驱动; 4、液晶驱动:掌握frambuffer驱动的原理。有能力在有控制器的嵌入式平台上参考液晶手册实现各种常见液晶驱动; 5、sd卡驱动:掌握sdio接口操作,熟悉sd卡驱动驱动的原理; 6、usb设备驱动:了解usb主机设备驱动的结构及编程方式。 |
熟练 |
13 | 综合案例的实战训练 | 在第二阶段课程中,为了帮助学员充分有效地掌握核心知识点在企业中的具体应用,并开始逐步按照企业需求、流程和规范进行实战训练,在嵌入式Linux应用开发、系统内核开发的课程讲授过程中全部采用项目驱动的方式,将来自合作企业的全真案例贯穿于课程中。通过这种方式带领学员分析企业岗位的真实技术需求,进行案例演练,从而快速掌握相关的技能和开发技巧。 | 精通 |
序号 | 课程名称 | 课程内容 | 掌握要求 |
14 | 嵌入式Linux在3G领域的典型应用--3G手机Android操作系统 | 介绍嵌入式Linux在3G领域的典型应用Android系统,了解Android系统如何由嵌入式Linux衍生出来的,以及Android系统和嵌入式Linux系统差异化,了解Android系统的体系结构、开发特点以及关键技术点,并重点学习ARM对Android系统的支持现状,掌握ARM平台上的Android相关开发工具和解决方案,重点讲解Android系统在ARM平台上的移植过程,介绍Android系统底层驱动开发和嵌入式Linux驱动开发的差异化,最后介绍ARM+Andriod平台组合的行业应用前景,使学员全面了解Android系统的开发过程及发展前景。 | 熟悉 |
15 | Android底层系统开发 | 通过本课程的学习,学员可以全面认识和了解Android内核的框架,并以此为基础掌握学习Android内核、分析阅读Android内核源码的方法,真正地迈过那道无形的门坎。掌握、分析、钻研某个子系统在Android内核中实现机制的方法,并了解Android内核中的进程管理、内存管理、文件系统。了解如何参与Android内核的开发和测试,以及一些常用的调试手段和工具。通过对其框架,结构的分析,实现将Android应用到任何移动硬件平台上,支持各种硬件设备、应用于多种行业。 | 熟悉 |
16 | 嵌入式Linux项目实践 | 课程将通过一个真实完整的项目案例,让学员了解真实项目的开发流程,让学员知道如何将所学知识应用到项目开发中。本课程将模拟真实项目的管理过程,培养学员项目团队协同开发能力,项目文档编写能力和新知识的学习能力,为下一步就业做好知识上和心理上的充分准备。目前学员在嵌入式学院可完成的真实项目包括:基于GPRS的远程安防监控系统、车载导航系统、3G智能机器人、食品仓储物联网系统、基于Android的智能家居系统及商用POS机、汽车导航GPS、个人娱乐系统PMP等,学员可在嵌入式学院学习期间独立完成其中一个项目。(真实学员项目实战案例演示) | 熟练 |
课程模块 | |||
第一阶段:(信息管理系统为验收项目) | |||
实训主题 | 实训内容 | 实训目标 | |
Linux开发环境、开发规范培训 | Unix开发环境 | Unix系统原理、Unix C开发环境、Unix常用文件目录管理命令与网络命令,Vi编辑器 | 能使用并管理Unix操作系统,建立并熟悉Unix /Linux C开发环境 |
Oracle数据库管理 | Oracle数据库管理 | Oracle 10数据库原理、SQL语句、数据库表、视图及索引 | 掌握数据库基本DBA操作 熟练掌握SQL语句与编程 能熟练使用SQL语句快速操作企业级数据库 |
嵌入式开发语言 |
标准C编程 | 数据类型,控制语句,自定义数据类型,模块化程序设计,指针 | 熟练掌握c基础语法,函数的编写和调用,以及标准C函数库 |
标准C++编程 | C++面向对象,运算符号重载,模板,异常处理 |
掌握C++语法,掌握理解面向对象的编程思想与应用 | |
数据结构与算法 | 链表,栈,队列,哈希表,二叉树等容器实现 常用搜索算法与排序算法实现 | 掌握各种基本数据结构的实现,了解常用算法,并能在软件开发中灵活应用。 | |
STL | IO,异常处理,STL容器、算法,迭代器,内存分配器 |
掌握标准C++的IO输入输出,编写健壮稳定的应用,并能应用STL处理企业数据。 | |
阶段项目 | 基本信息管理系统 | 能独立使用C语言开发应用 |
第二阶段:(电信计费采集与整合系统为验收项目) | |||
实训主题 | 实训内容 | 实训目标 | |
Unix/Linux应用开发 |
Unix/Linux系统高级编程 | Unix/Linux内存管理,文件与目录管理,IO,进程创建,进程间通信,多线程 | 掌握C++语法,掌握理解面向对象的编程思想与应用 |
Unix/Linux系统网络编程 | UDP与TCP网络通信,常见网络应用协议编程:HTTP协议,FTP协议 | 掌握常见网络通信方式,掌握常用网络应用协议,了解网络安全编程技术 | |
QT图形界面编程 | QT面向对象结构,QT信号与槽,QT对话框编程,QT菜单,QT常用控件,QT设计器与资源 | 掌握QT图形界面编程 | |
Pro*C/C++编程 | Pro*C/C++程序结构,宿主变量与指示器变量,SQL通信区,Pro*C/C++异常处理,事务处理,使用游标,动态SQL语句,LOB对象处理 | 掌握Oralce数据库的Pro*C/C++数据库连接技术 | |
阶段项目 | 网络爬虫:简易搜索引擎的实现 | 掌握基本的应用软件开发能力 掌握程序的分析设计思路 独立完成简单应用软件的编码 |
第三阶段: | |||
实训主题 | 实训内容 | 实训目标 | |
嵌入式ARM驱动开发 | ARM微处理器 | ARM体系结构 指令分类,寻址方式、指令集、存储系统、异常中断处理 |
了解ARM体系结构与设计原理 熟练掌握各种外设的工作原理与驱动机制。 |
阶段项目 | 工装测试软件制作 | ||
嵌入式系统及移植 | 嵌入式开发环境搭建 嵌入式Linux基本概念(资源分配,启动方式) Bootloader工作原理 Uboot制作烧写 内核制作与烧写 根文件系统制作与烧写 SQLite数据库移植 Web cgi移植 Qtopia移植与3g手机(Qt phone)开发介绍 |
掌握嵌入式开发环境搭建 熟练使用uboot命令 掌握嵌入式系统boot, kernel。rootfs制作 |
|
阶段项目 | 嵌入式web服务器制作 | 掌握嵌入式系统的制作方法 制作基本的嵌入式应用 |
|
Linux驱动 | Linux内核模块 字符设备 Linux阻塞与非阻塞,异步和同步实现块设备 网络设备 液晶屏驱动 音频驱动 视频驱动 |
掌握Linux内核制作 掌握驱动的开发流程 熟练开发常见设备的驱动 |
|
项目阶段 | Led灯控与button按键驱动 | 掌握各种驱动的原理与实现 能开发嵌入式设备驱动 |
|
嵌入式ARM应用开发 |
嵌入式应用 | QtEmbedded的安装编译 QT移植,QtEmbedded常用组件,2D绘制 嵌入式环境下socket编程 JPEG与MPEG编解码,原理与应用 文件系统制作 |
掌握嵌入式GUI开发 掌握嵌入式网络通信编程 掌握图像视频等多媒体应用开发 |
阶段项目 | MP3播放器 | ||
嵌入式3G智能手机开发 | 嵌入式3G智能手机 | qtopia开发 | qtopia的应用可以移植到iphone的IOS上 |
iphone应用开发 | 视图控制器,文件IO,SQLite数据库, 视图绘制,图像绘制,音频播放与录制, 事件,Multi-Touch及手势 |
||
阶段项目 | 3G手机游戏 | ||
项目实战 |
项目实施 | 可选择的项目 1)点菜手持终端 2)视频点播手持终端 3)带短信功能的温度与火警报警系统 4)汽车智能报警系统 5)带短信功能的入侵检测监控系统 6)3G手机组装 7)嵌入式DVS(模拟系统) |
能提出嵌入式应用解决方案 能选择适当的电子模块 能开发相应的模块设备驱动 掌握独立嵌入式开发的能力 |