通信——物聯網之魂¶
我們接下來的這一章,將要為大家介紹常用的幾種通信協議。
大體上可以分為兩類:
-
有線通信
-
無線網絡通信
為什么要講通信呢,相信本篇的題目已經說的很明白了。
我們的單片機,PC,服務器之間,只有相互建立起穩定有效的通信,才能夠互相協作,構建出美妙的物聯網絡。
怎么樣才能夠很好的理解通信 ,和通信協議呢?筆者不妨為大家做如下的比喻:
什么是通信¶
通信的目的是為了傳遞信息。
通信雙方是兩個計算設備實體,比如PC,服務器,單片機,你的NodeMCU-32S。 假設我們有兩個設備需要通信,分別是設備A,設備B,他們之間需要傳遞信息S。
我們把信息S比喻成一個實際的包裹,假如是你雙十一剁手買的一個包裹。
設備A比喻成你買東西的發貨地,比如上海。
設備B比喻成你的收獲地址,比如你家樓下的快遞簽收點。
那么設備A與設備B之間的傳遞信息S的過程,便可以等價的理解為你買的包裹從上海寄到你家的過程。
現在我們繼續以此比喻,來進行如下概念的理解。
什么是通信方式¶
你買的包裹在寄送過程中的運輸方式,就類比于我們這里要講的通信方式。比如,你的快遞可以走:
-
空運,空運需要飛機
-
可以走海運,需要有船
-
還可以走公路運輸,需要有路有車
-
鐵路運輸,需要有鐵軌和火車
我們的通信方式有很多種,比如通過
-
WiFi網絡通信,需要有WiFi模塊
-
通過有線的網絡通信,需要你有網線和網卡
-
藍牙通信,需要有藍牙模塊
-
串口通信,需要有導線
什么是通信協議¶
-
你的快遞如果走空運,空運的方式就要遵守航空運輸規則,比如飛機要如何安全起飛降落,走哪個航線,貨物的擺放要重量左右均勻對稱等。
-
如果走公路運輸,這種運輸方式可能需要遵守公路上的交通法規,比如靠右行駛,紅燈停綠燈行,高速路上不允許超過最大時速,不允許超載,保證最小車距,不允許疲勞駕駛等等。
...
通信協議即類比于某種交通方式所對應的交通規則。自然不同的通信方式都擁有自己不同的通信協議。
本章內容¶
當你明白了上面的比喻之后,應該可以很清楚知道通信和通信協議的概念了。那么本章之后,主要為大家介紹了幾種常用的總線協議,以及幾種網絡通信協議:
-
UART
-
I2C
-
SPI
-
Sockets
-
HTTP
-
MQTT