搶先看!全新的物聯(lián)網(wǎng)學(xué)習(xí)路線(xiàn)圖-千鋒物聯(lián)網(wǎng)教學(xué)出品
什么叫物聯(lián)網(wǎng)呢?物聯(lián)網(wǎng)就以互聯(lián)網(wǎng)為基礎(chǔ),將物與物聯(lián)系起來(lái)進(jìn)行信息交換和管理。據(jù)權(quán)威數(shù)據(jù)統(tǒng)計(jì),全球物聯(lián)網(wǎng)業(yè)務(wù)迎來(lái)了高速增長(zhǎng)的拐點(diǎn),每年連接數(shù)將以?xún)晌粩?shù)的速度成長(zhǎng),2019年,全球連接數(shù)將突破120億。
?

物聯(lián)網(wǎng)的應(yīng)用場(chǎng)景十分豐富,幾乎涉及到生產(chǎn)生活的方方面面。物聯(lián)網(wǎng)技術(shù)已經(jīng)基本形成,物聯(lián)網(wǎng)作為國(guó)家倡導(dǎo)的新興產(chǎn)業(yè)備受關(guān)注?,F(xiàn)在物聯(lián)網(wǎng)產(chǎn)業(yè)也是發(fā)展迅速?,F(xiàn)在市場(chǎng)上對(duì)這方面的人才需求量也是很大,預(yù)測(cè) 2022 年中國(guó)就能將成為全球最大的物聯(lián)網(wǎng)連接市場(chǎng)。這樣的市場(chǎng)前景給很多年輕人機(jī)遇與挑戰(zhàn),學(xué)習(xí)物聯(lián)網(wǎng)技術(shù)的人越來(lái)越多,怎么樣系統(tǒng)的學(xué)習(xí)物聯(lián)網(wǎng)技術(shù)呢?下面,千鋒小編給大家提供一個(gè)全新的物聯(lián)網(wǎng)學(xué)習(xí)路線(xiàn)圖。
?
第一階段:嵌入式高級(jí)C語(yǔ)言
?
Linux系統(tǒng)
?
Linux Ubuntu操作系統(tǒng)安裝、使用、Linux常用命令、samba服務(wù)器、SSH遠(yuǎn)程登錄、GCC編譯器、GDB調(diào)試器、VI編輯器
?
嵌入式C語(yǔ)言高級(jí)編程
?
1、C數(shù)據(jù)類(lèi)型、控制語(yǔ)句
2、C程序結(jié)構(gòu)設(shè)計(jì)、數(shù)組、函數(shù)、預(yù)處理
3、指針及字符串操作
4、結(jié)構(gòu)體、共用體、宏、枚舉
5、文件I/O操作
?
數(shù)據(jù)結(jié)構(gòu)及算法
?
1、數(shù)據(jù)結(jié)構(gòu)之單向鏈表、雙向鏈表
2、數(shù)據(jù)結(jié)構(gòu)之隊(duì)列、棧
3、數(shù)據(jù)結(jié)構(gòu)之樹(shù)、圖
4、算法之各種排序(選擇法、冒泡法、插入法等)
5、遞歸
6、算法之二分查找
?
第二階段:嵌入式設(shè)備及GUI開(kāi)發(fā)
?
嵌入式環(huán)境配置與開(kāi)發(fā)工具學(xué)習(xí)
?
Linux下項(xiàng)目管理工具M(jìn)ake以及Makefile工作原理及其編寫(xiě)Linux下shell腳本相關(guān)知識(shí)及其編寫(xiě)嵌入式開(kāi)發(fā)環(huán)境的基本概念及其搭建A53開(kāi)發(fā)板介紹、設(shè)備使用、A53開(kāi)發(fā)板與電腦通信、交叉編譯
?
GUI圖形界面開(kāi)發(fā)
?
常用控件——button、label、text edit等常用布局方式——水平布局、垂直布局、固定布局、網(wǎng)格布局、相對(duì)布局等常用事件及信號(hào)處理技術(shù)——信息回調(diào)、鼠標(biāo)、鍵盤(pán)事件等時(shí)間編程、數(shù)據(jù)存儲(chǔ)、繪圖機(jī)制、定時(shí)器處理、多任務(wù)處理等
?
第三階段:嵌入式Linux高級(jí)程序設(shè)計(jì)
?
1、Linux系統(tǒng)調(diào)用概念
2、進(jìn)程相關(guān)概念、多進(jìn)程實(shí)現(xiàn)多任務(wù)開(kāi)發(fā)
3、進(jìn)程間通信:無(wú)名管道、命名管道、信號(hào)、消息隊(duì)列、共享內(nèi)存等
4、多線(xiàn)程實(shí)現(xiàn)多任務(wù)開(kāi)發(fā)
5、多任務(wù)的同步互斥開(kāi)發(fā):互斥鎖、信號(hào)量
?
第四階段:Linux高級(jí)網(wǎng)絡(luò)程序設(shè)計(jì)
?
1、網(wǎng)絡(luò)相關(guān)概念及網(wǎng)絡(luò)發(fā)展
2、TCP/IP協(xié)議
3、socket編程、TCP網(wǎng)絡(luò)編程、UDP網(wǎng)絡(luò)編程、Web編程開(kāi)發(fā)等
4、Linux網(wǎng)絡(luò)應(yīng)用程序開(kāi)發(fā),Linux網(wǎng)絡(luò)編程相關(guān)5、TCP協(xié)議服務(wù)器的編程方法和并發(fā)服務(wù)器的實(shí)現(xiàn)
6、HTTP協(xié)議及其實(shí)現(xiàn)方法,熟悉UDP廣播、多播的原理及編程方法,掌握混合C/S架構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的設(shè)計(jì)
7、IPv6與IPv4協(xié)議,及其編程接口
8、網(wǎng)絡(luò)數(shù)據(jù)通信過(guò)程
9、網(wǎng)絡(luò)原始套接字概念及編程接口
?
第五階段:數(shù)據(jù)庫(kù)及web編程開(kāi)發(fā)
?
數(shù)據(jù)庫(kù)及web編程開(kāi)發(fā)
?
1、數(shù)據(jù)庫(kù)概念、數(shù)據(jù)庫(kù)類(lèi)型
2、Sqlite數(shù)據(jù)庫(kù)介紹及其安裝與移植
3、SQL數(shù)據(jù)庫(kù)語(yǔ)言(數(shù)據(jù)定義語(yǔ)言(DDL)、數(shù)據(jù)操作語(yǔ)言(DML)、數(shù)據(jù)查詢(xún)語(yǔ)言(DQL)、數(shù)據(jù)控制語(yǔ)言(DCL))br
4、Sqlite數(shù)據(jù)庫(kù)C語(yǔ)言編程中的各種SQL指令執(zhí)行函數(shù)完成對(duì)數(shù)據(jù)庫(kù)的控制
5、HTML語(yǔ)言開(kāi)發(fā)
6、Javascript語(yǔ)言開(kāi)發(fā)
7、AJAX開(kāi)發(fā)
8、cgi程序開(kāi)發(fā)
?
第六階段:C++面向?qū)ο蟾呒?jí)語(yǔ)言程序設(shè)計(jì)
?
1.熟悉面向?qū)ο蟮恼Z(yǔ)言概述
2.熟練掌握c++語(yǔ)言的基本知識(shí)和類(lèi)與對(duì)象及其高級(jí)應(yīng)用
3、作用域運(yùn)算符、內(nèi)聯(lián)函數(shù)、強(qiáng)制類(lèi)型轉(zhuǎn)換
4、new、delete內(nèi)存管理
5、對(duì)象成員、成員函數(shù)
6、構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、函數(shù)重載
7、對(duì)象數(shù)組、this指針、枚舉、
8、靜態(tài)成員、靜態(tài)成員函數(shù)
9、對(duì)象成員
10、友元
11、封裝、繼承、多繼承、多態(tài)
12、虛函數(shù)、純虛函數(shù)、抽象類(lèi)、虛析構(gòu)函數(shù)等
?
第七階段:物聯(lián)網(wǎng)
?
1、了解物聯(lián)網(wǎng)、泛在網(wǎng)、互聯(lián)網(wǎng)基本要領(lǐng)及其關(guān)系
2、熟悉RFID從低頻段到高頻段的基本工作原理,以及RFID標(biāo)簽的種類(lèi)與行業(yè)應(yīng)用,讀卡器原理與通信過(guò)程
3、熟悉TI的cc2530的基本應(yīng)用,包含基本硬件資源,協(xié)議棧相關(guān)接口使用,以及點(diǎn)對(duì)點(diǎn)通信、星形通信、廣播通信、綁定通信,三種網(wǎng)絡(luò)結(jié)構(gòu)star、tree、mesh,掌握zibgee相關(guān)微控制處理芯片
4、了解zigbe協(xié)議棧組成,以及zigbee在通信、組網(wǎng)、搖控等領(lǐng)域的不同應(yīng)用
5、通過(guò)Bluetooth、wifi和zigbee技術(shù)對(duì)比各自的優(yōu)缺點(diǎn),并重點(diǎn)介紹zigbee的各種應(yīng)用
6、掌握溫度、濕度、光照、PH值、二氧化碳等傳感器的工作原理及通信接口
7、了解NB-IOT基本概念及移運(yùn)BC95模塊
8、熟悉CoAP協(xié)議在NB-IOT中的應(yīng)用
9、掌握常用AT指定集
?
第八階段:CortexA53 Linux平臺(tái)驅(qū)動(dòng)開(kāi)發(fā)
?
1、了解ARM處理器基本特征及工作原理
2、掌握ARM裸機(jī)程序開(kāi)發(fā)以及裸機(jī)編譯工具的使用
3、嵌入式Bootloader原理分析及其移植
4、嵌入式Linux內(nèi)核結(jié)構(gòu)分析及其移植
5、掌握嵌入式Linux根文件系統(tǒng)組成分析及其制作過(guò)程
6、掌握嵌入式Linux三大類(lèi)設(shè)備驅(qū)動(dòng)基本概念
7、掌握Linux字符驅(qū)動(dòng)框架及GPIO輸入輸出驅(qū)動(dòng)
8、Linux中斷機(jī)制處理及響應(yīng)過(guò)程
9、Linux下SPI/IIC/UART串行通信技術(shù)驅(qū)動(dòng)編寫(xiě)與應(yīng)用
10、Linux下input設(shè)備驅(qū)動(dòng)框架介紹
11、Linux下platform機(jī)制設(shè)備驅(qū)動(dòng)框架介紹
12、Linux下kfifo緩沖機(jī)制、并發(fā)與競(jìng)態(tài)(如互斥鎖與信息號(hào)等)講解
13、Linux驅(qū)動(dòng)中的阻塞與非阻塞
14、Linux下塊設(shè)備驅(qū)動(dòng)框架——RAMdisk驅(qū)動(dòng)實(shí)例編寫(xiě)
15、USB設(shè)備硬件設(shè)計(jì)原理、驅(qū)動(dòng)協(xié)議架構(gòu)、驅(qū)動(dòng)開(kāi)以流程
16、了解Linux設(shè)備驅(qū)動(dòng)模型(kobject、kset、子系統(tǒng)、底層sysfs操作、虛擬總線(xiàn)等)
?
第九階段:項(xiàng)目實(shí)操
?
對(duì)于物聯(lián)網(wǎng)的學(xué)習(xí),很多小白無(wú)從下手,有了這個(gè)學(xué)習(xí)路線(xiàn)圖,可以先從基礎(chǔ)開(kāi)始學(xué)習(xí),慢慢加深。如果真的想學(xué)好物聯(lián)網(wǎng),是可以參考千鋒智聯(lián)物聯(lián)網(wǎng)嵌入式開(kāi)發(fā)提供的學(xué)習(xí)路線(xiàn),該學(xué)習(xí)路線(xiàn)羅列了各階段完整的物聯(lián)網(wǎng)學(xué)習(xí)知識(shí),根據(jù)千鋒提供的學(xué)習(xí)路線(xiàn)圖,可以增加你自己對(duì)于物聯(lián)網(wǎng)知識(shí)的快熟掌握,提高你的學(xué)習(xí)能力。
?

?領(lǐng)取方式
