培训类别:全日班 学时:五个月
3G嵌入式C++就业班
培训特色
(1)VC++培训专家孙鑫老师、电信企业技术总监宋秉华,同时集12年功力联袂推出3G嵌入式C++就业培训,重磅出击;
(2)孙鑫老师独到高深的VC++理论水平 + 宋秉华老师深厚坚实的电信级项目经验,强强联合,合力打造理论+实战精品3G嵌入式C++培训;
(3)孙鑫老师原著《VC++深入详解》累计出版发行5万多册,12年研发功力,倾心打造精品3G嵌入式C++培训;
(4)中国移动SMS短信协议规范、中国移动LBS位置服务协议的参与起草者宋秉华老师,集12年企业项目研发经验和多年嵌入式开发经验,全真项目实战,以实力确保高薪就业;
(5)VC传统技术精品 + 3G最新技术 + ARM处理器 + Linux平台 + 全真项目实战,技术深、知识全、项目真、老师牛。
(6)国内首家性价比最高的嵌入式C++培训机构,免费送VC++课程,送3G课程,送Android课程,送ARM9开发板,全部费用仅需11800元。
(7)国内首家敢于宣称课程技术深度和实战项目质量不但高于任何一家培训机构,也高于国内中小软件公司的C++精品培训机构。
招生对象
参加培训的学员需要满足以下条件
(1)计算机操作熟练,逻辑思维好。
(2)大专以上学历。具有编程经验者,可以适当放宽学历限制。
(3)认真踏实、热爱编程、自律性强。
培养目标
教学方式
第一阶段:基础知识强化
一、深入计算机系统
计算机中数据的表示方法、计算机硬件的组成结构及各部件的功能介绍、计算机指令与程序,程序代码的组织结构、操作系统概念、机器语言到高级语言、计算机软件的运行过程及计算机启动原理、计算机网络。
二、嵌入式操作系统基础
嵌入式操作系统的基本概念;
Unix简介;
Windows Mobile简介;
Linux基础知识和系统安装;Linux常用命令,文本编辑器vi,简单shell脚本编程;
Linux开发环境基础:Gcc,Gdb,Make和Makefile; 嵌入式软件开发环境搭建与使用。
三、嵌入式C/C++语言
基本数据类型和运算;控制结构;内存分配、堆内存和栈内存;C字符串处理;数组与指针;指针类型、指针运算、函数指针、指针与引用、函数定义、函数调用、参数传递、递归;结构体与共用体;位运算和位结构;文件操作;预编译、条件编译;宏定义、对象宏和函数宏;类与对象;函数重载技术与运算符重载;类的继承与派生;虚函数与多态性;函数模板与类模版;输入/输出流和文件操作;模版机制、STL;预编译;异常处理;嵌入式C语言开发特性;GNC C拓展。
四、数据结构强化
线性表、栈和队列、链表、树和二叉树、索引表、索引树、排序。
五、阶段项目实战与测试
通过深入了解Linux系统调用功能,开发Linux环境下多任务编程,掌握网络socket接口调用的方法,开发终端程序,并熟练使用开发工具进行调试。
第二阶段:ARM高级开发
一、ARM体系结构
嵌入式系统处理器简介;ARM处理器体系结构;ARM芯片选型与外围硬件设计;ARM 操作系统(ARM Linux /WinCE/Anroid)
二、ARM内核结构
ARM应用内核;ARM嵌入式内核;ARM安全内核;ARM流水线结构;ARM寄存器结构;ARM工作方式;ARM存储器格式;ARM运行模式;ARM总线AHBA结构。
三、ARM指令系统
ARM指令系统概述;ARM指令集;ARM寻址方式;Thumb指令集;ARM/Thumb交互;ARM汇编语言编程;
四、ARM运行机制
ARM启动代码的基本流程;ARM程序的存储和加载;ARM启动代码的迁移过程;ARM启动代码的初始化流;ARM异常处理流程概述;ARM异常向量表;ARM未定义异常的特殊处理;AWI 软中断指令与系统调用。
五、ARM基本开发
ADS 集成开发环境;ARM编译器设置与使用;ARM链接器设置与使用;ARM调试器设置与使用;ARM内存地址重映射;ARM堆栈初始化;ARM段地址分配。。
六、阶段项目实战与测试
在ARM开发板上通过调用LCD驱动程序,实现汉字显示功能。
第三阶段:嵌入式Linux开发
一、嵌入式Linux构建
嵌入式Linux综述;典型bootloader(uboot、armboot、redboot);Linux内核编译和配置;根文件系统构建;嵌入式Linux开发工具介绍;Linux的gdb调试。
二、嵌入式Linux图形用户界面
Qt概述;Qt designer;Qt定制;Qt交叉编译。
三、嵌入式数据库系统
关系数据库基础与强化;SQL基础与强化;Sqlite嵌入式数据库编程。
四、嵌入式Linux进程编程
进程基本概念;线程基本概念;进程与线程;Posix线程;线程状态转换;线程同步;IPC高级编程;Qt多线程编程。
五、嵌入式Linux网络编程
TCP/IP协议;客户端服务器编程;Socket编程;Web服务器编程;Qt网络编程。
六、嵌入式Linux系统移植
Bootloader移植;交叉编译链;链接脚本分析;构建jffs2和cramfs文件系统;操作系统移植;应用程序移植;Linux板级移植;Linux平台级移植。
七、嵌入式Linux驱动开发
Linux内存管理;Linux设备管理;Linux文件系统;Linux设备驱动程序;Linux字符设备驱动程序;Linux fs_operation结构分析;Linux块设备驱动程序开发;Linux块设备驱动注册接口;Linux块设备驱动操作接口;Linux块设备驱动request队列;Linux块设备源码分析;Linux网络设备驱动程序;Linux input驱动开发;Linux下的MTD驱动;Linux LCD设备驱动程序开发;Linux USB设备驱动程序开发。
八、阶段项目实战与测试
实现一个真实完整的嵌入式项目,涉及到数据采集、网络通讯、图形用户界面显示以及嵌入式数据库存储系统等多种嵌入式Linux编程技术:
Linux的内核编译与裁剪
根文件系统的搭建与裁剪
A/D转换设备驱动程序
socket网络通信程序
sqlite和CGI应用程序
第四阶段:Andriod系统开发
一、Android操作系统概述
Android平台介绍;Android平台特性;Android平台架构;Android Navtive C/C++程序开发;Android NDK;Native开发方式与JAVA开发方式比较。
二、Android开发环境搭建
Android SDK介绍;Eclipse ADT插件;Android模拟器开发。
三、Android项目结构分析
资源管理(Resources)分析;drawable分析;layout分析;Activity分析;Intent分析;Service分析;Content分析。
四、Android UI设计
标准控件的使用;设计开发自定义控件;Layout布局的使用;触摸/按键(UI Events)事件处理方法;View,SurfaceView,Canvas,Paint类分析使用;显示文本以及显示特殊效果文本;绘图及显示图片;实现动画效果。
五、Intent Receive
Intent的作用和目的;属性讲解;Android定义解析Intent;AndroidManifest.xml深入分析。
六、Service
什么是Service,如何使用Service,Service的生命周期,BroadcastReceiver的使用。
七、Content Provider
SQLite介绍,创建Content Providers,使用Content Providers,使用URI语法进行增删改查。
八、Android高级应用开发
访问本地通讯录;网络连接的相关知识;流媒体的处理;URLConnection和HttpURLConnection的应用;
HttpClient的分析;本地文件浏览管理;音视频播放处理;Widget应用开发。
九、Android程序发布部署建
Android 调试桥;启用logcat日志调试;模拟器上安装删除软件;打包、签名和安装软件到设备。
十、Android底层架构分析
移植Android到新的硬件平台;需要支持Linux 操作系统的硬件平台架构分析;支持Android的Linux内核特性分析;为Linux内核增加Android特性;移植Android Debug Bridge调试接口;编写/移植Android内核驱动;硬件支持double frame buffer/page flipping;bionic库移植与优化;Dalvik Vm移植;第三方应用程序移植;建立Android移植开发平台;新的嵌入式处理器引入的Android相关问题;获得高效的Android工具链。
十一、Android移植
支持ARM11的Linux-2.6.28内核新特性简介;移植LCD double buffer驱动;移植触摸屏驱动;移植Android键盘驱动;移植Wifi驱动支持Android上网功能;移植电源管理驱动,支持Android电池管理;部署Android系统到实际ARM11平台。
十二、阶段项目实战与测试
通过对ITelephony接口和ISms接口以及AIDL在Android程序中的开发应用,开发一个打电话和发短信的程序。
第五阶段:移动通讯3G技术
一、移动通讯基础
无线通信网络的概念;GSM-UMTS-LTE的演进过程和网络体系结构;GSM电路域CSV业务流程;GPRS/EDGE分组域(PS)数据业务基本流程;IMS网络体系结构。
二、3G基础技术
什么3G;WCDMA简介;CDMA2000简介;TD-SCDMA简介;TD-SCDMA基本技术构成。
三、WAP技术
WAP协议;WAP建站系统业务模型;WAP建站系统业务流程;无线标记语言WML;Xhtml MP、WCSS。
四、SMS/MMS开发
SMS/MMS协议;SMS/MMS移动增值业务开发流程。
五、GPS/LBS手机定位开发
GPS卫星定位技术介绍;LBS位置服务介绍;手机定位系统开发的基本流程;手机定位系统的技术架构。
六、3G流媒体技术
流媒体技术介绍;3G流媒体技术概述;3G流媒体文件格式;移动手机视频客户端开发技术。
七、阶段项目实战与测试
开发一个手机定位服务,实现POI位置查询功能。
第六阶段:综合项目实战
一、无线视频采集监控项目
开发一个大型通用无线视频采集监控系统,由视频采集终端、视频服务器、手机客户端构成。视频采集终端内置摄像头模块、ARM处理器模块、3G模块、视频采集压缩模块。整个视频终端由嵌入式Linux系统控制,负责采集摄像头捕获的视频数据,交由视频压缩模块处理,并通过调用3G模块,通过无线网络发送到视频采集服务器,视频采集服务将采集到数据存储到数据库或文件系统,并提供视频播放服务。手机终端采用Android操作系统,通过WAP协议和流媒体协议,读取视频服务器上的视频信息,实现手机远程无线采集视频信息,监控移动目标,并在此基础之上派生出公交车视频监控、出租车视频监控等一系列应用。
二、GPS定位监控项目
开发一个GPS定位监控系统,由GPS终端设备、GPS服务器、GIS地图服务器构成。GPS终端设备采用ARM处理器,嵌入式Linux操作系统,内置GPS芯片和GSM芯片,采集移动目标的经纬度信息,并通过GSM芯片的GPRS功能发送到GPS服务器,并将位置信息交由GIS服务器展现,从而实现移动目标的定位监控。