ESP8266详细步骤及指令(客户端模式、服务器模式)

客户端模式

1.AT+CWMODE=3    把模块设置为softAP+station 共存模式

2.AT+RST    重启

3.AT+CWJAP="SSID的信号名","密码" 连接到无线路由器

4.AT+CIFSR    查询IP MAC 地址

5.电脑端创建一个TCP服务器 192.168.0.100:8080

6.AT+CIPSTART="TCP","192.168.1.100",8080   连接到刚刚建立的TCP服务器上

7.AT+CIPSEND=4    发送四个字节的数据。

8.输入:ABCD   发送ABCD到服务器

 

服务器模式

1.AT+CWMODE=3    把模块设置为softAP+station 共存模式

2.AT+RST    重启

3.AT+CWJAP="SSID的信号名","密码" 连接到无线路由器

4.AT+CIPMUX=1 设置为单路连接

5.AT+CIPSERVER=1,8080  8080是端口号,可以自己设定。1表示连接序号

0连接可client或server连接,其他id只能用于连接远程server

6.AT+CIFSR  查询IP MAC 地址

7.用TCP Client协议连接+CIFSR:STAIP

8.客户端发送数据(发送中文可以在SSCOM中显示)

9.AT+CIPSTATUS +CIPSTATUS:0,"TCP","192.168.31.75",52826,8080,1

0号客户端,TCP协议,客户端IP,客户端端口,本机端口

10. AT+CIPSEND=<num> <num>为发送字节数

11. 模块返回字符'>'   表示开始接收数据,发送成功,返回“SENDOK”。


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 终端, SmartLink 智能配置APP

                       表格 2    模块技术规格

//===================================================================//

 

 

 

1.1. 主要功能ESP8266可以实现的主要功能包括:串口透传,PWM 调控,GPIO控制。

串口透传:数据传输,传输的可靠性好,最大的传输速率为:460800bps。

PWM 调控:灯光调节,三色LED 调节,电机调速等。

GPIO控制:控制开关,继电器等。

 

 

1.1. 工作模式ESP8266模块支持STA/AP/STA+AP三种工作模式。

¨ STA 模式:ESP8266模块通过路由器连接互联网,手机或电脑通过互联网实现对设备的远程控制。

¨ AP 模式:ESP8266模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制。

¨ STA+AP 模式:两种模式的共存模式,即可以通过互联网控制可实现无缝切换,方便操作。

1.2. 应用领域

¨ 串口CH340 转Wi-Fi;

¨ 工业透传DTU;

¨ Wi-Fi 远程监控/控制;

¨ 玩具领域;

¨ 色LED 控制;

¨ 消防、安防智能一体化管理;

¨ 智能卡终端,无线POS 机,Wi-Fi 摄像头,手持设备等。

//===================================================================//

 

1.1. 基础AT指令

 

 

 

 

 

3.2.1  测试AT语法规则:

 

命令类型

语法

返回和说明

执行命令

AT

OK

//=====================================================================================//

1.2. WiFi功能AT指令3.3.1 选择WiFi应用模式:AT+CWMODE语法规则:

 

命令类型

语法

返回和说明

设置命令

AT+CWMODE = <mode>

OK

 

 

此指令需重启后生效(AT+RST)

查询命令

AT+CWMODE?

+CWMODE:<mode>

 

OK

 

 

当前处于哪种模式?

测试命令

AT+CWMODE?

+CWMODE:(<mode>取值列表)

 

OK

 

 

当前可支持哪些模式?

 

参数定义:

 

参数

定义

取值

对取值的说明

<mode>

WiFi应用模式

1

Station模式

 

 

2

AP模式

 

 

3

AP+Station模式

 

 

 

3.3.2 列出当前可用接入点:AT+CWLAP语法规则:

 

命令类型

语法

返回和说明

执行命令

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

自动连接

 

3.3.3 加入接入点:AT+CWJAP语法规则:

 

命令类型

语法

返回和说明

设置命令

AT+CWJAP=<ssid>,<pwd>

 

OK 或 ERROR

 

 

加入该AP成功则返回OK,失败则返回ERROR

查询命令

AT+CWJAP?

+CWJAP:<ssid>

 

OK

 

 

返回当前选择的AP

 

参数定义:

 

参数

定义

取值

对取值的说明

<ssid>

接入点名称

 

 

字符串型

<pwd>

密码

 

 

字符串型,最长64字节,ASCII编码

 

 

3.3.4 退出接入点:AT+CWQAP语法规则:

 

命令类型

语法

返回和说明

执行命令

AT+CWQAP

OK

 

 

表示成功退出该AP

测试命令

AT+CWQAP=?

OK

 

 

查询该命令是否支持

 

3.3.5 设置AP模式下的参数:AT+CWSAP语法规则:

 

命令类型

语法

返回和说明

设置命令

AT+CWSAP=<ssid>,<pwd>,<chl>, <ecn>

OK

 

 

设置参数成功

查询命令

AT+CWSAP?

OK

 

 

查询当前AP参数

 

参数定义:

 

参数

定义

取值

对取值的说明

<ecn>

加密方式

0

OPEN

 

 

1

WEP

 

 

2

WPA_PSK

 

 

3

WPA2_PSK

 

 

4

WPA_WPA2_PSK

<ssid>

接入点名称

 

 

字符串参数

<pwd>

密码

 

 

字符串型,最长64字节,ASCII编码

<chl>

通道号

 

 

 

 

 

 

 

 

 

1.3. TCPIP AT指令3.4.1 建立TCP/UDP连接:AT+CIPSTART语法规则:

 

命令类型

语法

返回和说明

设置命令

单 路 连 接 (+CIPMUX=0)时:

 

AT+CIPSTART=<type>,<addr>,<port>

 

 

多路连接(+CIPMUX=1)时:

 

AT+CIPSTART=<id>,<type>,<addr>,<port>

如果格式正确,返回:

OK

 

否则返回:

+CME ERROR: invalid input value

 

连接成功,返回:

CONNECT OK         (CPIMUX=0)

<id>, CONNECT OK   (CIPMUX=1)

 

如果连接已经存在,返回:

ALREADY CONNECT

 

连接失败返回:

CONNECT FAIL        (CIPMUX=0)

<id>, CONNECT FAIL  (CIPMUX=1)

 

参数定义:

 

参数

定义

取值

对取值的说明

<id>

Link No.

0~4

表示连接序号

0号连接可client或server连接,其他id只能用于连接远程server

<type>

连接类型

“TCP”/”UDP”

 

 

<addr>

远程服务器IP地址

 

 

字符串型

<port>

远程服务器端口号

 

 

 

 

 

 

 

3.4.2 获得TCP/UDP连接状态:AT+CIPSTATUS语法规则:

 

命令类型

语法

返回和说明

执行命令

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

已关闭

 

3.4.3 启动多连接:AT+CIPMUX语法规则:

 

命令类型

语法

返回和说明

设置命令

AT+CIPMUX=<mode>

 

OK

 

如果已经处于多连接模式,则返回

Link is builded

 

 

启动多连接成功

查询命令

AT+CIPMUX?

+CIPMUX:<mode>

 

OK

 

 

查询当前是否处在多连接模式

 

参数定义:

 

参数

定义

取值

对取值的说明

<mode>

是否处在多连接模式

0

单连接模式

 

 

1

多连接模式

 

3.4.4 发送数据:AT+CIPSEND语法规则:

 

命令类型

语法

返回和说明

 

设置命令

单 路 连 接 (+CIPMUX=0)时:

AT+CIPSEND=<length>

 

 

多路连接(+CIPMUX=1)时:

AT+CIPSEND=<id>,<length>

响应

模块收到指令后先换行返回”>”,然后开始接收串口数据,当数据长度满length时发送数据

 

如果未建立连接或连接被断开,返回ERROR如果数据发送成功,返回SEND OK

 

 

 

说明

发送指定长度的数据

测试指令

AT+CIPSEND?

响应

单路连接(AT+CIPMUX=0)返回:

+CIPSEND: <length>

 

OK

 

 

 

多路连接(AT+CIPMUX=1)返回:

+CIPSEND: <0-7>,<length>

 

OK

执行命令

AT+CIPSEND

说明

AT+CIPMODE=1并且作为客户端模式下,进入透传模式(需要支持硬件流控,否则大量数据情况下会丢数据)

 

模块收到指令后先换行返回”>”,然后会发送串口接收到的数据。

 

参数定义:

 

参数

定义

取值

对取值的说明

<length>

数据长度

 

 

单位:字节

<id>

Link No.

0~4

连接序号

 

3.4.5 关闭TCP/UDP连接:AT+CIPCLOSE语法规则:

 

命令类型

语法

返回和说明

设置命令

单路连接时

 

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

整数型,表示连接序号

 

3.4.6 获取本地IP地址:AT+CIFSR语法规则:

 

命令类型

语法

响应和说明

 

执行命令

AT+CIFSR

响应

+ CIFSR:<IP address>

 

OK

或者

ERROR

测试命令

AT+CIFSR=?

响应

OK

 

参数定义:

 

参数

定义

取值

对取值的说明

<IP address>

本机目前的IP地址(station)

 

 

 

 

 

3.4.7 配置为服务器:

 

 

 

3.4.8 选择TCPIP应用模式:AT+CIPMODE语法规则:

 

命令类型

语法

返回

设置命令

AT+CIPMODE=<mode>

OK

查询命令

AT+CIPMODE?

+CIPMODE: <mode>

 

OK

 

参数定义:

 

参数

定义

取值

对取值的说明

<mode>

TCPIP应用模式

0

非透明传输模式,缺省模式

 

 

1

透明传输模式

 

3.4.9 设置服务器主动断开的超时时间:AT+CIPSTO

[size=9.5000pt]命令类型

[size=9.5000pt]语法

[size=9.5000pt]返回和说明

设置命令

AT+CIPSTO=<server timeout >

OK

查询命令

AT+CIPSTO?

+ CIPSTO:<server timeout>

 

OK

[size=9.5000pt]

[size=9.5000pt]参数定义:

 

[size=9.5000pt]参数

[size=9.5000pt]定义

[size=9.5000pt]取值

对取值的说明

<server timeout >

用来设置服务器主动断开连接的超时时间

0~28800(s)

用本命令设置好超时时间后,服务器到时间就断开连接。

 

3.4.10设置波特率:AT+CIOBAUD语法规则:

 

命令类型

语法

返回和说明

设置命令

AT+CIOBAUD=<rate>

返回:

OK

默认波特率是9600

 

 

 

 

 

参数定义:

 

参数

定义

取值

对取值的说明

< rate >

波特率,

单位bps

0

自适应波特率

 

 

110

 

 

 

 

300

 

 

 

 

1200

 

 

 

 

2400

 

 

 

 

4800

 

 

 

 

9600

 

 

 

 

14400

 

 

 

 

19200

 

 

 

 

28800

 

 

 

 

38400

 

 

 

 

57600

 

 

 

 

115200

 

 

 

 

230400

 

 

 

 

460800

 

 

 

 

921600

 

 

[size=18.0000pt]

 

来自 <http://www.51hei.com/bbs/dpj-55995-1.html>

 

  • 3
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值