一.需要的軟件及硬件
1.軟件
本次軟件是需要串口調(diào)試助手,網(wǎng)絡(luò)調(diào)試助手,KEIL5
????????????????????????????下面圖標(biāo)依次排列
2.硬件
本次硬件是需要一個(gè)ESP8266模塊,一個(gè)stm32f103c8t6芯片,一個(gè)USB轉(zhuǎn)TTL模塊
二.ESP8266的使用
1.ESP8266的介紹
ESP8266是一個(gè)微小的且集成的國產(chǎn)WIFI模塊,它有很多種型號,但是使用方法沒什么太大的區(qū)別,也可以說沒區(qū)別,有些看起來引腳比較多的ESP8266模塊只是將這個(gè)芯片的IO口拓展出來了而已。還有一種原因就是它采用的是Micropython編程的ESP8266模塊。因此,這里我就不深入去說每一種ESP8266模塊了,因?yàn)橛梅◣缀醵疾畈欢?,這里我以下都是用的ESP8266-01S來敘述。
? ? ? ? ? ? ? ESP8266-01圖片(外形和01S的一樣)
2.ESP8266進(jìn)行初始AT指令的配置步驟
這里我就先演示ESP8266作為從機(jī)的通信配置,余下的作為主機(jī)的配置與這個(gè)從機(jī)配置都是一個(gè)道理,所以下面就先講ESP8266作為從機(jī)的配置為例子。
1. ?我們先拿出一個(gè)USB轉(zhuǎn)TTL(串口模塊)模塊,將ESP8266中RX與TX和串口模塊的RX與TX相連,不要連接錯(cuò)誤,要RX與對應(yīng)的TX相連,然后ESP8266的GND與串口模塊的GND相連,3V3與vcc相連。這里不知道什么原因,如果按照3V3接3V3就會在串口調(diào)試助手找不到串口號,只有連接到vcc上才能正常使用,可能是因?yàn)榇谀K那里的3V3電壓沒有到達(dá)3.3V。這里最好不要接高于3.3V的電壓,如果不確定你所用的ESP8266模塊中是否有降壓模塊的話,還是不要用5V電壓。
2. ?之后我們先打開串口調(diào)試助手,并且勾選發(fā)送新行,這樣在發(fā)送一個(gè)數(shù)據(jù)時(shí)會在所發(fā)送的數(shù)據(jù)后面添加\n\r,這個(gè)\n\r在ESP8266那里檢測相當(dāng)于是接收一個(gè)完整數(shù)據(jù)的結(jié)束標(biāo)志,所以,如果這里發(fā)送數(shù)據(jù)結(jié)尾不加\n\r,那么這條AT指令就不會得到響應(yīng)。
3. ?在上一個(gè)步驟,我們將串口調(diào)試助手配置完成,然后我們開始第一步配置.
我們先在串口調(diào)試助手發(fā)送AT,看ESP8266會不會返回一個(gè)OK,如果正常返回了一個(gè)OK那說明是可以正常工作的。而如果沒有返回任何數(shù)據(jù),那么就先檢查一下串口線連接是否正確,還有線路是否連接良好,這樣排除了信號接觸不良的問題。然后再去排除看是不是串口調(diào)試助手勾選新行有沒有勾選錯(cuò)誤,最后如果這些都沒有問題,就可以考慮是ESP8266損壞了,但是一般如果是新買的這個(gè)模塊損壞的幾率很小,這里我就不多敘述了。
4. ?隨后我們發(fā)送AT+CWMODE=1,表示設(shè)置作為從機(jī),當(dāng)發(fā)送完,ESP8266同樣返回一個(gè)OK。
- ???在之后如果我們想電腦與ESP8266通信我們就需要將兩個(gè)設(shè)備都連接到同一個(gè)WIFI上,那么我為了方便演示就開了一個(gè)手機(jī)熱點(diǎn),我們就先將電腦連接上這個(gè)熱點(diǎn),然后我們打開串口調(diào)試助手,發(fā)送AT+CWJAP=“Mi 11”,“12345678”,這里的Mi 11是想要連接的網(wǎng)絡(luò)名稱,12345678是想要連接的網(wǎng)絡(luò)密碼,這里需要自行按照自己的意愿去更改一下網(wǎng)絡(luò)名稱和對應(yīng)密碼。同樣接下來通過串口助手發(fā)送過去,不過這次返回的不僅僅是一個(gè)OK了,而是返回幾句其它語句,這里如果操作正確的話,我們就可以打開手機(jī)查看連接設(shè)備上,看是否有一個(gè)開頭名為ESP的設(shè)備連接,如果有就說明連接完成了。這里注意一點(diǎn),就是連接網(wǎng)絡(luò)之后,如果將ESP8266斷電下次在上電,如果上次連接的網(wǎng)絡(luò)還存在,那么ESP8266會主動連接這個(gè)網(wǎng)絡(luò),不用在進(jìn)行AT指令讓其連接,但是如果為了確保每次連接的準(zhǔn)確性,還是每次都用AT指令連接最為保險(xiǎn)。
6.???? 接下來我們要得到我們電腦的IP地址,我們可以點(diǎn)擊電腦的WIFI頁面,點(diǎn)擊連接網(wǎng)絡(luò)的網(wǎng)絡(luò)屬性,可以看到下面信息有一個(gè)IPv4地址,這個(gè)就是電腦的網(wǎng)絡(luò)IP地址,我們只有將電腦的IP地址發(fā)給ESP8266,讓它知道自己這次是和連接在這個(gè)WIFI下的哪個(gè)IP地址的器件通信。這里為了防止小伙伴不理解IP的概念,我在詳細(xì)的解釋一下WIFI通信的這個(gè)IP的大概意思,其實(shí)這個(gè)每一個(gè)器件的IP相當(dāng)于是你連接的網(wǎng)絡(luò)分配的一個(gè)標(biāo)號,是獨(dú)一無二的,所以,這里如果想讓兩個(gè)器件進(jìn)行WIFI通信,那么這個(gè)WIFI網(wǎng)絡(luò)就相當(dāng)于一個(gè)中轉(zhuǎn)站,使兩個(gè)IP之間能進(jìn)行交流。而IP又對應(yīng)的是兩個(gè)不同的器件,從而也就構(gòu)建了兩個(gè)器件的無線通信,其實(shí)這里的IP和連接的網(wǎng)絡(luò)就可以想象成串口的兩個(gè)數(shù)據(jù)線,只是這里是一種隱形的線而已。這里要注意只有兩個(gè)器件都連接到同一網(wǎng)絡(luò)上,這個(gè)網(wǎng)絡(luò)才能當(dāng)作中轉(zhuǎn)站,給兩個(gè)器件進(jìn)行通信,如果連接到不同的網(wǎng)絡(luò)是不可以這樣通信的。
-
???接下來我們要打開一個(gè)網(wǎng)絡(luò)調(diào)試助手,最后我會將本篇文章所用到的軟件發(fā)出,所以現(xiàn)在可以去文章末尾去下載好全部軟件,我們在打開調(diào)試助手時(shí)要先讓電腦作為服務(wù)端,我們先將前面得到的IP地址輸入到網(wǎng)絡(luò)調(diào)試助手的服務(wù)端頁面的本機(jī)IP輸入框中,然后本機(jī)端口號這里可以寫8080,這個(gè)不一樣的端口號傳輸?shù)臄?shù)據(jù)類型是不一樣的,所以這里我們直接給個(gè)8080就可以了,如果想具體知道為什么用8080這個(gè)端口號可以自行學(xué)習(xí),這里由于篇幅有限就不細(xì)說了。緊接著剛才的步驟,我們下面就點(diǎn)擊一下監(jiān)聽,這時(shí)電腦就是在等待被連接的狀態(tài)。這里由于我們還沒有用AT指令去告訴ESP8266具體需要連接的電腦IP,所以現(xiàn)在電腦與ESP8266還沒有構(gòu)成連接。
-
???現(xiàn)在我們配置好了網(wǎng)絡(luò)調(diào)試助手那里,我們開始用串口調(diào)試助手向ESP8266發(fā)送AT+CIPSTART=“TCP”,“192.168.146.219”,8080這條AT指令,這里的192.168.146.219需要自行更改成自己電腦的IP地址,然后發(fā)送,此時(shí)會返回一個(gè)CONNECT OK,此時(shí),我們可以查看網(wǎng)絡(luò)調(diào)試助手那里的客戶端列表會多出一個(gè)IP,這個(gè)就是表明了ESP8266已經(jīng)與電腦構(gòu)成了連接,隨后,我們繼續(xù)用AT指令去開啟ESP8266的透傳功能,AT+CIPMODE=1(進(jìn)入透傳),在發(fā)送AT+CIPSEND(透傳開始),此時(shí),我們?nèi)绻麖囊贿叞l(fā)送一個(gè)數(shù)據(jù),另一邊就能受到一摸一樣的數(shù)據(jù)了。最后,解釋一下透傳功能,開啟了透傳功能就相當(dāng)于一邊隨便發(fā)送什么,另一邊就能一摸一樣的接收到什么,不會改變一點(diǎn)數(shù)據(jù)內(nèi)容。這樣就不會像串口那樣兩方必須規(guī)定相同的波特率,在發(fā)送數(shù)據(jù),接收方才會得到準(zhǔn)確數(shù)據(jù)。并且有些時(shí)候還需要改變傳輸?shù)臄?shù)據(jù)來加入數(shù)據(jù)結(jié)束標(biāo)志,比如說\n\r或者自行定義的結(jié)束標(biāo)志符。
9.我們可以在串口調(diào)試助手或者網(wǎng)絡(luò)調(diào)試助手的任意一個(gè)輸入框發(fā)送任意數(shù)據(jù),看是否另一邊收到了同樣的數(shù)據(jù)。收到了就完成了雙方的通信。但是現(xiàn)在兩個(gè)之間發(fā)送中文是不可行的,其它的英文和數(shù)字是可行的,但是用STM32與串口通信通過代碼就可以使串口接收到中文。這里可以在詳細(xì)查閱一下資料。
???????????????????用串口調(diào)試助手向網(wǎng)絡(luò)調(diào)試助手發(fā)送數(shù)據(jù)
?????????????????????用網(wǎng)絡(luò)調(diào)試助手向串口調(diào)試助手發(fā)送數(shù)據(jù)
文章來源:http://www.zghlxwxcb.cn/news/detail-418870.html
三.所用軟件安裝分享
下面是軟件安裝的百度網(wǎng)盤鏈接,這里一個(gè)是串口調(diào)試助手,一個(gè)是網(wǎng)絡(luò)調(diào)試助手。這篇文章是ESP8266與電腦的通信,下一篇文章會更進(jìn)一步,ESP8266與STM32進(jìn)行通信,如果覺得我這篇文章敘述的還算可以,希望可以關(guān)注一下我的下一篇ESP8266的應(yīng)用文章。如果哪里有問題可以進(jìn)行評論和批評指正。
鏈接:https://pan.baidu.com/s/1vyGFOmceXmlAlKZn5Myebw?pwd=0508
提取碼:0508文章來源地址http://www.zghlxwxcb.cn/news/detail-418870.html
到了這里,關(guān)于ESP8266初次如何實(shí)現(xiàn)無線通信(基于電腦與ESP8266)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!