【2020版】物联网嵌入式学习路线图

  什么叫物联网呢?物联网就以互联网为基础,将物与物联系起来进行信息交换和管理。据权威数据统计,全球物联网业务迎来了高速增长的拐点,每年连接数将以两位数的速度成长,2019年,全球连接数将突破120亿。

  物联网的应用场景十分丰富,几乎涉及到生产生活的方方面面。物联网技术已经基本形成,物联网作为国家倡导的新兴产业备受关注。现在物联网产业也是发展迅速。现在市场上对这方面的人才需求量也是很大,预测 2022 年中国就能将成为全球最大的物联网连接市场。这样的市场前景给很多年轻人机遇与挑战,学习物联网技术的人越来越多,下面给大家分享一个全新的物联网学习路线图。

  

  

  ​  第一阶段:嵌入式高级C语言

  Linux系统

  Linux Ubuntu操作系统安装、使用、Linux常用命令、samba服务器、SSH远程登录、GCC编译器、GDB调试器、VI编辑器

  嵌入式C语言高级编程

  1、C数据类型、控制语句

  2、C程序结构设计、数组、函数、预处理

  3、指针及字符串操作

  4、结构体、共用体、宏、枚举

  5、文件I/O操作

  数据结构及算法

  1、数据结构之单向链表、双向链表

  2、数据结构之队列、栈

  3、数据结构之树、图

  4、算法之各种排序(选择法、冒泡法、插入法等)

  5、递归

  6、算法之二分查找

  第二阶段:嵌入式设备及GUI开发

  嵌入式环境配置与开发工具学习

  Linux下项目管理工具Make以及Makefile工作原理及其编写Linux下shell脚本相关知识及其编写嵌入式开发环境的基本概念及其搭建A53开发板介绍、设备使用、A53开发板与电脑通信、交叉编译

  GUI图形界面开发

  常用控件——button、label、text edit等常用布局方式——水平布局、垂直布局、固定布局、网格布局、相对布局等常用事件及信号处理技术——信息回调、鼠标、键盘事件等时间编程、数据存储、绘图机制、定时器处理、多任务处理等

  第三阶段:嵌入式Linux高级程序设计

  1、Linux系统调用概念

  2、进程相关概念、多进程实现多任务开发

  3、进程间通信:无名管道、命名管道、信号、消息队列、共享内存等

  4、多线程实现多任务开发

  5、多任务的同步互斥开发:互斥锁、信号量

  第四阶段:Linux高级网络程序设计

  1、网络相关概念及网络发展

  2、TCP/IP协议

  3、socket编程、TCP网络编程、UDP网络编程、Web编程开发等

  4、Linux网络应用程序开发,Linux网络编程相关5、TCP协议服务器的编程方法和并发服务器的实现

  6、HTTP协议及其实现方法,熟悉UDP广播、多播的原理及编程方法,掌握混合C/S架构网络通信系统的设计

  7、IPv6与IPv4协议,及其编程接口

  8、网络数据通信过程

  9、网络原始套接字概念及编程接口

  第五阶段:数据库及web编程开发

  数据库及web编程开发

  1、数据库概念、数据库类型

  2、Sqlite数据库介绍及其安装与移植

  3、SQL数据库语言(数据定义语言(DDL)、数据操作语言(DML)、数据查询语言(DQL)、数据控制语言(DCL))br

  4、Sqlite数据库C语言编程中的各种SQL指令执行函数完成对数据库的控制

  5、HTML语言开发

  6、Javascript语言开发

  7、AJAX开发

  8、cgi程序开发

  第六阶段:C++面向对象高级语言程序设计

  1.熟悉面向对象的语言概述

  2.熟练掌握c++语言的基本知识和类与对象及其高级应用

  3、作用域运算符、内联函数、强制类型转换

  4、new、delete内存管理

  5、对象成员、成员函数

  6、构造函数、析构函数、拷贝构造函数、函数重载

  7、对象数组、this指针、枚举、

  8、静态成员、静态成员函数

  9、对象成员

  10、友元

  11、封装、继承、多继承、多态

  12、虚函数、纯虚函数、抽象类、虚析构函数等

  第七阶段:物联网

  1、了解物联网、泛在网、互联网基本要领及其关系

  2、熟悉RFID从低频段到高频段的基本工作原理,以及RFID标签的种类与行业应用,读卡器原理与通信过程

  3、熟悉TI的cc2530的基本应用,包含基本硬件资源,协议栈相关接口使用,以及点对点通信、星形通信、广播通信、绑定通信,三种网络结构star、tree、mesh,掌握zibgee相关微控制处理芯片

  4、了解zigbe协议栈组成,以及zigbee在通信、组网、摇控等领域的不同应用

  5、通过Bluetooth、wifi和zigbee技术对比各自的优缺点,并重点介绍zigbee的各种应用

  6、掌握温度、湿度、光照、PH值、二氧化碳等传感器的工作原理及通信接口

  7、了解NB-IOT基本概念及移运BC95模块

  8、熟悉CoAP协议在NB-IOT中的应用

  9、掌握常用AT指定集

  第八阶段:CortexA53 Linux平台驱动开发

  1、了解ARM处理器基本特征及工作原理

  2、掌握ARM裸机程序开发以及裸机编译工具的使用

  3、嵌入式Bootloader原理分析及其移植

  4、嵌入式Linux内核结构分析及其移植

  5、掌握嵌入式Linux根文件系统组成分析及其制作过程

  6、掌握嵌入式Linux三大类设备驱动基本概念

  7、掌握Linux字符驱动框架及GPIO输入输出驱动

  8、Linux中断机制处理及响应过程

  9、Linux下SPI/IIC/UART串行通信技术驱动编写与应用

  10、Linux下input设备驱动框架介绍

  11、Linux下platform机制设备驱动框架介绍

  12、Linux下kfifo缓冲机制、并发与竞态(如互斥锁与信息号等)讲解

  13、Linux驱动中的阻塞与非阻塞

  14、Linux下块设备驱动框架——RAMdisk驱动实例编写

  15、USB设备硬件设计原理、驱动协议架构、驱动开以流程

  16、了解Linux设备驱动模型(kobject、kset、子系统、底层sysfs操作、虚拟总线等)

  第九阶段:项目实操

  对于物联网的学习,很多小白无从下手,有了这个学习路线图,可以先从基础开始学习,慢慢加深。

发布了405 篇原创文章 · 获赞 258 · 访问量 87万+

猜你喜欢

转载自blog.csdn.net/GUDUzhongliang/article/details/105577887