[ESP8266描述與功能說明]
ESP8266是低功耗的串口WIFI IC,內建8~32bit MCU,具備UART、IIC、PWM、GPIO及ADC等功能,因此適何應用於遠端控制或監控等。
ESP8266-01規格表
模組 |
型號 |
ESP8266-01 |
主晶片 |
ESP8266 |
|
無線參數 |
無線標準 |
IEEE 802.11b/g/n |
頻率範圍 |
2.412GHz-2.484GHz |
|
發射功率 |
802.11b: +16 +/-2dBm (@11Mbps) |
|
802.11g: +14 +/-2dBm (@54Mbps) |
||
802.11n: +13 +/-2dBm (@HT20, MCS7) |
||
接收靈敏度 |
802.11b: -93 dBm (@11Mbps ,CCK) |
|
802.11g: -85dBm (@54Mbps, OFDM) |
||
802.11n: -82dBm (@HT20, MCS7) |
||
天線形式 |
外置:郵票孔介面 |
|
外置:I-PEX 連接器、SMA 連接器 |
||
內置:板載PCB 天線 |
||
硬體參數 |
硬體介面 |
UART,IIC,PWM,GPIO,ADC |
工作電壓 |
3.3V |
|
GPIO驅動能力 |
Max:15ma |
|
工作電流 |
持續發送下=> 平均值:~70mA,峰值: 200mA 正常模式下=> 平均: ~12mA,峰值: 200mA 待機:<200uA, |
|
工作溫度 |
-40℃~125℃ |
|
存儲環境 |
溫度:<40℃,相對濕度:<90%R.H. |
|
尺寸 |
板載PCB天線:14.3mm*24.8mm*1mm; |
|
串口透傳 |
傳輸速率 |
110-921600bps |
TCP Client |
5個 |
|
軟體參數 |
無線網路類型 |
STA/AP/STA+AP |
安全機制 |
WEP/WPA-PSK/WPA2-PSK |
|
加密類型 |
WEP64/WEP128/TKIP/AES |
|
固件升級 |
本地串口,OTA遠端升級 |
|
網路協定 |
IPv4, TCP/UDP/FTP/HTTP |
|
用戶配置 |
AT+指令集, Web 頁面 Android/iOS 終端, Smart Link 智慧配置APP |
[ESP8266-01模組功能說明]
ESP8266-01模組的接腳有8隻,輸入電壓為3.3V,當CH_PD為高電位,進入工作模式。
▲ESP8266-01模組
ESP8266-01模組各腳位說明
PIN |
Function |
Description |
1 |
URXD |
1)UART_RXD,接收; 2)General Purpose Input/Output:GPIO3; |
2 |
UTXD |
1)UART_TXD,發送; 2)General Purpose Input/Output:GPIO1; 3)開機時禁止下拉; |
5 |
RESET(GPIO 16) |
外部Reset信號,低電平重定,高電平工作(默認高); |
6 |
GND |
GND |
8 |
VCC |
3.3V,模組供電; |
9 |
ANT |
WiFi Antenna |
11 |
GPIO0 |
1)默認WiFi Status:WiFi工作狀態指示燈控制信號; 2)工作模式選擇: 懸空:Flash Boot,工作模式; 下拉:UART Download,下載模式; |
12 |
ADC |
ADC,輸入範圍:0V-1V; |
13 |
GPIO15 |
下拉:工作模式; |
14 |
CH_PD |
1)高電平工作; 2)低電平模組供電關掉; |
15 |
GPIO2 |
1)開機上電時必須為高電平,禁止硬體下拉; 2)內部默認已拉高 |
工作模式
¨STA 模式:ESP8266模組通過路由器連接互聯網,手機或電腦通過互聯網實現對設備的遠端控制。
¨AP 模式:ESP8266模組作為熱點,實現手機或電腦直接與模組通信,實現局域網無線控制。
¨STA+AP 模式:兩種模式的共存模式,即可以通過互聯網控制可實現無縫切換,方便操作。
[ESP8266-01操作說明]
▲基本連接圖
AT指令
當成功輸入一個指令,就會有返回值及OK確認。
命令類型 |
語法 |
返回和說明 |
設置命令 |
AT+CWMODE = <mode> 1.Station模式 2.AP模式 3.AP+Station |
OK |
此指令需重啟後生效(AT+RST) |
||
查詢命令 |
AT+CWMODE? |
+CWMODE:<mode>
OK |
當前處於哪種模式? |
||
測試命令 |
AT+CWMODE? |
+CWMODE:(<mode>取值列表)
OK |
當前可支援哪些模式? |
列出當前可用連接點
命令類型 |
語法 |
返回和說明 |
執行命令 |
AT+CWLAP |
+CWLAP: <ecn>,<ssid>,<rssi>[,<mode>]
OK |
此指令返回AP列表 |
參數 |
定義 |
取值 |
對取值的說明 |
<ecn> |
加密方式 |
0 |
OPEN |
1 |
WEP |
||
2 |
WPA_PSK |
||
3 |
WPA2_PSK |
||
4 |
WPA_WPA2_PSK |
||
<ssid> |
接入點名稱 |
|
字串參數 |
<rssi> |
信號強度 |
|
|
<mode> |
連接模式 |
0 |
手動連接 |
1 |
自動連接 |
加入連接點
命令類型 |
語法 |
返回和說明 |
設置命令 |
AT+CWJAP=<ssid>,<pwd> AT+CWJAP="XXXX","1234" |
OK 或 ERROR |
加入該AP成功則返回OK,失敗則返回ERROR |
||
查詢命令 |
AT+CWJAP? |
+CWJAP:<ssid>
OK |
返回當前選擇的AP |
參數 |
定義 |
取值 |
對取值的說明 |
<ssid> |
接入點名稱 |
|
字串型 |
<pwd> |
密碼 |
|
字串型,最長64位元組,ASCII編碼 |
退出連接點
命令類型 |
語法 |
返回和說明 |
執行命令 |
AT+CWQAP |
OK |
表示成功退出該AP |
||
測試命令 |
AT+CWQAP=? |
OK |
查詢該命令是否支援 |
獲得TCP/UDP連接狀態
命令类型 |
语法 |
返回和说明 |
执行命令 |
AT+CIPSTATUS |
如果是单路连接(AT+CIPMUX=0),返回: OK
STATE: <sl_state> |
如果是多路连接 (AT+CIPMUX=1),返回: OK
STATE:<ml_state> |
||
如果配置为服务器: STATE:IP STATUS S: <sid>,<port>,<server state> C:<cid>, <TCP/UDP>, <IP address>, <port>, <client state> |
||
测试命令 |
AT+CIPSTATUS=? |
返回: OK |
參數 |
定義 |
取值 |
對取值的說明 |
<sl_state> |
單連接狀態
|
IP INITIAL |
初始化 |
IP STATUS |
獲得本地 IP 狀態 |
||
TCP CONNECTING/UDP CONNECTING |
TCP 連接中/UDP 埠註冊中 |
||
CONNECT OK |
連接建立成功 |
||
TCP CLOSING/UDP CLOSING |
正在關閉 TCP 連接,正在註銷 UDP 埠 |
||
<ml_state> |
多鏈結狀態 |
IP INITIAL |
初始化 |
IP STATUS |
獲得本地 IP 狀態 |
||
<sid> |
伺服器id |
0~1 |
取值為0和1 |
<server state> |
伺服器狀態 |
OPENING |
正在打開 |
LISTENING |
正在監聽 |
||
CLOSING |
正在關閉 |
||
<cid> |
用戶端id |
0~4 |
取值為0,1,2,3,4 |
<IP address> |
IP 地址 |
- |
字串參數(字串需要加引號) |
<port> |
伺服器監聽埠號 |
- |
整數型 |
<client state> |
用戶端狀態 |
CONNECTED |
已連接 |
CLOSED |
已關閉 |
查詢本地IP地址
命令類型 |
語法 |
回應和說明 |
|
執行命令 |
AT+CIFSR |
回應 |
+ CIFSR:<IP address>
OK 或者 ERROR |
測試命令 |
AT+CIFSR=? |
回應 |
OK |
定義 |
取值 |
對取值的說明 |
|
<IP address> |
本機目前的IP地址(station) |
|
|
關閉TCP/UDP連接
命令類型 |
語法 |
返回和說明 |
設置命令 |
單路連接時
AT+CIPCLOSE=<id> |
返回: CLOSE OK |
多路連接時
AT+CIPCLOSE=<n>[,<id>] |
返回: <n>,CLOSE OK |
|
執行命令 |
AT+CIPCLOSE |
如果關閉成功,返回: CLOSE OK
如果關閉失敗,返回: ERROR |
測試命令 |
AT+CIPCLOSE? |
返回: OK |
注意事項 |
l 執行命令只對單鏈結有效,多鏈結模式下返回ERROR l 執行命令AT+CIPCLOSE 只有在TCP/UDP CONNECTING或CONNECT OK狀態下才會關閉連接,否則會認為關閉失敗返回ERROR l 單路連接模式下,關閉後的狀態為IP CLOSE |
參數 |
定義 |
取值 |
對取值的說明 |
<id> |
關閉模式 |
0 |
慢關(缺省值) |
1 |
快關 |
||
<n> |
Link No. |
0~7 |
整數型,表示連接序號 |
成功加入連接點
將PC作為服務端,由ESP8266連接至電腦。
(1)先設定電腦端為TCP Server
(2)輸入AT指令 AT+CIPSTART="TCP","電腦端IP",電腦端口
▲連接成功
▲由電腦端傳送過來的訊息
[調試]
ESP8266模組做為TCP Server
(1)開啟多路連接: AT+CIPMUX=1
(2)開啟TCP Server: AT+CIPSERVER=1, port
(3)設定服務器超時時間: AT+CIPSTO=2880 (0~2880 S)
AT+CIPMUX?
0:單路連接
1:多路連接
AT+CIPMODE?
0:非透傳模式
1:透傳模式
AT+CIPSTO?
查詢模組作為SERVER的超時時間