一句話(huà)答案:利用Socket協(xié)議來(lái)實(shí)現(xiàn)數(shù)據(jù)互通!
這個(gè)問(wèn)題想要講解清楚比較復(fù)雜,我們來(lái)嘗試用盡量簡(jiǎn)單的方式來(lái)闡述
要弄懂這個(gè)問(wèn)題,我們需要具備一些基本知識(shí):
-Socket協(xié)議
-網(wǎng)絡(luò)通信知識(shí)
-Arduino相關(guān)知識(shí)
-Wifi工作原理
先上一個(gè)原理圖
準(zhǔn)備材料:
-無(wú)線路由AP,負(fù)責(zé)提供網(wǎng)絡(luò)和Wifi信號(hào)
-電腦一臺(tái),負(fù)責(zé)充當(dāng)Socket服務(wù)
-Arduino+Wifi模塊
在電腦上建立Socket的方式有很多:用程序自己寫(xiě)一個(gè)/用現(xiàn)成的軟件模擬一個(gè)
本文重點(diǎn)不是討論代碼實(shí)現(xiàn),所以用一個(gè)現(xiàn)成的軟件來(lái)模擬:串口轉(zhuǎn)網(wǎng)絡(luò)調(diào)試助手
可以同時(shí)開(kāi)2個(gè)軟件來(lái)測(cè)試,一個(gè)建立Socket服務(wù),另一個(gè)建議SocketClient
就可以相互通信了,確認(rèn)Socket服務(wù)可用后,可以關(guān)掉一個(gè),只留下負(fù)責(zé)Socket服務(wù)的那個(gè),等待Arduino的Wifi來(lái)連接
電路大概是這個(gè)樣子的
一塊標(biāo)準(zhǔn)的Arduino板子,通過(guò)數(shù)字口(模擬串口)與Wifi模塊的串口連接
電路就大搭建完成了
-流程實(shí)現(xiàn)
初始化軟串口>根據(jù)Wifi的SSID和密碼連接上無(wú)線路由>通過(guò)Socket方式連接電腦(所在IP)的Socket服務(wù)>發(fā)送數(shù)據(jù)>接收數(shù)據(jù)>完成
-代碼參考
小結(jié):
-需要電腦提供Socket服務(wù)
-Arduino驅(qū)動(dòng)Wifi模塊
-利用Socket協(xié)議建議Arduino與電腦的連接
-電腦和Arduino要在同一個(gè)網(wǎng)絡(luò)內(nèi)(或可互相訪問(wèn)的IP段內(nèi))
達(dá)成以上條件,Arduino和電腦就可以利用Wifi數(shù)據(jù)互通了