
慕课体系课 - 2023年物联网嵌入式工程师
来自 网络整理·免费领取学习资源
6,669 领取 · 5,363 收藏更新于 2026年9月20日
这份资料来自网络整理2026年的付费VIP课,内容以视频为主,对应《慕课体系课 - 2023年物联网嵌入式工程师》。官网需要单独购买,有集上可以免费领取。
课程目录
- 行业热门,政策风口,人才缺口极大,现在入场时机正好!
- 上千人检验,数轮迭代的硬核知识体系,软硬件通吃
- 保姆式教学+简历指导+1V1模拟面试+3次内推,助力轻松就业!
课程目录
- 阶段一:嵌入式开发基础之Linux C语言编程
- 18门课 /课程总时长:35小时
- 第0周 物联网/嵌入式工程师就业班开学典礼
- 想了解更多课程详情请观看导学视频:https://class.imooc.com/trysee/learn/?c=embedded
- 课程安排:
- 1、物联网/嵌入式行业发展与趋势
- 2、嵌入式与物联网,人工智能之间的关系
- 3、自主研发的硬件平台介绍
- 4、学习路径及课程内容安排介绍
- 5、每个阶段课程学习方法介绍
- 6、课程学习过程中答疑及就业服务介绍 等
- 第1周 嵌入式开发基石-计算机基础与C语言
- C语言是嵌入式工程师主流开发语言,它是所有高级语言根基,它决定了一名工程师是否可以在本质上理解开发语言,非常重要,本周带领大家回顾重要计算机基础以及迈进C语言大门,带同学们系统入门
- 课程安排:
- 1、开发环境搭建,在虚拟机中安装ubuntu系统
- 2、计算机基础知识介绍,了解计算机工作原理,程序如何运行
- 3、Linux 基础命令,掌握在Linux命令行终端中如何实现文件操作
- 4、GCC编译器介绍及使用,掌握gcc编译程序的流程,学会使用gcc编译器编译C语言
- 5、二进制、八进制、十进制、十六进制之间的转换讲解
- 6、原码、反码、补码,彻底搞清楚数据是如何在计算机中进行存储
- 7、C语言数据类型,掌握如何使用C语言的数据类型描述实际生活中的各种数据
- 8、C语言运算符,掌握如何使用C语言的运算符完成实际生活中的各种数据计算
- 第2周 C语言进阶-编程思想
- 本周我们重点学习C语言编程思想,掌握模块儿化编程思想,存储、指针操作内存等内容
- 课程安排:
- 1、C语言控制语句,掌握在实际软件开发中如何使用C语言的控制语句做逻辑控制,完成功能需求
- 2、C语言数组,掌握在多个数据如何在C语言中进行存储
- 3、C语言函数,掌握模块化编程思想,如何用函数封装功能
- 4、C语言指针, 掌握C语言的精华,如何使用指针操作内存
- 第3周 C语言高级进阶
- 本周进一步是c语言高级内容讲解,彻底掌握C语言函数、指针、结构体、内存管理等进阶内容,为嵌入式工程师打下坚实的语言基础,相信你学完本周,内功也会更加深厚
- 课程安排:
- 1、C语言数组、函数、指针混合运用,重点内容,再次讲解,彻底掌握
- 2、C语言宏定义,使用宏提高代码的通用性和可读性
- 3、C语言结构体、联合体、枚举,生活中的复杂对象如人的信息,外卖订单的信息如何用C语言进行描述
- 4、C语言位域,在运行内存很小的场合,如何节省变量占用的内存空间
- 5、C语言程序运行内存剖析,彻底搞清楚变量的生命周期,内存的分配和释放
- 6、C语言static关键字,搞清楚static关键字修饰的全局变量、局部变量、函数的实际场景用法
- 7、C语言堆区内存管理,掌握在C语言中如何做动态内存管理
- 第4周 C语言项目实战与《阶段笔试》
- 本周我们通过项目实践来进一步巩固C语言基础,一来提升学习趣味,二来强化C语言在实际项目中的运用,从而彻底掌握C语言
- 课程安排:
- 项目一:日历系统,通过项目强化C语言的运用,主要功能如下:
- 1、输入一个年份,显示这一年的日历
- 2、输入一个年份和月份,显示这一个月的日历
- 3、输入一个年份,月份,日期,显示这一天是星期几
- 项目二:俄罗斯方块游戏,通过项目强化C语言的运用,掌握游戏开发编程思想,主要功能如下 :
- 1、在终端上面显示俄罗斯方块
- 2、通过按键控制俄罗斯方块变形
- 3、摞在一起的俄罗斯方块自动消除
- 4、随机出现俄罗斯方块
- 5、游戏速度随等级自动加快
- 6、实时显示玩家的游戏得分
- 《第一阶段企业笔试》
- 1、C语言基础语法默写,从企业面试官的角度,考察对C语言语法掌握的情况
- 2、C语言企业笔试题考试及讲解,从企业的角度考察C语言知识,让同学提前了解企业在人才招聘环节,对C语言的考察点
- 阶段二:嵌入式开发基础之数据结构
- 10门课 /课程总时长:15小时
- 第5周 数据结构-线性结构
- 在嵌入式开发工程中,任何一个软件系统的开发都离不开数据结构相关的算法,数据结构也是大厂在人才招招聘环节主要考察点,掌握它非常重要,本周我们先从线性结构讲起,用C语言实现,再一次夯实C语言基础
- 课程安排:
- 1、顺序表,使用数组来存放数据,实现数据的增删改查等操作
- 2、链表,使用动态内存分配节点来存放数据,实现数据的增删改查等操作
- 3、栈,数据先进后出,实现顺序结构和链式结构的栈,实现出栈和入栈等操作
- 4、队列,数据先进先出,实现顺序结构和链式结构的队列,实现入队列和出队列等操作
- 第6周 数据结构-非线性结构
- 本周我们讲解非线性结构、图数据结构、哈希表等更多数据结构内容,带领同学们0到1实现
- 课程安排:
- 1、二叉树,讲解二叉树的创建、递归遍历算法和非递归遍历算法,以及哈夫曼树编解码算法
- 2、图,讲解图的创建,深度遍历和广度遍历算法,以及图中最短路径的遍历算法
- 3、哈希表,讲解使用哈希表进行快速的数据查询,以及哈希算法在冲突的时候解决方法
- 第7周 排序与复杂度
- 本周讲解排序与算法的时间、空间复杂度内容,从而学会分析一个算法的好坏
- 课程安排:
- 1、排序,讲解常用的冒泡、选择、快速排序、堆排序等常用排序算法
- 2、时间复杂度和空间复杂度,分析一个算法的好坏衡量方法
- 第8周 数据结构项目实战
- 本周我们安排了一个学生管理系统小型项目进行练手,让同学们再次熟悉和掌握数据结构相关算法的实际场景运用
- 课程安排:
- 1、基于VT100的菜单设计
- 2、学生信息录入系统
- 3、学生信息查询
- 4、学生信息修改
- 5、学生信息排序
- 6、学生信息删除
- 阶段三:嵌入式开发基础之Linux Shell和Makefile
- 4门课 /课程总时长:10小时
- 第9周 Shell编程和Makefile工程管理
- 在实际嵌入式Linux平台项目开发过程中,由于涉及到的开发平台众多,基本都是通过命令行操作,工程师需要掌握Linux下常用命令和shell脚本编写以及Makefile管理工程文件进行自动化编译,这也是我们本周的重点内容
- 课程安排:
- 1、Linux 常用命令,讲解文件管理、用户管理、网络管理、磁盘管理等相关的命令
- 2、awk和sed命令,强大的数据按列处理和按行处理命令
- 3、shell脚本编程,胶水融合剂,让固定的流程自动化起来
- 4、Makefile多文件工程管理,完成代码的自动化编译,掌握Makefile的编写方法是嵌入式工程师必须具备的能力
- 5、阶段企业笔试-常用命令默写,从企业面试的角度,考察学员对Linux常用命令的掌握
- 6、阶段企业笔试-从企业笔试的角度考察学员对shell脚本和Makefile的掌握情况,让学员提前了解企业对工程师在shell和Makefile两方面的要求
- 阶段四:嵌入式应用层开发之Linux 文件操作
- 5门课 /课程总时长:15小时
- 第10周 Linux文件IO和标准IO
- 在嵌入式开发过程中,涉及到的主流操作系统是Linux系统,在Linux系统中设计理念是”一切皆文件”,所以掌握Linux下文件操作非常重要,本周我们先从文件IO和标准IO讲起
- 课程安排:
- 1、Linux系统调用实现原理讲解,掌握系统调用的工作原理,理解printf函数是如何将字符串输出到屏幕
- 2、基于文件描述符的文件打开、读写、关闭等操作,掌握Linux下文件的操作API,并熟练使用这些API完成文件操作
- 3、基于标准C库的文件打开、读写、关闭等操作,理解标准C库函数和系统调用之间的区别和联系,掌握如何使用标准C库API完成文件操作
- 4、动态库、静态库制作和使用,理解gcc编译器链接库的工作原理和Linux操作系统如何加载动态库,掌握Linux下动态库和静态库的制作和使用
- 第11周 Linux下文件操作项目实践与阶段评测
- 实现一个基础的shell程序,能完成ls 和 cp功能,通过实现ls命令和cp命令功能,再次强化学员对Linux下文件操作和常用系统调用API使用
- 课程安排:
- 1、输入命令解析命令参数
- 2、根据输入的ls命令,读取目录下的文件属性信息,并显示
- 3、根据输入的cp命令,完成文件拷贝和递归目录下的所有文件拷贝
- 4、笔试安排:常用文件操作函数默写,从企业面试的角度,考察学员对Linux下常用文件操作API函数掌握情况
- 阶段五:嵌入式应用层开发之 Linux 多进程、多线程、IO模型
- 13门课 /课程总时长:20小时
- 第12周 Linux 多进程、多线程、IO模型
- 嵌入式开发的主流操作系统是Linux操作系统,这一阶段由一线12年经验的高级工程师进行授课,主要让学员掌握Linux 下多线程、多进程编程思想和常用的IO模型,让自己开发的软件能充分发挥多核CPU优势,提升软件性能
- 课程安排:
- 1、进程的概念,理解在Linux系统中进程是什么
- 2、进程相关的命令,掌握Linux系统中进程信息的查看
- 3、进程创建,掌握Linux系统中如何在一个程序中创建多个进程
- 4、进程间通信,掌握Linux系统中常用的进程间通信方法,如:管道、信号、5、消息队列、共享内存、信号灯集等
- 6、进程间同步,理解同步的概念,掌握Linux系统中进程间同步的方式
- 7、线程的概念,理解在Linux系统中线程是什么
- 8、线程相关的命令,掌握Linux系统中线程信息的查看
- 9、线程创建,掌握Linux系统中如何在一个程序中创建多个线程
- 10、线程间通信,掌握Linux系统中线程间通信的方法
- 11、线程间同步,掌握Linux系统中线程间同步机制,如:信号量、条件变量、互斥锁等
- 12、阻塞IO,理解阻塞IO的概念及工作原理
- 13、非阻塞IO,理解非阻塞IO的概念及工作原理
- 14、IO多路复用,理解IO多路复用的概念及工作原理,掌握Linux下IO多路复用的方法,如:select,poll,epoll等
- 第13周 Linux 项目实战-实现并发服务器模型与企业笔试
- 通过上周的学习我们掌握了Linux 多进程、多线程、IO模型,本周通过带同学们0到1实现一个并发服务器模型彻底掌握嵌入式中重要的Linux知识实践
- 课程安排:
- 1、基于多进程、多线程实现并发服务器模型,主要功能如下:
- 2、服务器进程创建线程池,维护线程池中线程创建和销毁,创建子进程反馈3、数据处理结果
- 4、服务器进程创建消息队列,从消息队列获取其他客服端进程发来的任务数据,并从线程池中取线程处理任务
- 5、线程池中的任务线程处理完客户端的数据后,通知服务器进程子,由服务器子进程共享内存的方式获取处理的数据,然后反馈给客户端进程
- 6、客户端进程通过消息队列提交任务请求,通过共享内存获取任务处理结果
- 7、企业笔试:常用Linux操作系统知识默写,从企业面试的角度,考察学员对Linux操作系统多进程、多线程、IO模型的理解
- 阶段六:嵌入式应用层开发之Linux 网络编程
- 19门课 /课程总时长:20小时
- 第14周 网络基础和UDP Socket编程
- 在物联网的时代,任何一款嵌入式产品都需要具备网络功能进行万物互联,掌握网络知识非常重要,从本周开始我们会从网络的基础知识讲起到带你走进Linux 网络编程的大门
- 课程安排:
- 1、IP地址、子网掩码、默认网关、DNS服务器,掌握网络的基础知识,理解常用网络通信参数的含义
- 2、数据包内网、外网传输方式,掌握局域网是如何搭建,理解交换机和路由器的工作原理,掌握数据包是如何在网络中进行传输
- 3、网络模型,理解网络协议栈的设计原理,掌握网络模型的分层含义
- 4、一帧数据包格式,通过分析网络数据包个格式,掌握网络通信的原理
- 5、TCP协议,掌握TCP协议的三次握手、四次挥手、数据包传输的原理
- 6、UDP协议,掌握UDP协议的特点,对比TCP协议的不同,理解TCP和UDP协议的各自优缺点
- 7、网络通信中常用协议,掌握网络通信中常用的一些通信协议使用场景和特点
- 8、udp客户端实现,掌握Linux系统中socket在udp客户端的使用及通信方法
- 9、udp服务器端实现,掌握Linux系统中socket在udp服务器端的使用及通信方法
- 10、udp并发服务器实现,掌握并发服务器的设计思想和在Linux系统中如何使用多进程、多线程的思想实现udp并发无服务器
- 11、基于udp协议的局域网聊天室软件开发,掌握多人聊天环境中群聊的实现思想
- 第15周 TCP Socket编程和WireShark抓包分析
- 本周继续深入网络编程的TCP Socket编程和WireShark抓包分析内容,让同学们更深层次的理解TCP Socket、TCP和UDP协议
- 课程安排:
- 1、TCP客户端实现, 掌握Linux系统中socket在tcp客户端的使用及通信方法
- 2、TCP服务器端实现, 掌握Linux系统中socket在tcp服务器端的使用及通信方法
- 3、TCP粘包分析,理解TCP粘包原理,掌握TCP粘包情况下如何正确解析数据包
- 4、TCP并发服务器实现,掌握并发服务器的设计思想和在Linux系统中如何使用多进程、多线程的思想实现TCP并发无服务器
- 5、基于TCP协议的文件传输服务器软件开发,通过文件的上传和下载功能,再次强化tcp socket的使用
- 6、WireShark抓包工具使用,学会抓包工具的使用,并使用抓包工具详细分析TCP协议和UDP协议的具体内容,让学员深层次理解TCP和UDP协议
- 第16周 网络编程项目实战-网络视频监控与企业笔试
- 本周通过实战网络视频监控项目,让学员掌握Linux网络编程知识在实际工程场景中的运用,掌握在Linux系统中如何获取视频流、编解码视频流,传输视频流,并掌握HTTP协议
- 课程安排:
- 1、V4L2编程,在Linux系统中获取摄像头数据
- 2、HTTP协议,掌握HTTP协议工作原理,并通过编程实现HTTP协议数据传输
- 3、libjpg库使用, 掌握YUYV数据格式如何压缩成jpeg数据格式进行传输
- 4、远程视频监控,实现具体的远程视频监控功能,并通过浏览器查看视频流
- 5、企业笔试:常用网络基础知识默写,从企业面试角度,考察学员对网络基础知识掌握情况
- 阶段七:嵌入式应用层开发之Linux C++编程
- 50门课 /课程总时长:30小时
- 第17周 从C到C++
- 嵌入式开发中,C和C++不分家,多掌握一种开发语言就业机会也更多,C++语言是所有编程语言中最复杂的一门语言,掌握的C++语言也就掌握了其他编程语言。本周开始带领同学们从主要从C语言角度剖析C++
- 课程安排:
- 1、C++与C的不同地方,讲解C++在C的基础上扩展了哪些语法
- 2、命名空间,分析C语言语法的缺点,理解C++为什么要命名空间
- 3、引用,理解引用的本质,掌握引用和指针的不同
- 4、函数重载,理解为什么可以进行函数重载,编译器是如何对函数名进行处理的
- 5、默认值参数,理解默认值参数函数的特点
- 6、内联,理解内联为什么可以提高程序的运行效率
- 7、封装,掌握面向对象的编程思想,如何通过封装的思想描述一个对象
- 8、继承,掌握如何通过继承实现代码的复用,已经继承使用的场合
- 9、多态,掌握多态的思想,如何做到一个接口多种实现,在运行时决定对象的行为
- 10、泛型编程,掌握泛型编程的思想,如何写出通用的代码,做到代码的复用
- 11、STL容器,掌握C++标准STL容器提供的API使用
- 第18周 软件设计模式与C++11新特性
- 常用设计模式的思想是必须掌握的,本周带同学们学习C++的设计模式通用思想,通过一线技术总监授课教学更深层次理解设计模式和C++11新特性
- 课程安排:
- 1、智能指针,掌握如何使用智能指针做到内存自动释放,减少内存泄漏的分享
- 2、lambda表达式,掌握在C++中如何使用匿名函数,实现快捷编程
- 3、auto自动推导,掌握C++11中提供的自动类型推导含义,避免编码过程中关注复杂的类型,实现快捷编程
- 4、基于范围for循环,掌握C++11标准的新型for循环,实现快捷编程
- 5、右值引用,理解左值和右值得概率,掌握右值引用的使用场景
- 6、move移动语义,掌握如何通过move移动语义,实现代码高效率运行
- 7、单例,理解单例的设计模式编程思想,掌握饿汉式和懒汉式两种单例的实现方法
- 8、工厂,理解工厂设计模式编程思想,掌握简单工厂、工厂方法、抽象工厂的实现方法
- 9、代理,理解代理设计模式的编程思想,掌握代理设计模式的实现方法
- 10、适配器,理解适配器设计模式的编程思想,掌握适配器设计模式的实现方法
- 11、观察者,理解观察者模式的编程思想,掌握观察者设计模式的实现方法
- 12、设计模式遵从原则,理解设计模式遵从的通用思想,更深层次理解设计模式
- 第19周 项目实战-C++语言实现五子棋游戏与企业笔试
- 本周带同学们C++语言实现五子棋游戏,融合设计模式的思想,在实战中理解C++语言的使用以及设计模式运用。项目中会运用到网络的知识,再次强化学员对网络编程的知识的掌握,为之后的嵌入式项目开发打下坚实基础
- 课程安排:
- 1、五子棋游戏界面绘制
- 2、黑白棋子显示
- 3、五星连珠算法实现
- 4、本地双人对战实现
- 5、网络双人对战实现
- 6、企业笔试:C++常用语法点默写,从企业面试角度,考察学员对C++语言掌握情况
- 阶段八:嵌入式应用层开发之-人机交互QT编程
- 21门课 /课程总时长:20小时
- 第20周 嵌入式产品人机交互必备-QT框架
- 在嵌入式产品中,也会涉及到人机交互界面,QT的免费,开源,夸平台特性,成为了很多嵌入式产品人机交互界面软件开发的不二之选。本周带同学们从0开始讲解QT的各种功能和操作,掌握QT框架开发
- 课程安排:
- 1、信号与槽,掌握信号与槽的实现原理及使用方法,这是QT的精华实现
- 2、事件,理解事件的含义,掌握常用事件在Qt软件开发中的处理方法
- 3、Qt界面设计,掌握软件界面布局,掌握QT中的常用软件布局管理的使用
- 4、QSS界面美化,掌握QT的样式设置,如何通过样式改变QT开发软件的外观
- 5、Qt 文件操作,掌握QT中文件操作的方式
- 6、Qt 多线程,掌握QT中创建线程的方法,理解夸线程的信号与槽通信原理
- 7、Qt 网络编程,掌握QT中网络编程的实现方法,让自己开发的软件具备网络通信的能力
- 8、Qt 数据库编程,理解数据库概率,掌握在QT中如何实现数据库操作
- 9、Qt 图形与图像,掌握QT中图形和图像的处理方法
- 10、QML,掌握在QT中如何使用QML实现界面的快捷开发
- 第21周 项目实战-QT开发音乐播放器
- 本周我们用QT开发一款在线云音乐播放器,从软件界面设计美化到软件功能实现,最后到软件发布。让学员掌握一款软件开发到上线的全流程,同时通过软件开发强化学员对QT知识的掌握,掌握嵌入式人机交互利器
- 课程安排:
- 1、云音乐播放器界面设计及美化
- 2、在线搜歌显示歌曲信息
- 3、歌曲专辑图片动画显示
- 4、歌词解析同步歌曲进度实时显示
- 5、爱心歌曲下载,数据库存储及本地显示
- 6、 企业笔试:QT常用类功能默写, 从企业面试角度,考察学员对QT掌握情况
- 阶段九:嵌入式底层开发之ARM接口技术和智能硬件开发
- 48门课 /课程总时长:35小时
- 第22周 智能硬件开发-ARM核介绍和基础外设
- 嵌入式产品开发过程中,很多软件代码都是为了驱动硬件工作而编写,掌握如何通过软件驱动硬件工作,是一名嵌入式工程师必须具备的能力,本周我们主要先从ARM核、imx6ull相关知识开始学习
- 课程安排:
- 1、ARM介绍,了解ARM芯片的生态环境,理解CPU核和SOC概念
- 2、ARM工作模式,掌握ARM的八种工作模式,理解每种工作模式的使用场景
- 3、ARM寄存器资源,掌握ARM核中R0-R15寄存器含义,理解他们的使用场景
- 4、ARM汇编,掌握ARM核相关的常用汇编指令,理解ARM核相关指令的含义
- 5、ARM核指令流水线,掌握ARM核三级流水线的工作原理,理解ARM核是如何执行指令的
- 6、ATPCS标准,掌握函数间参数是如何进行传递,函数返回值如何带回,通过汇编和C语言的对比理解ATPCS标准规范
- 7、ARM异常处理,掌握ARM核异常处理的过程,理解异常和中断的关系
- 8、imx6ull 芯片介绍,了解imx6ul这款芯片的硬件资源
- 9、电子电路基础知识介绍,为能顺利阅读硬件原理图铺垫
- 10、硬件原理图阅读,掌握硬件原理图阅读的方法
- 11、GPIO驱动,掌握如何通过软件代码操作GPIO控制器从而控制设备
- 第23周 智能硬件开发-单片机常用外设
- 本周继续深入单片机知识,老师会从ARM核的工作原理,硬件原理图阅读,硬件工作原理讲解,datasheet阅读三个方面介绍单片机开发工程方法,同时在课堂中介绍常用物联网协议,让学员掌握单片机在物联网项目中的运用
- 课程安排:
- 1、GPT,掌握GPT定时器使用方法,学会使用GPT定时器做精确延时
- 2、PWM,掌握Timer定时器和PWM波输出工作原题,学会使用PWM波驱动外围硬件设备
- 3、中断,掌握在ARM核中中断处理流程,学会使用软件代码操作中断控制器
- 4、UART,掌握串口通信工作原理和通信协议,学会使用串口完成设备间的数据通信
- 5、ADC,掌握ADC工作原理,学会使用ADC采集外部电压信号
- 6、WDOG,掌握看门狗定时器工作原理,学会使用看门狗定时器在程序卡死情况自动复位系统
- 7、RTC,掌握RTC工作原理,学会使用RTC获取实时时间
- 8、I2C,掌握I2C总线通信时序,理解I2C总线通信协议,学会使用I2C总线和外围设备之间进行数据通信
- 9、1-wire,掌握单总线通信原理,学会使用单总线采集温度传感器数据
- 10、SPI,掌握SPI总线通信时序,理解SPI总线通信协议,学会使用SPI总线和外围设备之间进行数据通信
- 11、CAN,掌握CAN总线通信原理,从0 到1掌握CAN总线传输数据
- 12、LCD,掌握LCD屏显示原理,理解LCD RGB接口传输数据原理,学会使用软件代码驱动LCD屏显示图像数据
- 13、Camera,掌握摄像头数据采集原理,学会使用软件代码驱动摄像头采集图像数据
- – 触摸屏,掌握电容屏触摸屏工作原理,学会使用I2C总线获取触摸屏点击坐标
- 第24周 stm32芯片-智能硬件项目实战与企业笔试
- 目标:掌握stm32芯片开发方法,完成使用stm32芯片进行智能车控制、ps2手柄进行小车无线控制,ESP8266模块对小车无线控制,蓝牙模块无线控制,使用循迹模块进行PID算法控制小车自动循迹,超声波对小车自动避障等
- 课程安排:
- 1、stm32 开发环境搭建,掌握Keil、CubeMx、STLink安装和使用方法
- 2、stm32启动流程分析
- 3、智能小车电机控制,掌握通过PWM波控制小车电机正转和反转
- 4、ps2 无线手臂和小车通信,掌握ps2手柄通信原理,通过ps2手柄控制小车前进、后退、转弯
- 5、数码管显示RTC实时时间
- 6、继电器控制外部设备
- 7、超声波避障,掌握超声波测距原理,实现使用超声波模块小车实现自主避障功能
- 8、自动循迹,掌握循迹模块工作原理,实现使用PID算法控制五路循迹模块完成小车自动循迹
- 9、ESP8266无线通信,掌握通过ESP8266模块进行无线数据传输
- 10、蓝牙模块通信,掌握蓝牙模块控制小车
- 11、温湿度数据采集,掌握通过I2C总线控制温度采集模块,实时采集温湿度数据并通过ESP8266模块实现无线数据传输
- 12、上位机软件开发,掌握使用QT开发一款APP软件,运行在手机端和电脑端,通过软件可以实时获取小车上面传感器采集的数据,也可以通过软件控制小车
- 阶段十:智能硬件开发-嵌入式底层开发之系统移植
- 20门课 /课程总时长:30小时
- 第25周 大厂必备- linux内核与文件系统移植
- 掌握如何在一款硬件平台定制专用的嵌入式系统,是很多大厂对高级嵌入式工程师的要求。本周让学员掌握如何在一块嵌入式开发板上定制嵌入式Linux系统,学会u_boot,linux kernel,文件系统移植方法
- 课程安排:
- 1、PC机启动流程分析,掌握在PC机上操作系统是如何启动的
- 2、嵌入式系统启动流程分析,掌握嵌入式系统的启动方式,对比PC启动有什么不同
- 3、交叉开发环境搭建,掌握交叉开发环境搭建的方法,掌握跨平台编译
- 4、Linux内核移植,掌握内核启动流程,配置方法
- 5、Kconfig分析,掌握Kconfig语法知识,学会自己编写Kconfig
- 6、u_boot引导Linux内核,掌握u_boot是如何引导Linux内核启动,以及u_boot和Linux内核之间的参数传递
- 7、根文件系统init进程启动分析,掌握根文件系统的挂载流程,以及init进程在初始化阶段做了哪些事情
- 8、BusyBox定制根文件系统,掌握如何使用busybox工具定制自己需要的根文件系统
- 第26周 嵌入式开发-系统移植-bootloader、yocto
- 本周继续从0到1做u_boot、kernel、rootfs移植,并现场解决移植过程中遇到的各种问题,提供解决问题思路
- 课程安排:
- 1、u-boot源码阅读,掌握u_boot程序的启动流程和设计架构
- 2、u-boot移植,掌握u_boot移植的方法
- 3、yocto定制嵌入式系统,掌握使用yocto工具定制嵌入式嵌入式系统
- 4、嵌入式系统烧写,掌握如何在自己的平台烧写嵌入式系统
- 5、企业笔试:嵌入式系统启动流程默写, 从企业面试角度,考察学员对嵌入式系统的掌握情况
- 阶段十一:嵌入式底层开发之 Linux设备驱动入门到高级进阶
贡献者
陈可
白银