第 一阶段、嵌入式Linuxr软件开发基础(C、数据结构、C++)
Unix/Linux基础 Unix/Linux操作系统Kernel和Shell; Unix/Linux文件系统简介;常用的Shell命令;vi的使用;环境变量;简单Shell脚本程序; 熟悉Unix/Linux系统的基本操作和基本命令,掌握vi编辑器的用法。
标准C基础 gcc编译器,数据类型,变量和常量;运算符和表达式,分支,循环;数组,函数,指针和字符串,结构,联合和枚举;指针应用,双指针,void指针,函数指针;C标准库,堆内存分配,I0等; 完全掌握C语言的本质,成为一名合格的C程序员,为以后的学习和工作打下坚实的基础。
C++编程 C++命名空间和数据类型;面向对象编程(00P),类和对象;构造器,拷贝构造,析构,new/delete;运算符重载; 面向对象编程(00P),封装、继承和多态;输入输出流;异常处理(Exception); 掌握C++语言特性,理解面向对象编程思想,掌握封装,继承,多态三大特性。掌握C++异常处理,掌握运算符重载。
数据结构和算法 数据结构的基本概念;线性结构;双向链表; 栈和队列;树和二叉树;顺序查找法和二分查找法;排序算法(冒泡、选择、插入、); 掌握基本数据结构,掌握集合、线性结构、树状结构的基本用法,掌握排序算法和查找算法。
模板和STL 模板基本概念(template);类模板和模板类; 函数模板和模板函数;类型推断;类模板和函数模板的特化; 智能指针的实现;标准模板库(Standard Template Library);STL容器、迭代器和算法; 掌握模板的基本概念和基本用法,掌握特化和偏特化,了解智能指针;掌握STL(标准模板库),熟练使用容器,迭代器,熟悉各种相关算法。
全真实训项目一:K-Score学生成绩管理系统、K-Emis企业信息管理系统、LinkedList的实现、K-Emis企业信息管理系统的重构
第二阶段、嵌入式Linux软件开发(Linux环境软件开发、QT、数据库)
Unix/Linux核心编程 Unix/Linux静态库和共享库的使用;Unix/Linux内存管理(malloc/brk/mmap);Unix/Linux文件和输入输出设备的系统调用(System
Call); Unix/Linux进程管理;Unix/Linux信号处理(signal);
Unix/Linux进程间通信(IPC);Unix/Linux网络编程(socket);Unix/Linux多线程开发;Unix/Linux多线程同步技术; 掌握Unix/Linux系统下C语言的开发,熟练使用常用的系统调用函数,掌握Unix/Linux下内存管理,进程管理、文件操作,掌握Unix/Linux信号,了解IPC,熟练编写网络多线程程序。
0racle数据库和数据库开发 0racle
SQL 查询语句;0racle SQL DML和事务处理语句;0racle SQL 建表和约束; 0racle的序列、视图和索引;
PL/SQL 存储过程;PL/SQL 函数(function);PL/SQL 游标和触发器; PL/SQL
异常处理(Exception);Pro*c 操作数据库;动态SQL; 掌握0racle数据库的基本知识,熟练使用SQL语句,掌握PL/SQL编程,掌握Por*c访问0racke数据库。
QT图形界面开发 QT 基础;QT 信号和槽;QT Creator的使用;QT Designer的使用; 了解QT,熟练使用QT Creator和Designer进行开发,理解信号和槽的概念和用法。
大型项目K-DMS电信计费系统 数据读取模块;数据匹配模块;数据发送模块;数据接收模块;数据保存模块;数据整合模块; 编写K-DMS电信数据采集系统。
全真实训项目二:K-Bank 银行账户管理系统、K-Chat 多线程聊天室、网上商城数据库设计、Pro*c连接0racle数据库、K-Lottery、K-Snake、K-Bank界面、K-DMS
第三阶段、ARM体系结构与编程(ARM体系结构、编程模型、指令集、裸板驱动开发)
ARM 体系结构与编程 QTP 嵌入式系统特征、发展、应用领域介绍。嵌入式系统开发的特点、软硬件开发系统构成,开发环境的建立。K-PAD平台特性介绍,K-PAD平台初体验。
ARM体系结构、ARM处理器系列与发展、ARM编程模型。 ARM指令集(分支指令、数据处理指令、加载存储指令等)GNU ARM 汇编程序设计; 熟悉嵌入式系统开发的特点、掌握嵌入式系统开发方法,掌握ARM体系结构与汇编程序设计,加深对之前学习的C语言的理解。
基于K-PAD平台的裸板驱动开发 基于K-PAD的GPI0使用方法,LED驱动编写。UART原理,基于K-PAD的UART驱动编写、调试、测试。
BootLoader原型设计,完成Shell框架,人机交互,命令编写。 NAND FLASH 特性与使用方法,基于K-PAD的NAND
FLASH驱动开 发、调试、测试。
内核引导条件,引导方法,编写Linux引导命令,完善Bootloader。ARM异常处理程序设计、K-PAD启动原理,升级方法 。
为Bootloader增加启动代码和内存初始化代码。MMU 原理和MMU地址转表制作, 软中断异常处理程序设计、开发、调试、测试; 掌握基于ARM的裸板驱动开发方法,使自己更深层次理解嵌入式系统开发的本质,通过项目实践,提高自身软实力。
全真实训项目三:从零编写嵌入式Linux引导程序(BootLoader)
第四阶段、嵌入式Linux系统软件开发(嵌入式Linux系统部署、嵌入式Linux驱动开发)
嵌入式Linux系统部署 嵌入式Linux系统构成、各部分的作用和关心。
嵌入式Linux系统开发环境建立, U-Boot特性、代码结构、编译方法、移植方法。
Linux内核特性、代码结构、编译方法。Linux内核移植方法、移植实践。 根文件系统组成,根文件系统制作方法。 tslib、qt移植部署方法; 掌握嵌入式Linux系统构成、Linux内核的编程方法,完成嵌入式Linux系统在K-PAD平台的部署以及Linux应用软件的移植部署。同时提高学员的动手能力,代码阅读能力,提高学员的综合素质。
Linux驱动开发 Linux内核模块化设计思想、设备类型、驱动的作用和编写方法;字符设备驱动程序设计、完成键盘驱动程序设计;字符设备驱动程序设计(原子变量、信号量、自旋锁、阻塞/非阻
塞、等待队列、定时器、中断、内核内存管理);字符设备驱动专题
I2C驱动程序设计;字符设备驱动专题之ADC驱动程序设计、温度场传感器驱动程序设计;字符设备驱动专题定时器、PWM驱动设计;字符设备驱动专题
RTC 驱动程序设计;输入子系统;显示子系统; 块设备驱动程序设计;网络驱动程序设计; 掌握Linux驱动架构和开发方法,通过完成具体案例的编码、调试、测试实战来增强学员的编码能力,解决问题的能力,使其有能力解决企业及开发问题。
全真实训项目四:基于K-PAD平台的智能家居控制系统驱动程序开发
第五阶段、嵌入式Linux软件开发项目实践(智能家居控制系统)
智能家居控制系统 人机交互模块 ;设备驱动模块;服务器模块;客户端模块;设备控制和信息采集模块;ZIGBEE接口 ;3G接口 ;摄像监控接口 ;系统升级模块 ; 自从1984年在美国康涅迪格州出现世界上幢智能建筑以来,智能家居就被人们所关注,比尔.盖茨在华盛顿的私人豪宅更是世界瞩目的智能建筑的经典之作。智能家居将给人们带来更加便捷、舒适、安全、快乐的生活环境,家、公司、车三者的无缝融合更让人们充满期待,智能家居系统正是在此背景下如火如荼的发展起来,随着计算机技术、互联网技术、移动互联网技术、物联网的发展,智能家居已经不再是富豪们专有系统,其走入普通家庭将是必然趋势。
全真实训项目五:综合实战训练