一、準備
之前在網(wǎng)上找了很多關(guān)于ESP8266模塊和單片機互聯(lián)的資料,但是看完都一頭霧水,直到向買的店要了實例代碼后,才完成這一功能。對于我這樣的新手,單單看模塊說明書就寫出單片機中的相關(guān)代碼不要太難。本帖僅用于臨時使用卻找不到方法,而不是探究原理的愛好者們。需要準備的模塊有:ESP8266-01模塊、USB轉(zhuǎn)TTL模塊、單片機開發(fā)板或單片機學(xué)習(xí)板、LED燈、蜂鳴器、杜邦線,其他的可以自己加。
二、串口調(diào)試ESP
首先要用ESP8266模塊和USB轉(zhuǎn)TTL模塊進行串口調(diào)試,看你的wifi模塊是不是正常工作的。具體教程百度很多,我就不過多說明了。但是記得串口調(diào)試時候要把ESP8266的波特率改為9600,因為51單片機最大也就9600,而且試驗證明用單片機發(fā)送指令去修改波特率會有問題,保險點還是串口調(diào)試就修改好。除了波特率,其他的可以在單片機程序中設(shè)置。
1.jpg (159.94 KB, 下載次數(shù): 98)
下載附件
2019-5-31 16:44 上傳
上圖是ESP8266-01的接腳說明,在官方給的資料里有。串口調(diào)試時候接線方法為:CH_PD和VCC接3.3伏接口(模塊工作電壓3.3V,過高容易燒壞),esp的TXD接口接轉(zhuǎn)換模塊的RXD,esp的RXD接TXD,也就是讀接寫,寫接讀。不要接反。GND接GND,串口調(diào)試不是燒錄,不用接燒錄用的口。而且自己燒錄不熟練容易成板磚。
IMG_20190531_170220.jpg (4.48 MB, 下載次數(shù): 91)
下載附件
2019-5-31 17:05 上傳
esp8266-01串口調(diào)試圖.png (150.35 KB, 下載次數(shù): 94)
下載附件
2019-5-31 18:19 上傳
接好后,電源指示燈亮,串口的驅(qū)動玩單片機的應(yīng)該都裝好了,打開串口調(diào)試軟件sscom42,sscom其他版本也差不多。如果串口沒接好或者驅(qū)動不正常,軟件打開會提示無法找到串口,找到就正常進入。然后點擊軟件的打開串口按鈕,在“字符串輸入框”輸入:“AT”發(fā)送,返回“OK”,正常。然后輸入“AT+RST”發(fā)送,重啟。其他指令可以百度AT指令查看,或者在我的附件里有ESP8266的官方文件。
測試后一定要記得把波特率在串口調(diào)試中修改了,發(fā)送“AT+CIOBAUD=9600”,返回OK后修改波特率成功。
三、接入單片機
接入單片機的接線和串口大致一樣。CH_PD和VCC接3.3V,CH_PD最好先串聯(lián)一個10k電阻再接電源防止燒壞,如果單片機工作電壓是5V,最好再接一個三端穩(wěn)壓降壓模塊,把5V輸入,輸出3.3V給wifi模塊。在STC89C52RC單片機中,P3.0是RXD口,接Wifi模塊的TXD口。P3.1是TXD口,接Wifi模塊RXD口。記住度對寫,寫對讀。(燒錄單片機程序的時候要把wifi模塊接的P3.0和P3.1接線拔了,因為燒錄用的模塊接口也是P3.0和P3.1,燒錄完再接上,不然會發(fā)現(xiàn)燒錄軟件沒反應(yīng))
QQ截圖20190531171918.png (122.91 KB, 下載次數(shù): 110)
下載附件
2019-5-31 17:19 上傳
esp8266-01單片機接線圖.png (148.45 KB, 下載次數(shù): 91)
下載附件
2019-5-31 18:19 上傳
接好了后,把LED燈和蜂鳴器也接好就行了。下面是程序。其中有幾個點注意,接收到的數(shù)據(jù)是字符串,不能直接進行整數(shù)的判斷,要轉(zhuǎn)換或者判斷字符再賦值整數(shù)。代碼中可以設(shè)置端口號,這里是8080,。IP地址我沒有改,是官方默認的192.168.4.1。下載一個手機的串口調(diào)試助手,你也可以自己寫一個,用E4A中文編碼很適合初學(xué)者。選擇TCP調(diào)試。連接小車的wifi,(wifi名字一般帶ESP8266,也可以串口調(diào)試時候自己改)然后輸入IP和端口,連接,發(fā)送字符“0”、“1”、“2”進行測試。
截屏_20190531_174321.jpg (414.96 KB, 下載次數(shù): 104)
下載附件
2019-5-31 17:45 上傳
截屏_20190531_174328.jpg (175.15 KB, 下載次數(shù): 105)
下載附件
2019-5-31 17:45 上傳
單片機源程序如下:
|