不断探索、改革,才能持之以恒
课程周期:5个月
课程目标:本课程旨在培养嵌入式驱动研发工程师,能从事嵌入式驱动开发、Android底层开发、多平台驱动开发、Linux 应用程序开发等相关工作。
课程特色:
★行业定制优质课程
紧跟国内外行业应用热点,顺应企业需求。全面定制行业优质课程,课程技术点全面深入,全面提升学员们的综合能力,打造行业优质的复合型人才。
★高级讲师团队面授指导
核心教学团队汇聚CSDN客座讲师、四川省物联网协会*讲师,成都市高新人才,四川省软件行业会员等技术大牛。具有数十年研发教学经验的团队倾力指导,培训期间全程面授,助攻学员击破每个难题。小班制教学不留死角,每一位学员均接受一对一指导。
★企业制项目研发管理
依照名企招人需求定制化培养学习路径,采用员工制进行管理,打造企业实用性复合人才。提供优质实习项目,深入一线实践其中,一对一指导每个环节,为企业面试提供强硬的敲门砖。
★完善的就业服务体系
稳定优质的就业筛选渠道,依照岗位需求培养专人专技,为企业输送专业技术人才,已为华为、中兴、腾讯等企业 定向输送多名技术人员。入学签订就业协议、*保证学员就业,并提供终身就业指导 。
★不定期邀请世界500强企业技术骨干进行技术热点、难点,行业资讯、动态分享
不断探索、改革,才能持之以恒
【项目一】:人脸识别系统
人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部识别的一系列相关技术,通常也叫做人像识别、面部识别。
"人脸识别系统"集成了人工智能、机器识别、机器学习、模型理论、*系统、视频图像处理等多种专业技术,同时需结合中间值处理的理论与实现,是生物特征识别的*新应用,其核心技术的实现,展现了弱人工智能向强人工智能的转化。
人脸识别产品已广泛应用于金融、司法、军队、公安、边检、*、航天、电力、工厂、教育、医疗及众多企事业单位等领域。如:人脸识别门禁考勤系统,人脸识别防盗门,电子护照及身份证,自助服务,信息安全等。
【项目二】:5G(NB-IoT)物联网环境监测系统
窄带物联网(Narrow Band Internet of Things, NB-IoT)成为万物互联网络的一个重要分支。NB-IoT构建于蜂窝网络,只消耗大约180KHz的带宽,可直接部署于GSM网络、UMTS网络或LTE网络,以降低部署成本、实现平滑升级。
NB-IoT是IoT领域一个新兴的技术,支持低功耗设备在广域网的蜂窝数据连接,也被叫作低功耗广域网(LPWAN)。NB-IoT支持待机时间长、对网络连接要求较高设备的高效连接。据说NB-IoT设备电池寿命可以提高至至少10年,同时还能提供非常全面的室内蜂窝数据连接覆盖。
现阶段,NB-IoT垂直行业主要集中交通行业、物流行业、卫生医疗、商品零售行业、智能抄表、公共设施、智能家居、智能农业、工业制造、企业能耗管理、企业安全防护等。
【项目三】:航拍无人机
无人机航拍摄影是以无人驾驶飞机作为空中平台,以机载遥感设备,如高分辨率CCD数码相机、轻型光学相机、红外扫描仪,激光扫描仪、磁测仪等获取信息,用计算机对图像信息进行处理,并按照一定精度要求制作成图像。全系统在设计和*优化组合方面具有突出的特点,是集成了高空拍摄、遥控、遥测技术、视频影像微波传输和计算机影像信息处理的新型应用技术。
本公司提供各种型号的多旋翼无人机,包含无人机地面站软件、飞控系统以及搭载各种不同的硬件负载,可应用于航拍、测绘、农业植保、监控等。公司拥有自主知识产权的GIS系统,可配合无人机实现一系列更加复杂的定制化应用。
不断探索、改革,才能持之以恒
【初生牛犊】开班典礼后正式入学,新学员们敢想敢为,历练从此开始。
*阶段:C语言核心(学习时长:5周) | ||
课程名称 | 课程内容 | 课程目标 |
Linux系统基础 | . Linux系统安装、命令讲解、文件管理、用户管理 . linux各种软件安装、shell脚本、环境变量 . 系统网络配置,TCP/IP简介,网络文件系统 | 课程目标:达到在Linux系统使用和开发, C语言程序开发,并深入C语言,尤其是内存使用,达到能够看懂Linux内核代码水平 |
C语言核心 | . C语言表达式、基础运算符、C语言关键字、基本数据类型 . 内存图:取地址与解地址、指针与内存、内存管理 . 逻辑运算和位运算 . 程序结构:顺序结构、分支结构、循环结构 . 数组:一维数组、二维数组、多维数组、指针数组、字符数组等; . 编译原理:宏定义与预处理、内存分段、代码段、数据段、堆栈段等 . 函数:参数传递和返回值传递规则、递归函数、回调函数 . 字符串:字符串基本操作、字符串函数实现等; . 指针:一级指针、二级指针、多级指针、数组指针、函数指针等; . 自定义数据结构:结构体、联合、枚举 . 标准库文件操作:文件打开、关闭、读、写、读写缓冲区等; . 强制类型转换 . C语言封装与设计 . C语言头文件、动态库和静态库、大型工程文件布局与头文件的使用 | |
辅助工具 | . Makefile、GDB调试软件、GIT版本控制管理 . visual studio使用、Eclipse入门 . Source Insight代码查看与编写、Putty工具 | |
数据结构 | . 单链表操作,链表构建、销毁、插入、删除、排序、逆转 . 冒泡、选择、插入、快速排序 . 队列、循环队列、栈 . 二分查找、哈希表构建 . 树、二叉树、哈弗曼树 . Linux内核链表、双向循环链表 . this指针、container_of等 | |
教学案例: 学生管理系统、俄罗斯方块、贪吃蛇 |
【牛角书生】基础知识必备环节,踏实勤奋,出入门道。
第二阶段:系统编程和网络编程(学习时长:3周) | ||
课程名称 | 课程内容 | 教学目标 |
系统文件 | . POSIX标准介绍、Unix和Linux关系 . Linux系统I/O、文件读写、锁、mmap等操作 . 视频显示设备frameBuffer操作 . Linux I/O多路复用 | 课程目标:使学员理解系统编程,尤其是文件、进程和数据库;对网络五层有深入了解,能够抓包、分析包和封装包,熟悉基于TCP和UDP的编程;理解C++语言与C语言的优缺点,并能够基于QT图形化编程。 |
进程和线程 | . 系统进程创建、通信、退出机制 . Linux线程操作、互斥操作 . Linux系统进程间通信(管道、消息队列、共享内存、信号、本地socket) . Linux线程创建、退出等操作 . Linux线程间同步与互斥(互斥锁、信号量、条件变量等) | |
网络接口调用 | . UDP和TCP接口编程,数据的发送与接收 . Sniffer抓包程序分析,TCP/IP五层详解,各层数据原理 . 网络数据封装,各层数据的发送与接收 . 网络文件传输、消息打包等 . 简明局域网聊天软件 | |
网络数据构建 | . I/O多路复用、广播、多播程序 . ARP请求与攻击 . 路由器、交换机、网关原理 . Sniffer网络抓包程序分析,TCP/IP五层详解 . 网络数据封装,各层数据的发送和接收 . 广播、多播程序 | |
教学案例: TCP和UDP网络文件传输、局域网络聊天 |
【庖丁解牛】理论知识必须结合实操,反复打磨,才能运用的得心应手。
第三阶段:C++ QT开发(学习时长:4周) | ||
课程名称 | 课程内容 | 课程目标 |
C++核心 | . C++、C和汇编语言三者之间的联系与区别 . 输入输出流、文件IO流、引用、友元、命名空间 . 函数重载、默认参数等; . 面向对象编程思想 . 类的封装和继承 . 对象内存:对象内存的动态分配和释放、this指针 . 类的成员函数和成员变量、静态成员和静态成员函数 . 构造函数、析构函数、拷贝构造函数(深拷贝、浅拷贝) . 友元函数和友元类 . 内联函数 . 操作符重载、仿函数functor、谓词函数 . C++多态、虚函数、纯虚函数、虚函数表、抽象类和接口类 . C++类型转换:向上造型和向下造型、 static_cast、 dynamic_cast、 const_cast、 reinterpret_cast . STL模板、类模板、函数模板、迭代器、容器、适配器、算法等; . 泛型、Boost库、ACE框架 . C++设计模式:单例模式、工厂模式、代理模式等 . C++异常:C++标准异常库、异常的抛出和捕获 . C++11新标准: 类型推导、Lambda表达式、正则表达式、模板增强、区间迭代等。 | 课程目标:理解C++语言与C语言的优缺点,并能掌握QT图形化编程;熟悉基于QT的TCP和UDP编程,对网络五层有深入了解,能够抓包、分析包和封装包;深入学习基于QT的文件和数据库操作;了解进程;深入学习基于QT线程。 |
QT编程基础 | . QtCreator 集成开发环境介绍(设置开发环境, 设置编译环境,视图切换,快速查声明) . QT编程基础:源文件、头文件、ui文件、.qrc资源文件、.pro工程文件等 . QT 编译器与编译流程 . QT Designer:控件和布局、主界面区域、控件属性区域、控件列表区。 . 元对象系统,元对象属性 . QT信号和槽机制 | |
数据结构 | . QByteArray字节数组 . QString字符串 . 顺序容器:QList、QlinkList、QVector、QQueue、QStack,掌握数组、栈和链表的操作 . 关联容器:QSet、QMultiSet、QMap、QMultiMap、QHash、QMultiHash . 迭代器iterator的使用,掌握对容器的迭代遍历 . 掌握二叉树和哈希表等操作 | |
QT图形界面 | . QT组件布局(QLayout):QBoxLayout, QFormLayout, QGridLayout和 QStackedLayout . QT按键:QAbstractButton、QPushButton、QCheckBox、QRadioButton、QToolButton . QT Widget: QListWidget、QTableWidget、QTreeWidget等。 . QT窗口:主界面、菜单栏、工具栏、状态栏等 . QT样式表(QSS) | |
QT对话框 | . QT对话框: 模态对话框和非模态对话框。 . QT标准对话框:QFileDialog、QFontDialog、QColorDialog、QMessageBox等。 . QT自定义对话框 | |
QT事件 | . QT事件: QT事件循环、 鼠标事件、 按键事件、 事件过滤器 . Painter事件(QPen和QBrush、 QT系统坐标、绘画系统、QPainter绘图; update函数;绘图设备(QPixmap、QBitmap、QImage、QPicture)) | |
文件操作 | . 抽象文件引擎类:QIODevice . 文本流与二进制数据流 . 文件和数据流的基本原理和概念 . 使用QFile、QTextStream、QDataStream与文件的读出和写入 . INI文件使用 . XML文件使用 . JSON文件使用 | |
数据库 | . QT QSqlDatabase与数据库交互操作 . QSqlQuery执行SQL语句,数据库数据增删改查 . Navicat安装与使用 | |
进程和线程 | . QT进程:进程创建、进程间通信和进程退出机制 . QT线程: QT线程(QThread)创建、moveToThread创建 . QT线程的互斥和同步:QMutex、QReadWriteLock、QSemphore和QWaitCondition | |
网络编程 | . TCP/IP网络通信基础 . UDP网络通信(QUdpSocket) . TCP网络通信(QTcpSocket、QTcpServer) | |
教学案例: TCP和UDP网络文件传输、局域网络聊天、计算器软件、数据管理系统 |
【牛刀小试】集中火力在模拟项目中一展身手。
第四阶段:模块项目(学习时长:2周) | ||
项目列表 | . 装备管理系统 . 串口网络调试助手 . 文本编辑器 . FeiQ通信软件 . 网络抓包工具 . 音视频播放器 . ModScan32软件 | 课程目标:熟练使用前期课程内容,完成项目内容。掌握项目需求分析及文档编写,项目时间及进度评估,项目模块化及任务分工。了解代码测试用例编写及BUG调试,提高解决问题能力。熟练使用项目工程代码版本管理工具SVN及GIT。熟悉项目汇报文档编写及项目汇报。 |
第五阶段:Linux内核驱动(学习时长:2周) | ||
课程名称 | 课程内容 | 课程目标 |
开发板环境搭建 | . 嵌入式系统软硬件介绍,ARM、三星、Exynos4412开发板等介绍 . 主流软硬件8051、DSP、FPGA、X86介绍 | 课程目标:能够构建基于A9开发板的工作环境,并使学员理解从应用层与内核的关系,掌握Linux内核机制;通过两种驱动,从应用层、内核层再到硬件之间关系,明白内核驱动的真正含义;*后熟悉各种平台的研发,满足不同公司和平台的需求。 |
. Uboot烧写、Linux内核烧写、网络文件系统挂载 . 嵌入式交叉编译环境搭建 | ||
内核构建 | . Linux内核编译配置与编译 . Linux内核裁剪 . 根文件系统制作、Busybox编译配置与安装 | |
Linux内核机制 | . Linux内核IO . Linux内核中断 . Linux内核字符设备驱动模型 . 应用层、Linux内核与硬件之间的关系 . 输入设备访问程序开发,Camera, Mouse, Keyboard, Touch Screen | |
教学案例: Linux系统移植、图片格式转换、视频文件播放、输入类设备驱动 |
【汗牛充栋】攻克实战重重关卡,完成晋级蜕变之路。
第六阶段:实战项目(学习时长:4周) | ||
课程目标:掌握项目需求分析及文档编写,项目时间及进度评估,项目模块化及任务分工。了解代码测试用例编写及BUG调试,提高解决问题能力。熟练使用项目工程代码版本管理工具SVN及GIT。熟悉项目汇报文档编写及项目汇报。商业项目开发运营模式,真正实现与企业项目无缝对接。 | ||
项目列表 | . Android系统移植与开发 . 数码相框 . 人脸识别系统开发 . 无人机飞控系统 . 物联网数据采集网关 . 5G物联网环境监测系统 . …… | . |
项目专题 | . 总线设备驱动模型 | . |
. USB总线设备驱动 | . | |
. IIC总线设备驱动 | . | |
. LCD底层驱动,内核图形设备管理 | . | |
. 多平台驱动研发 | . |
【牛气冲天】全面提升自我,"犇"向薪未来。
第七阶段:就业指导(学习时长:1周) | |||
课程名称 | 课程内容 | 课程目标 | |
内容涵盖 | . 个人简历制作指导 . 讲解不同企业/职位面试经验 . 模拟企业一对一、多对一面试现场 . 向合作企业内推学员简历或组织专场招聘会 | 指导学员知晓、理解、掌握面试流程及技巧,学会分析自我能力是否匹配企业职位,并在面试时可以清晰准确的表达出自己的亮点及优势,*终拿到*的职业offer。 |