一、Wi-Fi通信
Wi-Fi是一種無(wú)線局域網(wǎng)技術(shù),它可以讓設(shè)備在一定范圍內(nèi)通過(guò)無(wú)線電波進(jìn)行數(shù)據(jù)傳輸。Wi-Fi遵循IEEE 802.11標(biāo)準(zhǔn),目前常見(jiàn)的有802.11b/g/n等協(xié)議。不同的協(xié)議有不同的頻率、速率和兼容性。
ESP8266支持802.11b/g/n協(xié)議,可以工作在2.4GHz頻段。它可以作為一個(gè)Wi-Fi客戶端(Station,STA)或者一個(gè)Wi-Fi熱點(diǎn)(Access Point,AP),也可以同時(shí)兼具兩種角色(STA+AP)。不同的工作模式有不同的功能和應(yīng)用場(chǎng)景。
1.1 STA模式
STA模式是指ESP8266作為一個(gè)Wi-Fi客戶端,連接到一個(gè)已存在的Wi-Fi熱點(diǎn),例如路由器或者手機(jī)。這樣,ESP8266就可以通過(guò)熱點(diǎn)訪問(wèn)互聯(lián)網(wǎng),或者與其他連接到同一個(gè)熱點(diǎn)的設(shè)備進(jìn)行通信。
要使用STA模式,需要知道熱點(diǎn)的SSID(網(wǎng)絡(luò)名稱)和密碼(如果有的話)。ESP8266提供了一些AT指令來(lái)設(shè)置和查詢STA模式的相關(guān)參數(shù),例如:
- AT+CWJAP=“SSID”,“PASSWORD”:連接到指定的熱點(diǎn)
- AT+CWJAP?:查詢當(dāng)前連接的熱點(diǎn)信息
- AT+CWQAP:斷開(kāi)當(dāng)前連接的熱點(diǎn)
- AT+CWLAP:掃描附近可用的熱點(diǎn)
- AT+CIPSTA=“IP”,“GATEWAY”,“NETMASK”:設(shè)置STA模式下的IP地址、網(wǎng)關(guān)和子網(wǎng)掩碼
- AT+CIPSTA?:查詢STA模式下的IP地址、網(wǎng)關(guān)和子網(wǎng)掩碼
1.2 AP模式
AP模式是指ESP8266作為一個(gè)Wi-Fi熱點(diǎn),提供無(wú)線網(wǎng)絡(luò)服務(wù)給其他設(shè)備。這樣,其他設(shè)備就可以連接到ESP8266,或者通過(guò)ESP8266訪問(wèn)互聯(lián)網(wǎng)(如果ESP8266同時(shí)連接了另一個(gè)熱點(diǎn))。
要使用AP模式,需要設(shè)置ESP8266的SSID(網(wǎng)絡(luò)名稱)、密碼(如果有的話)、加密方式(默認(rèn)為WPA2-PSK)、信道(默認(rèn)為1)等參數(shù)。ESP8266提供了一些AT指令來(lái)設(shè)置和查詢AP模式的相關(guān)參數(shù),例如:
- AT+CWSAP=“SSID”,“PASSWORD”,CHANNEL,ENCRYPTION:設(shè)置AP模式下的SSID、密碼、信道和加密方式
- AT+CWSAP?:查詢AP模式下的SSID、密碼、信道和加密方式
- AT+CWLIF:查詢當(dāng)前連接到ESP8266的設(shè)備列表
- AT+CIPAP=“IP”,“GATEWAY”,“NETMASK”:設(shè)置AP模式下的IP地址、網(wǎng)關(guān)和子網(wǎng)掩碼
- AT+CIPAP?:查詢AP模式下的IP地址、網(wǎng)關(guān)和子網(wǎng)掩碼
1.3 STA+AP模式
STA+AP模式是指ESP8266同時(shí)兼具STA和AP兩種角色。這樣,ESP8266既可以連接到一個(gè)外部熱點(diǎn),也可以提供一個(gè)內(nèi)部熱點(diǎn)。這種模式可以實(shí)現(xiàn)設(shè)備之間的橋接功能,例如將有線網(wǎng)絡(luò)轉(zhuǎn)換為無(wú)線網(wǎng)絡(luò),或者將一個(gè)無(wú)線網(wǎng)絡(luò)擴(kuò)展到另一個(gè)無(wú)線網(wǎng)絡(luò)。
要使用STA+AP模式,需要分別設(shè)置STA和AP兩種模式的相關(guān)參數(shù),參考前面的介紹。ESP8266提供了一些AT指令來(lái)設(shè)置和查詢STA+AP模式的相關(guān)參數(shù),例如:
- AT+CWMODE=3:設(shè)置工作模式為STA+AP
- AT+CWMODE?:查詢當(dāng)前工作模式
- AT+CIPAPMAC=“MAC”:設(shè)置AP模式下的MAC地址
- AT+CIPAPMAC?:查詢AP模式下的MAC地址
- AT+CIPSTAMAC=“MAC”:設(shè)置STA模式下的MAC地址
- AT+CIPSTAMAC?:查詢STA模式下的MAC地址
二、TCP/IP協(xié)議棧
TCP/IP是一種網(wǎng)絡(luò)通信協(xié)議,它定義了不同設(shè)備之間如何進(jìn)行數(shù)據(jù)交換。TCP/IP由四層組成,分別是鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層。每一層都有不同的功能和協(xié)議,例如:
- 鏈路層:負(fù)責(zé)在物理介質(zhì)上發(fā)送和接收數(shù)據(jù)幀,例如以太網(wǎng)、Wi-Fi等
- 網(wǎng)絡(luò)層:負(fù)責(zé)在不同網(wǎng)絡(luò)之間傳輸數(shù)據(jù)包,例如IP協(xié)議、ICMP協(xié)議等
- 傳輸層:負(fù)責(zé)在兩個(gè)端點(diǎn)之間建立可靠或不可靠的連接,例如TCP協(xié)議、UDP協(xié)議等
- 應(yīng)用層:負(fù)責(zé)提供具體的應(yīng)用服務(wù),例如HTTP協(xié)議、FTP協(xié)議、MQTT協(xié)議等
ESP8266內(nèi)置了TCP/IP協(xié)議棧,可以實(shí)現(xiàn)各種網(wǎng)絡(luò)通信功能。ESP8266提供了一些AT指令來(lái)設(shè)置和查詢TCP/IP協(xié)議棧的相關(guān)參數(shù),例如:
- AT+CIPSTATUS:查詢當(dāng)前連接狀態(tài)
- AT+CIPSTART=“TYPE”,“ADDRESS”,PORT:建立一個(gè)TCP或UDP連接
- AT+CIPCLOSE:關(guān)閉一個(gè)TCP或UDP連接
- AT+CIPSEND=LENGTH:發(fā)送指定長(zhǎng)度的數(shù)據(jù)
- AT+CIPMUX=MODE:設(shè)置單連接或多連接模式
- AT+CIPSERVER=MODE,PORT:開(kāi)啟或關(guān)閉服務(wù)器模式
三、實(shí)驗(yàn)步驟
本文將通過(guò)一個(gè)簡(jiǎn)單的實(shí)驗(yàn)來(lái)演示ESP8266的Wi-Fi通信和TCP/IP協(xié)議棧的使用方法。實(shí)驗(yàn)?zāi)康氖亲孍SP8266連接到一個(gè)Wi-Fi熱點(diǎn),并與一個(gè)PC端進(jìn)行TCP通信,發(fā)送和接收數(shù)據(jù)。
實(shí)驗(yàn)所需的硬件和軟件如下:
- ESP8266開(kāi)發(fā)板(本文使用NodeMCU)
- USB數(shù)據(jù)線
- PC端(本文使用Windows 10)
- 串口調(diào)試工具(本文使用SSCOM)
- Wi-Fi熱點(diǎn)(本文使用手機(jī))
實(shí)驗(yàn)步驟如下:
- 將ESP8266開(kāi)發(fā)板通過(guò)USB數(shù)據(jù)線連接到PC端,并安裝相應(yīng)的驅(qū)動(dòng)程序。
- 打開(kāi)SSCOM軟件,選擇正確的串口號(hào)和波特率(默認(rèn)為115200),并打開(kāi)串口。
- 在SSCOM軟件中輸入AT指令,測(cè)試ESP8266是否正常工作。如果返回OK,則表示正常。
- 在SSCOM軟件中輸入AT+CWJAP=“SSID”,"PASSWORD"指令,讓ESP8266連接到指定的Wi-Fi熱點(diǎn)。如果返回OK,則表示連接成功。
- 在SSCOM軟件中輸入AT+CIFSR指令,查詢ESP8266在STA模式下的IP地址。記下這個(gè)IP地址,后面會(huì)用到。
自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過(guò),也去過(guò)華為、OPPO等大廠,18年進(jìn)入阿里一直到現(xiàn)在。
深知大多數(shù)嵌入式工程師,想要提升技能,往往是自己摸索成長(zhǎng)或者是報(bào)班學(xué)習(xí),但對(duì)于培訓(xùn)機(jī)構(gòu)動(dòng)則幾千的學(xué)費(fèi),著實(shí)壓力不小。自己不成體系的自學(xué)效果低效又漫長(zhǎng),而且極易碰到天花板技術(shù)停滯不前!
因此收集整理了一份《2024年嵌入式&物聯(lián)網(wǎng)開(kāi)發(fā)全套學(xué)習(xí)資料》,初衷也很簡(jiǎn)單,就是希望能夠幫助到想自學(xué)提升又不知道該從何學(xué)起的朋友,同時(shí)減輕大家的負(fù)擔(dān)。
既有適合小白學(xué)習(xí)的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗(yàn)的小伙伴深入學(xué)習(xí)提升的進(jìn)階課程,基本涵蓋了95%以上嵌入式&物聯(lián)網(wǎng)開(kāi)發(fā)知識(shí)點(diǎn),真正體系化!
由于文件比較大,這里只是將部分目錄大綱截圖出來(lái),每個(gè)節(jié)點(diǎn)里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實(shí)戰(zhàn)項(xiàng)目、講解視頻,并且后續(xù)會(huì)持續(xù)更新
如果你覺(jué)得這些內(nèi)容對(duì)你有幫助,可以+V:Vip1104z獲?。。?! (備注:嵌入式)

最后
資料整理不易,覺(jué)得有幫助的朋友可以幫忙點(diǎn)贊分享支持一下小編~
你的支持,我的動(dòng)力;祝各位前程似錦,offer不斷,步步高升?。?!文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-859962.html
44156ee24.jpg" alt=“img” style=“zoom: 67%;” />
最后
資料整理不易,覺(jué)得有幫助的朋友可以幫忙點(diǎn)贊分享支持一下小編~
你的支持,我的動(dòng)力;祝各位前程似錦,offer不斷,步步高升?。?!
更多資料點(diǎn)擊此處獲qu!!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-859962.html
到了這里,關(guān)于【ESP8266 (12F)】Wi-Fi通信與TCP IP協(xié)議棧(測(cè)試文章)_esp8266的通信協(xié)議(2)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!