久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10041|回復: 5
打印 上一主題 下一主題
收起左側

ESP8266調試全過程指導(補全)

  [復制鏈接]
跳轉到指定樓層
樓主
ID:396273 發表于 2018-11-13 00:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
ESP8266 調試全過程 – 使用指導                  
上電:正常工作驗證
本模塊可以工作在三種模式:1. STA  2 .AP  3 .AP+STA,出廠設置為第三種
上電后,藍色燈微弱閃爍后熄滅,紅燈長亮
1. 搜索無線網絡,可見ESP_XXXXXX已經處于列表中(后面的數字是MAC地址后幾位)

連接該網絡以后,查看連接狀態:

手機搜索該網絡,也可連接上:

  • 使用串口軟件進行測試:
軟件配置如下圖:
注意:(1)波特率一般在出廠情況下默認的是115200。如果在115200情況下收到的是亂碼可以試試其他波特率(舊版本的默認波特率可能是其他數值)。
(2)在輸入命令后必須再按一下回車鍵,然后再按發送!

  • 使用串口軟件進行測試
注意:勾選上“發送新行”
發送命令AT+RST(重啟模塊),返回如下:

三 測試
測試前先閱讀:(1)Espressif IoT AT指令集_v0.1.5.pdf         描述了該模塊支持的AT命令
wwwelectrodragoncom/w/Wi07c該網頁命令描述更清晰一些
(2) ESP8266測試方法匯總.pdf              測試的具體流程
測試過程參照:ESP8266作為TCP服務器端使用心得.pdf     出錯的原因分析及處理
四 測試例程  
原來推薦的測試例程比較粗略,這里放上我自己的測試過程,理解可能有誤,僅供參考。
請勿直接復制指令,部分格式經過WORD編輯后有誤!可能導致出錯!
(一)AP模式
1. 建立AP     
  (1)重啟模塊
              發送命令:AT+RST(執行指令)
              指令:AT+RST
    響應:OK
  (2)設置模塊
              發送命令:AT+CWMODE=3AT+CWMODE=2(設置指令)
              指令:AT+CWMODE=<mode>
              說明:<mode>:1-Station模式,2-AP模式,3-APStation模式
              響應:OK
說明:需重啟后生效(AT+RST)

  (3)配置AP參數
              發送命令:AT+CWSAP=TEST,123456123456,1,3(設置指令)            
              指令:AT+ CWSAP= <ssid>,<pwd>,<chl>, <ecn>
              說明:指令只有在AP模式開啟后有效
<ssid>:字符串參數,接入點名稱
<pwd>:字符串參數,密碼最長64字節,ASCII
<chl>:通道號
< ecn >:0-OPEN1-WEP2-WPA_PSK3-WPA2_PSK4-WPA_WPA2_PSK
              響應:OK

刷新無線網絡列表,可見到SSID為TEST的無線網絡列于其中:

注意:此時連接網絡會可能出現連接不上的情況,請發送AT+RST命令并等待幾分鐘之后再連接
(4)查看已接入設備的IP
連接上TEST發送命令:AT+CWLIF(執行指令)
指令:AT+CWLIF
說明:查看已接入設備的IP
響應:<ip addr>

OK
說明:<ip addr>:已接入設備的IP地址
            
如果返回命令如下:
表示網絡成功建立,目前無設備連入。
如果無線網絡實際已連接上,請等待幾分鐘后再發送AT+CWLIF命令進行查詢。
(4)查詢本機IP地址
              發送命令:AT+CIFSR(執行指令)
指令:AT+CIFSR
說明:查看本模塊的IP地址
      注意:AP模式下無效!會造成死機現象!
響應:<ip addr>
說明:<ip addr>:本模塊IP地址

實際測試中并未發生死機現象
查看本機配置模式:CWMODE=2,為AP模式。

發送命令:AT+CIFSR=?(測試指令),返回響應如下:

同樣未出現死機現象。
2. Server方法收發
(0)查詢此時模塊狀態(該步驟可省略)
  發送命令 AT+CWMODE?(查詢指令)
指令:AT+CWMODE?
說明:查看本模塊的WIFI應用模式
響應:+CWMODE:<mode>

OK
說明:<mode>:1-Station模式,2-AP模式,3-APStation模式

              發送命令AT+CIPMUX? (查詢指令)
指令:AT+CIPMUX?
說明:查詢本模塊是否建立多連接
響應:+ CIPMUX:<mode>

OK
說明:<mode>:0-單路連接模式,1-多路連接模式

              發送命令AT+CIPMODE? (查詢指令)
指令:AT+CIPMODE?
說明:查詢本模塊的傳輸模式
響應:+ CIPMODE:<mode>

OK
說明:<mode>:0-非透傳模式,1-透傳模式

發送命令AT+CIPSTO? (查詢指令)
指令:AT+CIPSTO?
說明:查詢本模塊的服務器超時時間
響應:+ CIPSTO:<time>

OK
說明:<time>:服務器超時時間,0~2880,單位為s

(1)開啟多連接模式
發送命令:AT+CIPMUX=1(設置指令)
指令:AT+CIPMUX=<mode>
說明:<mode>:0-單路連接模式,1-多路連接模式
響應:OK

查詢可知,設置成功

(2)創建服務器
發送命令:AT+CIPSERVER=1,8080(設置指令)
指令:AT+CIPSERVER=<mode>[,<port>]
說明:<mode>:0-關閉server模式,1-開啟server模式
      <port>:端口號,缺省值為333
響應:OK
說明:(1) AT+ CIPMUX=1時才能開啟服務器;關閉server模式需要重啟
(2)開啟server后自動建立server監聽,當有client接入會自動按順序占用一個連接。
開啟server服務如下圖所示:

關閉server服務如下圖所示:

打開USR-TCP232-Test.exe,點擊Connect按鈕連接不上,可知server服務未開啟

重新開啟server服務(注意:之前需要再發送一遍AT+CIPMUX=1重新開啟多連接模式)。
點擊Connect按鈕

連接成功后,串口收到模塊返回的數據串:Link
180S(默認值)后,連接自動斷開,返回Unlink,客戶端的相應按鈕變成灰色。
全過程如下圖:

(3) 設置服務器超時時間
發送命令AT+CIPSTO=2880 (設置指令)
指令:AT+CIPSTO=<time>
說明:<time>:服務器超時時間,0~2880,單位為s
響應:OK

(4) 建立客戶端

  (5) 查看當前連接
發送命令AT+CIPSTATUS (執行指令)
指令:AT+CIPSTATUS
響應:STATUS:<stat>
+ CIPSTATUS:<id>,<type>,<addr>,<port>,<tetype>

      OK
說明:<id>:連接的id0-4
<type>:字符串參數,類型TCPUDP
<addr>:字符串參數,IP地址
<port>:端口號
<tetype>: 0-本模塊做client的連接,1-本模塊做server的連接

(之前電腦的USB無線網卡發燙厲害,拔出后重新插上,再次連接后自動分配的端口產生了變化,所以刷出了兩個客戶端,實際中存在的僅有ID=1的客戶端)
  (6) 向某個連接發送數據
發送命令AT+CIPSEND=1,6(設置指令)  (通過上一條指令AT+CIPSTATUS得知ID=1
指令:1)單路連接時(+CIPMUX=0),指令為:AT+CIPSEND=<length>
2)多路連接時(+CIPMUX=1) ,指令為: AT+CIPSEND= <id>,<length>
響應:收到此命令后先換行返回”>”,然后開始接收串口數據
當數據長度滿length時發送數據。
如果未建立連接或連接被斷開,返回ERROR
如果數據發送成功,返回 SEND OK
說明:<id>:需要用于傳輸連接的id
<length>:數字參數,表明發送數據的長度,最大長度為2048

斷開客戶端后再發送一次,得到以下響應:

發送數據長度大于LENGTH時響應如下(HELLO!為之前一次發送的數據)
    此時連接已建立,可以進行數據的雙向收發。
用客戶端向ESP8266發送數據,正常。

3. Client方法收發
(0) 關閉server服務   (如果沒有開啟server服務,可免除此步驟)
發送命令:AT+CIPSERVER=0(設置指令)
指令:AT+CIPSERVER=<mode>[,<port>]
說明:<mode>:0-關閉server模式,1-開啟server模式
      <port>:端口號,缺省值為333
響應:OK
說明:(1) AT+ CIPMUX=1時才能開啟服務器;關閉server模式需要重啟
(2)開啟server后自動建立server監聽,當有client接入會自動按順序占用一個連接。
關閉server服務如下圖所示:

(1) 創建服務器


點擊Listening,創建成功后,該按鈕變為:

(2) 開啟多連接模式
發送命令:AT+CIPMUX=1(設置指令)
指令:AT+CIPMUX=<mode>
說明:<mode>:0-單路連接模式,1-多路連接模式
響應:OK

(3) 建立TCP連接
發送命令AT+CIPSTART=2,"TCP","192.168.4.101",8080 (設置指令)
指令:1)單路連接時(+CIPMUX=0),指令為:AT+CIPSTART= <type>,<addr>,<port>
2)多路連接時(+CIPMUX=1),指令為:AT+CIPSTART=<id>,<type>,<addr>,<port>
響應:如果格式正確且連接成功,返回 OK,否則返回 ERROR
如果連接已經存在,返回 ALREAY CONNECT
說明:<id>:0-4,連接的id
<type>:字符串參數,表明連接類型,”TCP”-建立tcp連接,”UDP”-建立UDP連接
<addr>:字符串參數,遠程服務器IP地址
<port>:遠程服務器端口號
    如下圖所示:

(4) 向服務器發送數據
發送命令AT+CIPSEND=2,8(設置指令)  (通過上一條指令AT+CIPSTART設置為ID=2
指令:1)單路連接時(+CIPMUX=0),指令為:AT+CIPSEND=<length>
2)多路連接時(+CIPMUX=1) ,指令為: AT+CIPSEND= <id>,<length>
響應:收到此命令后先換行返回”>”,然后開始接收串口數據
當數據長度滿length時發送數據。
如果未建立連接或連接被斷開,返回ERROR
如果數據發送成功,返回 SEND OK
說明:<id>:需要用于傳輸連接的id
<length>:數字參數,表明發送數據的長度,最大長度為2048

接收正確,超過8個字符的部分不接收。
此時連接已建立,可以進行數據的雙向收發。用服務器向ESP8266發送數據,正常。

(二)STA模式
1.建立STA
(1) 重啟模塊
發送命令:AT+RST(執行指令)
              指令:AT+RST
響應:OK

(2) 設置模塊
              發送命令:AT+CWMODE=3AT+CWMODE=1(設置指令)
              指令:AT+CWMODE=<mode>
              說明:<mode>:1-Station模式,2-AP模式,3-APStation模式
              響應:OK
說明:需重啟后生效(AT+RST)

將模塊設置為模式1,此時刷新網絡列表可見由ESP8266建立的網絡從列表中消失了
(3) 查看當前無線路由器列表
發送命令:AT+CWLAP(執行指令)
指令:AT+CWLAP
              響應:正確:(終端返回AP列表)
+ CWLAP: <ecn>,<ssid>,<rssi>
OK
錯誤:ERROR
說明:< ecn >:0-OPEN1-WEP2-WPA_PSK3-WPA2_PSK4-WPA_WPA2_PSK
<ssid>:字符串參數,接入點名稱
<rssi>:信號強度

如搜索不到信號,響應:

請重新上電并嚴格按照AT命令再發送一遍。
沒有列表返回的時候請耐心等待,否則會出現“busy”
(4) 加入當前無線網絡
發送命令:AT+CWJAP=MERSAIN”,”XXXXXXXX(設置指令)
指令:AT+CWJAP=<ssid>,< pwd >
說明:<ssid>:字符串參數,接入點名稱
<pwd>:字符串參數,密碼,最長64字節ASCII
響應:正確:OK
錯誤:ERROR

檢測是否真的連上該路線網絡
發送命令:AT+CWJAP?(查詢指令)
指令:AT+CWJAP?
響應:返回當前選擇的AP
+ CWJAP:<ssid>

OK
說明:<ssid>:字符串參數,接入點名稱

斷電。上電后發送AT+CWJAP?,返回同上,系統保持上次的狀態。
查看模塊IP地址
發送命令:AT+CIFSR(執行指令)
指令:AT+CIFSR
響應:正確:+ CIFSR:<IP address>

OK
錯誤:ERROR
說明:<ssid>:字符串參數,接入點名稱
   
群里(@云海之夢)反映:錯誤的SSID也可以連接上,測試后發現果然如此,輸入實際不存在的賬號密碼返回也是OK

但發送AT+CIFSR(查看模塊地址),返回ERROR,可通過此命令來判斷有沒有真正連接上。
2. Server方法收發
(0)查詢此時模塊狀態(該步驟可省略)
  發送命令 AT+CWMODE?(查詢指令)
指令:AT+CWMODE?
說明:查看本模塊的WIFI應用模式
響應:+CWMODE:<mode>

OK
說明:<mode>:1-Station模式,2-AP模式,3-APStation模式

              發送命令AT+CIPMUX? (查詢指令)
指令:AT+CIPMUX?
說明:查詢本模塊是否建立多連接
響應:+ CIPMUX:<mode>

OK
說明:<mode>:0-單路連接模式,1-多路連接模式

              發送命令AT+CIPMODE? (查詢指令)
指令:AT+CIPMODE?
說明:查詢本模塊的傳輸模式
響應:+ CIPMODE:<mode>

OK
說明:<mode>:0-非透傳模式,1-透傳模式

發送命令AT+CIPSTO? (查詢指令)
指令:AT+CIPSTO?
說明:查詢本模塊的服務器超時時間
響應:+ CIPSTO:<time>

OK
說明:<time>:服務器超時時間,0~2880,單位為s

(1)開啟多連接模式
發送命令:AT+CIPMUX=1(設置指令)
指令:AT+CIPMUX=<mode>
說明:<mode>:0-單路連接模式,1-多路連接模式
響應:OK

查詢可知,設置成功

(2)創建服務器
發送命令:AT+CIPSERVER=1,8080(設置指令)
指令:AT+CIPSERVER=<mode>[,<port>]
說明:<mode>:0-關閉server模式,1-開啟server模式
      <port>:端口號,缺省值為333
響應:OK
說明:(1) AT+ CIPMUX=1時才能開啟服務器;關閉server模式需要重啟
(2)開啟server后自動建立server監聽,當有client接入會自動按順序占用一個連接。
開啟server服務如下圖所示:

關閉server服務如下圖所示:

打開USR-TCP232-Test.exe,點擊Connect按鈕連接不上,可知server服務未開啟

重新開啟server服務(注意:之前需要再發送一遍AT+CIPMUX=1重新開啟多連接模式)。
點擊Connect按鈕

連接成功后,串口收到模塊返回的數據串:Link
180S(默認值)后,連接自動斷開,返回Unlink,客戶端的相應按鈕變成灰色。
全過程如下圖:

(3) 設置服務器超時時間
發送命令AT+CIPSTO=2880 (設置指令)
指令:AT+CIPSTO=<time>
說明:<time>:服務器超時時間,0~2880,單位為s
響應:OK

(4) 建立客戶端
界面設置如下圖所示:

  (5) 查看當前連接
發送命令AT+CIPSTATUS (執行指令)
指令:AT+CIPSTATUS
響應:STATUS:<stat>
+ CIPSTATUS:<id>,<type>,<addr>,<port>,<tetype>

      OK
說明:<id>:連接的id0-4
<type>:字符串參數,類型TCPUDP
<addr>:字符串參數,IP地址
<port>:端口號
<tetype>: 0-本模塊做client的連接,1-本模塊做server的連接

  (6) 向某個連接發送數據
發送命令AT+CIPSEND=0,10(設置指令)  (通過上一條指令AT+CIPSTATUS得知ID=0
指令:1)單路連接時(+CIPMUX=0),指令為:AT+CIPSEND=<length>
2)多路連接時(+CIPMUX=1) ,指令為: AT+CIPSEND= <id>,<length>
響應:收到此命令后先換行返回”>”,然后開始接收串口數據
當數據長度滿length時發送數據。
如果未建立連接或連接被斷開,返回ERROR
如果數據發送成功,返回 SEND OK
說明:<id>:需要用于傳輸連接的id
<length>:數字參數,表明發送數據的長度,最大長度為2048
發:
收:
斷開客戶端后再發送一次,得到以下響應:

    此時連接已建立,可以進行數據的雙向收發。
3. Client方法收發
(0) 關閉server服務   (如果沒有開啟server服務,可免除此步驟)
發送命令:AT+CIPSERVER=0(設置指令)
指令:AT+CIPSERVER=<mode>[,<port>]
說明:<mode>:0-關閉server模式,1-開啟server模式
      <port>:端口號,缺省值為333
響應:OK
說明:(1) AT+ CIPMUX=1時才能開啟服務器;關閉server模式需要重啟
(2)開啟server后自動建立server監聽,當有client接入會自動按順序占用一個連接。
關閉server服務如下圖所示:

(1)創建服務器


點擊Listening,創建成功后,該按鈕變為:

(2) 開啟多連接模式
發送命令:AT+CIPMUX=1(設置指令)
指令:AT+CIPMUX=<mode>
說明:<mode>:0-單路連接模式,1-多路連接模式
響應:OK

(3) 建立TCP連接
發送命令AT+CIPSTART=2,"TCP","192.168.1.109",8080 (設置指令)
指令:1)單路連接時(+CIPMUX=0),指令為:AT+CIPSTART= <type>,<addr>,<port>
2)多路連接時(+CIPMUX=1),指令為:AT+CIPSTART=<id>,<type>,<addr>,<port>
響應:如果格式正確且連接成功,返回 OK,否則返回 ERROR
如果連接已經存在,返回 ALREAY CONNECT
說明:<id>:0-4,連接的id
<type>:字符串參數,表明連接類型,”TCP”-建立tcp連接,”UDP”-建立UDP連接
<addr>:字符串參數,遠程服務器IP地址
<port>:遠程服務器端口號
    如下圖所示:

(4) 向服務器發送數據
發送命令AT+CIPSEND=2,10(設置指令)  (通過上一條指令AT+CIPSTART設置為ID=2
指令:1)單路連接時(+CIPMUX=0),指令為:AT+CIPSEND=<length>
2)多路連接時(+CIPMUX=1) ,指令為: AT+CIPSEND= <id>,<length>
響應:收到此命令后先換行返回”>”,然后開始接收串口數據
當數據長度滿length時發送數據。
如果未建立連接或連接被斷開,返回ERROR
如果數據發送成功,返回 SEND OK
說明:<id>:需要用于傳輸連接的id
<length>:數字參數,表明發送數據的長度,最大長度為2048

此時連接已建立,可以進行數據的雙向收發。
完整的Word格式文檔51黑下載地址:
ESP8266入門調試指導(補全).doc (621.12 KB, 下載次數: 85)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏11 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:237723 發表于 2018-11-13 08:17 | 只看該作者
寫的很詳細 贊一個!!!
回復

使用道具 舉報

板凳
ID:87000 發表于 2019-3-19 23:11 | 只看該作者
非常好,就是黑比貴
回復

使用道具 舉報

地板
ID:501991 發表于 2019-4-21 11:16 | 只看該作者
哇,這個真的寫的非常詳細了,網上也有很多教程,但沒有這個步驟這么詳細,就像那個波特率需要設置成115200還有“發送新行”就快把我這個小白卡死了。
本來還打算自己寫一篇介紹ESP8266的方法,沒想到這里的這么詳細。
支持一下!
回復

使用道具 舉報

5#
ID:92556 發表于 2021-5-30 13:24 來自手機 | 只看該作者
西點鐘靈毓秀 發表于 2019-3-19 23:11
非常好,就是黑比貴

不要做伸手黨,51黑的幣是這么多電子論壇中最容易獲取的,,,
回復

使用道具 舉報

6#
ID:911035 發表于 2021-6-2 08:45 | 只看該作者
寫的很詳細 贊一個!!!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 四虎在线视频 | 亚洲欧洲中文 | 精国产品一区二区三区四季综 | 午夜精品一区二区三区在线观看 | 久久精品久久久久久 | 国产日韩精品久久 | 亚洲成人自拍 | 亚洲国产成人在线 | 四虎影视一区二区 | 亚洲三级在线观看 | a级网站| 在线成人精品视频 | 国产成人免费视频网站视频社区 | 久久久婷婷 | www.中文字幕| 精品九九久久 | 日日干日日色 | 亚洲97| 精品日韩一区二区三区av动图 | 青青草精品| av免费在线播放 | 免费视频二区 | 成人免费视频网址 | 欧美成人一区二区三区 | 国产成人精品一区二区三区 | 一级片免费在线观看 | 久久精品一级 | 亚洲 欧美 综合 | 国产精品久久久久久妇女 | www国产成人免费观看视频 | 国产精品一区在线观看 | 夜夜操天天艹 | 草草草网站 | 国产高清精品一区二区三区 | 自拍视频网 | 亚洲欧美久久 | 亚洲人成在线播放 | 午夜丰满寂寞少妇精品 | 亚洲精品一区二区 | 欧美日韩精品一区二区天天拍 | 激情六月丁香 |