? ? ? ?常用的AT指令集 ? ?
? ?ESP8266封裝方式多樣,天線可支持板載PCB天線,IPEX接口和郵票孔接口三種形式;
ESP8266可廣泛應(yīng)用于智能電網(wǎng)、智能交通、智能家具、手持設(shè)備、工業(yè)控制等領(lǐng)域。
其實(shí),這些都是浮云,最大的優(yōu)點(diǎn)是它是一款非常廉價(jià)的WIFI串口解決方案模塊,適合種學(xué)生開發(fā)者~
AT指令調(diào)試(初步開發(fā))
ESP8266本身就是一個(gè)mcu,所以它可以有兩種用途:
1.當(dāng)成一個(gè)普通的wifi模塊,用官方集成的AT指令集進(jìn)行開發(fā);
2.當(dāng)成一個(gè)集成了wifi功能的mcu,用安信可或其他平臺(tái)提供的sdk進(jìn)行深度開發(fā)。
由于由淺入深,今天先總結(jié)下常用AT指令的開發(fā)過程。
先連接好電路,注意將GPIO0腳懸空,用串口調(diào)試助手發(fā)送AT指令,默認(rèn)波特率為115200,設(shè)置好之后才可以進(jìn)行正常通訊。
下面我將列出常用的AT指令集:
AT+GMR ----------- ------- 查看版本信息
AT+CWMODE=? ---------- ---響應(yīng)返回當(dāng)前可支持哪些模式
AT+CWMODE=《mode》 --- ---參數(shù)說明
《mode》
1 Station 模式; 2 AP 模式; 3 AP 兼 Station 模式;
AT+ CWJAP =《ssid》,《 pwd 》 ----參數(shù)說明
《ssid》字符串參數(shù),接入點(diǎn)名稱
《pwd》字符串參數(shù),密碼最長 64 字節(jié) ASCII
AT+CIPSTART=? ----------設(shè)置 AT+CIPMUX=0
+CIPSTART:
?。ā秚ype》取值列表), (《IP address》范圍), (《port》范圍)
AT+ CIPSERVER=《mode》,《port》--參數(shù)說明
《mode》 0 --關(guān)閉 server 模式 ; 1 --開啟 server 模式
《port》 端口號(hào),缺省值為 333
AT+CIPSTO=《time》-------------參數(shù)說明
《 time》 0~28800 服務(wù)器超時(shí)時(shí)間,單位為 s
AT+CIPMODE=《mode》----------參數(shù)說明
《mode》 0-- 非透傳模式 ; 1 --透傳模式
ESP8266指令集主要分為:基礎(chǔ)AT命令、Wife功能AT命令、Top/IP工具箱AT命令
一、基礎(chǔ)AT指令
1. AT:測(cè)試AT啟動(dòng),返回OK
2. AT+RST:重啟模塊,返回OK
3. AT+GMR:查看版本信息,返回 OK ,為8位版本號(hào)
二、wifi功能AT指令
1. AT+CWMODE?:查詢WIFI應(yīng)用模式,返回+CWMODE:OK
2. AT+CUMODE=:設(shè)置wifi應(yīng)用模式,返回OK;指令重啟后生效,mode:1.Station模式,2.AP模式,3.AP+Station兼容模式,備注,station:客戶端,AP:服務(wù)器;
Station模式下:
3. AT+CWJAP?:查詢當(dāng)前選擇的AP,返回+CWJAP:OK
4. AT+CWJAP=”ssid”,”pwd”:加入AP,返回OK或ERROR;ssid:接入點(diǎn)名稱,pwd:密碼最長64字節(jié)ASCII
5. AT+CWLAP:列出當(dāng)前可用AP,返回+CWLAP:,,OK/ERROR;ecn:0.OPEN,1.WEP,2.WPA_PSK,3.WPA2_PSK,4.WPA_WPA2_PSK;ssid:接入點(diǎn)名稱;rssi:信號(hào)強(qiáng)度
6. AT+CWQAP:退出與AP的連接,返回OK
AP模式下:
7. AT+CWSAP?:查詢當(dāng)前AP模式下的參數(shù),返回+CWSAP:,,,;
8. AT+CWSAP=”ssid”,”pwd”,”chl”,”ecn”:設(shè)置AP參數(shù),返回OK/ERROR;ssid:接入點(diǎn)名稱;pwd:密碼最長64字節(jié)ASCII;chl:通道號(hào);ecn:0.OPEN,1.WEP,2.WPA_PSK,3.WPA2_PSK,
4.WPA_WPA2_PSK;
9. AT+CWLIF:查看已接入設(shè)備的IP,返回 OK
三、TCP/IP工具箱AT指令
1. AT+CIPSTATUS:獲得連接狀態(tài)和連接參數(shù),返回STATUS:+CIPSTATUS:,”type”,”addr”,, OK;id:連接的id號(hào)0-4;type:TCP或UDP;addr:IP地址;port:端口號(hào);tetype:0.本模塊做client的連接,1.本模塊做server的連接
2. 單路連接:AT+CIPSTART=”type”,”addr”,:建立TCP連接或注冊(cè)UDP端口號(hào),返回OK/ERROR/ALREAY CONNECT;id:連接的id號(hào)0-4;type:TCP/UDP;addr:遠(yuǎn)程服務(wù)器ip地址;port:遠(yuǎn)程服務(wù)器端口號(hào)
3. 多路連接:AT+CIPSTART=”type”,”addr”,,返回,同上
4. 單路連接:AT+CIPSEND=:發(fā)送數(shù)據(jù),返回,換行返回》,ERROR/SENDOK;
5. 多路連接:AT+CIPSEND=,:id:用于傳輸連接的id號(hào)
6. 透傳模式:AT+CIPSEND:發(fā)送數(shù)據(jù),返回收到次命令后先換行返回》,然后進(jìn)入透傳模式,每包數(shù)據(jù)以20ms間隔區(qū)分,每包最大2048字節(jié),當(dāng)輸入單獨(dú)一包”+++”返回指令模式,該指令必須在開啟透傳模式以及單連接模式下使用
7. 多路連接:AT+CIPCLOSE=:關(guān)閉TCP/UDP,返回,OK/Link is not;id:需要關(guān)閉的連接id,id=5時(shí)關(guān)閉所有連接(開啟server后id=5無效)
8. 單路連接:AT+CIPCLOSE:關(guān)閉TCP/UDP,返回,OK/ERROR/unlink
9. AT+CIFSR:獲取本地IP地址,返回+CIFSR: OK/ERROR,IP addr:本機(jī)ip地址(station),AP模式無效
10. AT+CIPMUX=:啟動(dòng)多連接,返回OK/Link isbuilded;mode:0.單路連接模式,1.多路連接模式;備注,只有當(dāng)連接都斷開后才能更改,如果開啟過server需要重啟模塊
11. AT+CIPSERVER=[,]:配置為服務(wù)器,返回OK,關(guān)閉server需重啟,mode:0.關(guān)閉server模式,1.開啟server模式;port:端口號(hào),缺省值為333;備注:開啟server后自動(dòng)建立server監(jiān)聽,當(dāng)有client接入會(huì)自動(dòng)按順序占用一個(gè)連接,多連接模式才能開啟服務(wù)器;
12. AT+CIPMODE:設(shè)置模塊傳輸模式,返回OK/Link isbuilded;mode:0.非透傳模式,1.透傳模式
13. AT+CIPSTO=:設(shè)置服務(wù)器超時(shí)時(shí)間,返回OK,0~28800服務(wù)器超時(shí)時(shí)間,單位為s
14. 單連接模式:+IPD,::接收到網(wǎng)絡(luò)數(shù)據(jù),返回 網(wǎng)絡(luò)數(shù)據(jù)向模塊串口發(fā)送的+IPD和數(shù)據(jù),收到連接的id號(hào),數(shù)據(jù)長度,收到的數(shù)據(jù)
15. 多連接模式:+IPD,,:
ESP8266是塊很有開發(fā)價(jià)值的芯片,值得我們深入學(xué)習(xí)和改造~當(dāng)然,AT指令開發(fā)還需要一定的單片機(jī)基礎(chǔ),對(duì)此我就不多贅述了。
ESP8266使用AT指令開發(fā)示例
一。 智能配網(wǎng)(Smartconfig)示例
說明:使用兩種方式進(jìn)行配網(wǎng),樂鑫ESP-Touch和微信Airkiss。
方式1:ESP-Touch
1,AT+CWMODE_DEF=1 ?。?!配置WiFi模組工作模式為單STA模式,并把配置保存在flash
2,AT+CWAUTOCONN=1 ?。?!使能上電自動(dòng)連接AP
3,AT+CWSTARTSMART=3 ??!支持ESP-Touch和Airkiss智能配網(wǎng)
4,手機(jī)連上需要配網(wǎng)的AP,打開手機(jī)APP ESP-Touch 輸入密碼,點(diǎn)擊確定,等待配網(wǎng)成功,見圖1
5,AT+CWSTOPSMART ??!無論配網(wǎng)是否成功,都需要釋放快連所占的內(nèi)存,見圖2
6,AT+CIPSTATUS ?。?!查詢網(wǎng)絡(luò)連接狀態(tài)
方式2:Airkiss
1,AT+CWMODE_DEF=1 ?。?!配置WiFi模組工作模式為單STA模式,并把配置保存在flash
2,AT+CWAUTOCONN=1 ??!使能上電自動(dòng)連接AP
3,AT+CWSTARTSMART=3 ?。。≈С諩SP-Touch和Airkiss智能配網(wǎng)
4,打開微信,關(guān)注微信公眾號(hào)“安信可科技”,點(diǎn)擊wifi配置,點(diǎn)擊開始配置,輸入密碼,點(diǎn)擊連接, 見圖3
5,AT+CWSTOPSMART ?。。o論配網(wǎng)是否成功,都需要釋放快連所占的內(nèi)存
6,AT+CIPSTATUS ??!查詢網(wǎng)絡(luò)連接狀態(tài),如圖4
二。 HTTP通信示例
1,AT+GMR ?。。?dòng)查詢版本信息
AT version:1.2.0.0(Jul 1 2016 20:04:45)
SDK version:1.5.4.1(39cb9a32)
Ai-Thinker Technology Co., Ltd.
Integrated AiCloud 2.0 v0.0.0.5
Build:1.5.4.1 Mar 24 2017 11:06:56
OK
2,AT+CWMODE_DEF=1 ?。?!配置WiFi模組工作模式為單STA模式,并把配置保存在flash
OK
3,AT+CWJAP_DEF=“newifi_F8A0”,“anxinke123” ??!連接網(wǎng)絡(luò)
WIFI CONNECTED
WIFI GOT IP
OK
4,AT+CWAUTOCONN=1 ?。。∈鼓苌想娮詣?dòng)連接AP
OK
5,AT+CIPSTART=“TCP”,“183.230.40.33”,80 ??!連接服務(wù)器
CONNECT
OK
6,AT+CIPMODE=1 ?。?!設(shè)置透傳
OK
7,AT+CIPSEND ?。?!啟動(dòng)發(fā)送
OK
8,》 GET請(qǐng)求
GET /devices/5835707 HTTP/1.1
api-key: xUrvOCDB=iRuS5noq9FsKrvoW=s=
Host:api.heclouds.com
\r\n\r\n(結(jié)束)
回應(yīng):
HTTP/1.1 200 OK
Date: Tue, 09 May 2017 01:21:06 GMT
Content-Type: application/json
Content-Length: 213
Connection: keep-alive
Server: Apache-Coyote/1.1
Pragma: no-cache
{“errno”:0,“data”:{“private”:false,“protocol”:“EDP”,“create_time”:“2017-05-06 12:51:52”,“online”:false,“l(fā)ocation”:{“l(fā)on”:0,“l(fā)at”:0},“id”:“5835707”,“auth_info”:“Light001”,“title”:“SLight”,“tags”:[]},“error”:“succ”}
9,》POST請(qǐng)求
POST /devices/5835707/datapoints HTTP/1.1
api-key: xUrvOCDB=iRuS5noq9FsKrvoW=s=
Host:api.heclouds.com
Content-Length:60
\r\n
{“datastreams”:[{“id”:“switch”,“datapoints”:[{“value”:1}]}]}|(結(jié)束)
回應(yīng):
HTTP/1.1 200 OK
Date: Tue, 09 May 2017 01:28:42 GMT
Content-Type: application/json
Content-Length: 26
Connection: keep-alive
Server: Apache-Coyote/1.1
Pragma: no-cache
{“errno”:0,“error”:“succ”}
10, +++ ?。。⊥顺鐾競?,不要勾選新行(\r\n)
三.STA+連接TCP Server
1,AT+CWMODE_DEF=1 ?。?!工作在單station模組,設(shè)置參數(shù)保存到flash
2,AT+CWJAP_DEF=“newifi_F8A0”,“anxinke123” ?。?!連接路由器,保存到flash
3,AT+CIPSTART=“TCP”,“192.168.99.217”,6001 ?。?!連接TCP服務(wù)器,本實(shí)驗(yàn)用網(wǎng)絡(luò)調(diào)試助手進(jìn)行測(cè)試
4,AT+CIPSEND=5 ?。。》绞揭唬喊l(fā)送指定數(shù)據(jù)長度的數(shù)據(jù)(Data:test1),見圖1
5,AT+CIPMODE=1 ?。。》绞蕉菏褂猛競髂J桨l(fā)送數(shù)據(jù)
6,AT+CIPSEND ?。?!發(fā)送數(shù)據(jù)(Data:Test2),見上圖1:
7,發(fā)送:+++ ??!退出透傳發(fā)送三個(gè)連續(xù)的+++,不要勾選新行(\r\n),見下圖:
8,退出成功,即可發(fā)送AT指令
評(píng)論
查看更多