LiteOS通信模組教程01-AT指令玩轉WIFI通信


1. 環境准備

硬件准備

  • 小熊派開發板

BearPi-IoT

  • ESP8266通信模組

ESP8266通信模組

軟件准備

  • QCOM串口助手

QCOM串口助手

  • 網絡調試助手

網絡調試助手

文檔准備

此文檔來自於樂鑫官方!閱讀本教程時,關於AT指令的詳細說明請參考該文檔!

切換開關

小熊派開發板右上角的開關撥到AT-PC一端,則模組直接與PC相連,方便調試。

所有工具和文檔均在『小熊派開源社區』公眾號回復“通信模組”獲取!

2. 基礎AT指令

AT

指令:AT

功能:測試AT指令功能是否正常

示例:

AT

OK

AT+GMR

指令:AT+GMR

功能:查詢模組固件版本信息

示例:

AT+GMR

AT version:1.3.0.0(Jul 14 2016 18:54:01)
SDK version:2.0.0(5a875ba)
v1.0.0.3
Mar 13 2018 09:37:06
OK

AT+RST

指令:AT+RST

功能:軟復位模組

示例:

AT+RST

OK

 ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x40100000, len 2408, room 16 
tail 8
chksum 0xe5
load 0x3ffe8000, len 776, room 0 
tail 8
chksum 0x84
load 0x3ffe8310, len 632, room 0 
tail 8
chksum 0xd8
csum 0xd8

2nd boot version : 1.6
  SPI Speed      : 40MHz
  SPI Mode       : QIO
  SPI Flash Size & Map: 32Mbit(512KB+512KB)
jump to run user1 @ 1000

WIFI DISCONNECT

3. 基於 TCP 協議連接遠程服務器通信實例

3.1. 配置WIFI模式

使用下面的命令設置模組的工作模式為 softAP 與 Station 模式共存:

AT+CWMODE=3

示例:

AT+CWMODE=3

OK

softAP模式下,ESP8266模組自身作為一個WIFI熱點,允許其他設備連接此熱點;Station模式下,ESP8266模組作為一個設備去連接其他的WIFI熱點。

3.2. 連接可以上網的路由器

使用下面的命令將模組連接到一個可以上網的無線路由器上,或者可以正常上網的手機熱點也可以,其中SSID是熱點名稱,password是熱點密碼:

AT+CWJAP="SSID","password"

示例:

AT+CWJAP="FAST_88A6","12345678"

WIFI CONNECTED
WIFI GOT IP

OK

3.3. 查詢設備的ip地址

連接路由器成功之后,使用下面的命令查詢模組獲取的ip地址,查詢出的ip有兩種,APIP是模組自身作為熱點提供的網關ip,另一個STAIP就是模組連接路由器自動獲取到的ip地址:

AT+CIFSR

示例:

AT+CIFSR

+CIFSR:APIP,"192.168.4.1"
+CIFSR:APMAC,"de:4f:22:5e:90:b7"
+CIFSR:STAIP,"192.168.0.101"
+CIFSR:STAMAC,"dc:4f:22:5e:90:b7"

OK

3.4. 連接遠程TCP服務器

首先我們需要搭建一個TCP服務器,有兩種方式:

  • 在服務器上使用Python、Java、C#等語言自行編寫服務器程序;
  • 在本地PC上使用網絡調試助手開啟TCP服務器;

這里我們使用第二種方式,使用網絡調試助手工具開啟一個TCP服務器,具體步驟如下:

首先保證PC與模組連接到的是同一台路由器,在cmd命令行中使用Ping命令測試網絡是否是通的:

ping <第3.3步獲取到的模組ip地址>

示例:

測試PC和模組之間網絡是否通暢

確保模組與PC之間可以ping通之后,開啟TCP服務器:

創建服務器

接下來填寫TCP服務器的監聽端口,范圍0-65535,注意避開21(FTP)、22(SSH)、80(HTTP)、431(HTTPS)端口即可,這里我使用9999作為測試:

填寫TCP服務器監聽端口

創建成功之后,如圖:

創建成功界面

接下來還需要關閉Windows Defender 的網絡防火牆,否則模組不能訪問到PC。在桌面左下角搜索“防火牆”,選擇“防火牆和網絡保護”,關閉三種網絡的防火牆:

關閉防火牆

接下來還有最后一步,查詢PC的ip地址,可以在網絡設置中查看:

查詢本機ip

最后,使用AT命令連接TCP服務器,其中第一個參數是協議類型,“TCP”則表示使用TCP協議,第二個參數是TCP服務器ip地址,也可以使用域名,最一個參數是TCP服務器開啟監聽的端口(注意:沒有引號):

AT+CIPSTART="TCP","192.168.0.102",9999

示例:

AT+CIPSTART="TCP","192.168.0.102",9999

CONNECT

OK

連接之后,在網絡調試助手中也可以看到:

連接成功界面

3.5. 模組主動發送消息

使用如下的命令即可向TCP服務器發送消息,首先設置要發送數據的字節數,等待模組返回>后,輸入要發送的數據即可,如果發送的數據超過了設置的n個字節,則只發送前n個字節,后面的數據被認為是無效數據,不會發送:

AT+CIPSEND=5

>hello

示例:

AT+CIPSEND=5


OK
> 
Recv 5 bytes

SEND OK

發送成功看PC端的網絡調試助手是否收到:

收到模組發送數據

3.6. 模組接收消息

當網絡調試助手作為TCP服務器向模組發送數據時,模組會打印出收到的信息:

發送數據

在串口助手中模組會輸出收到的信息:

+IPD,13:hello,esp8266

3.7. 關閉TCP連接

通信完畢之后,可以使用下面的命令關閉TCP連接:

AT+CIPCLOSE

示例:

CLOSED

OK


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM