时间安排
|
上午:9:00-11:40
下午:14:00-17:30
晚自习(辅导答疑):19:00-21:30
|
*阶段 Linux软件开发 (Linux软件工程师/Linux系统工程师) 总课时:5周 |
实训模块
|
课程内容
|
Linux基础
|
Linux操作
Linux的基本命令,VI编辑器,shell编程
Linux编程方法及艺术
开发环境使用,各种配置工具,GNU 编译工具GCC,调试器GDB和Makefile开发工程管理工具
|
Linux下编程语言、算法、数据结构强化
|
Linux下C编程强化
自定义数据类型,模块化程序设计,深入探讨指针,文件处理,标准C函数库的使用
数据结构与算法
链表,栈,队列,树,哈希表
查找及排序算法
|
标准C++编程强化
面向对象程序设计,复制控制,继承和多态,运算符重载,模板及模板类,IO,异常处理
STL标准模板库使用
容器,迭代器,算法,内存分配
|
阶段项目(锻炼良好的编程风格及编程技巧)
图书管理系统(Linux下C语言实现)
产品追踪系统(标准C++及STL应用)
|
第二阶段 ARMCortex系列体系结构及外围接口(*开设) (嵌入式ARM软件工程师/ARM底层开发工程师) 总课时:2周 |
实训模块
|
课程内容
|
Cortex内核架构及外围电路原理
|
内核架构
寄存器,存储器管理,中断,定时器
外围接口
USART,SPI,LCD,OLED,FLASH,SD
阶段项目
远程数据采集及控制系统
|
第三阶段 Linux系统及网络编程 (Linux系统开发工程师) 总课时:3周 |
实训模块
|
课程内容
|
Linux系统编程
|
Linux系统编程
信号,系统调用,管道,FIFO,消息队列,共享内存等内容。
文件 I/O编程
文件描述符,文件读写接口,原子操作,阻塞与非阻塞IO等
多任务和多线程编程
进程标识,用户标识,fork与 vfork,多线程概念/线程同步
|
Linux网络编程
|
网络编程
网络基本概念,套接口编程,网络字节次序,Client/Server 结构,UDP 编程
阶段项目:
网上购票系统
|
第四阶段 嵌入式Linux高级编程 (Linux驱动工程师/嵌入式Linux应用开发工程师) 总课时:6周 |
实训模块
|
课程内容
|
嵌入式Linux系统构建
|
BOOT创建
Bootloader核心架构,U-BOOT源码分析,U-BOOT移植
Linux内核构建
Linux内核的配置,Linux内核裁剪及移植
文件系统的构建
嵌入式文件系统理论,Linux下虚拟文件系统,用busybox等工具制作文件系统
|
Linux下驱动开发
|
字符驱动
混杂字符驱动,Led驱动,温度传感器驱动,键盘驱动的编写
块设备驱动
Nandflash驱动移植
网络驱动
CS8900网卡驱动移植
|
Linux下GUI开发
|
QT creator集成开发环境使用
Qmake,assistant,designer,moc等工具的使用,QT交叉开发环境的建立,Qte库的编译及移植,交叉编译工具链的集成
QT开发
QT库使用(QtGui,QtSql,QtNetWork,QtXml等),QT常用组件,信号和槽,布局管理
|
综合项目(团队开发)
|
基于USB摄像头的无线视频数据采集及传输
基于QT的无线点菜系统
基于SD卡/U盘的音乐播放系统
基于QT的车载娱乐终端
智能家居综合应用终端
自选大项目:开源社区自选项目,主要根据开源嵌入式社区目前的项目研发状况,由学员自选项目参加,经项目导师审核后确定
|