ESP8266—01模块的3种工作模式

ESP8266—01模块的3种工作模式

ESP8266有三种工作模式

1、station(客户端模式):类似于手机,小爱音响等设备(client)

2、AP(接入点模式):类似于路由器(server),可以让其他设备访问

3、station+AP(客户端+接入点模式)

注:配置ESP8266的AT指令时每条指令后面都要加回车再发送。

文章中标号为步骤。

 一、Station模式(作为设备需要连接路由器)

1、AT+CWMODE=1          响应OK  //工作模式在station模式下,设置参数保存到flash

说明:选择 WIFI 应用模式: 1-Station 模式,2-AP 模式,3-AP 兼 Station 模式

2、AT+RST  模式切换时需要用到 返回结果为 ready

说明:重启模块的命令

3、AT+CWMODE?     +AT+CWMODE:2   (换行)   响应OK   //查询当前模式指令,可以不要

4、AT+CWLAP      响应 可以连接的热点(AP) 格式+ CWLAP: <ecn>,<ssid>,<rssi>,<mac>

                    说明:列出当前可用 AP 

                             <ssid>:类型 字符串,  接入点名称

                            <pwd>:类型 字符串, 密码(最大64字节)

                            <chl>: 通道号

                            <ecn>; 加密类型0 — OPEN,1—WEP,2—WPA_PSK,3—WPA2_PSK,4—WPA_WPA2_PSK

5、AT+CWJAP="Redmi","ch123456"      响应WIFI CONNECTED   OK

  说明: 连接WIFI,设置参数保存到flash 12306 (wifi名称),12345qwer(wifi密码)

                             AT+ CWJAP =<ssid>,< pwd >

                            <ssid>:类型 字符串,  接入点名称

                            <pwd>:类型 字符串, 密码(最大64字节)

6、AT+CWJAP?     响应 +CWJAP:"Redmi","6a:ab:eb:6b:4b:ae",1,-48

说明:查询连接的WIFI名称

7、AT+CIFSR      响应 +CIFSR:STAIP,"192.168.43.57"

                                   +CIFSR:STAMAC,"cc:50:e3:1d:c3:5a"

说明:获取本机目前的 IP 地址,第一行为 AP 下的 IP,第二行为 STAMAC下的 IP

ESP8266的寄存器可以使用电脑ping通

8、AT+CIPSTA_CUR="192.168.6.100","192.168.6.1","255.255.255.0"    响应OK

说明:分配固定IP地址,可以不要

9、打开电脑WIFI连接ESP8266的网络,用网络调试助手配置TCP Server模式并激活

   

10、AT+CIPSTART="TCP","192.168.43.104",8080   响应CONNECT    OK

说明: 建立 TCP 连接或注册 UDP 端口号 ,   本例中192.168.43.104为服务器IP地址,8080为端口

            单路连接:(+CIPMUX=0)AT+CIPSTART=<type>,<addr>,<port>

           多路连接:(+CIPMUX=1)AT+CIPSTART=<id><type>,<addr>,<port>

                              <id>  0-4 连接的 id 号

                             <type> 字符串参数,表明连接类型”TCP”建立 tcp 连接”UDP”建立 UDP 连接

                             <addr> 字符串参数,远程服务器 IP 地址

                             <port> 远程服务器端口号

11、AT+CIPSEND=4   响应OK

说明 响应

                     发送指定长度的数据。收到此命令后先换行返回”>”,然后开始接收串口数据,当数据长度满 length 时发送数据。如果未建立连接或连接被断开,返回ERROR如果数据发送成功,返回SEND OK

                      单路连接时:(+CIPMUX=0)AT+CIPSEND=<length>

                     多路连接时:(+CIPMUX=1)AT+CIPSEND=<id>,<length>

                    <id>需要用于传输连接的 id 号

                    <length>数字参数,表明发送数据的长度,最大长度为2048

12、ABCD   响应SEND OK

 

13、把网络调试助手的“连接对象”选择成模块IP地址,在下面输入:CDEFG,点发送,然后串口工具会受到+IPD,5:CDEFG。意识是接受的数据长度是5个字节,CDEFG为数据内容。

  

二、AP模式(作为路由器)

1、AT+CWMODE=2     响应OK //工作模式为AP模式,相当于路由器

说明:选择 WIFI 应用模式: 1-Station 模式,2-AP 模式,3-AP 兼 Station 模式

2、AT+RST  模式切换时需要用到 返回结果为 ready

说明:重启模块的命令

2、AT+CWMODE?     +AT+CWMODE:2   (换行)   响应OK   //查询当前模式指令,可以不要

3、AT+CWSAP="Text","ch123456",11,4  响应OK 

说明:       指令AT+ CWSAP=<ssid>,<pwd>,<chl>,<ecn>;

                        <ssid>:类型 字符串,  接入点名称

                        <pwd>:类型 字符串, 密码(最大64字节)

                        <chl>: 通道号

                        <ecn>; 加密类型0 — OPEN,1—WEP,2—WPA_PSK,3—WPA2_PSK,4—WPA_WPA2_PSK

注:修改通道后需要(AT+RST)重启模块

4、AT+CIPMUX=1  响应OK

说明:建立 TCP 连接或注册 UDP 端口号

          1) 设置 AT+CIPMUX=0   单路连接

              +CIPSTART:(<type>取值列表),(<IP address>范围),(<port>范围)

              +CIPSTART:(<type>取值列表),(<domain name>范围),(<port>范围)

          2) 设置 AT+CIPMUX=1  多路连接

              +CIPSTART:(id),(<type>取值列表),(<IP address>范围),(<port>范围)

              +CIPSTART: (id), (<type>取值列表),(<domain name>范围),(<port>范围)

配合AT+CIPSTART指令使用

开启多连接模式,只有在多连接模式下才能开启服务器模式,

注:透传只能在单连接模式下进行

5、AT+CIPSERVER=1,8080   响应OK

说明: 开启模块本地的 TCP 服务器  

其中 1 为开启, 如果设为 0 则关闭; 设置端口为8080

6、然后配置好手机的网络调试助手,就可以发送数据到ESP8266,断开网络调试助手连接后会返回 CLOSED  网络调试助手模式为"TCP Client"模式,添加”IP:192.168.4.1(模块默认的IP)”端口号8080

7、AT+CIPSEND=0,10   响应OK   

说明:发送数据   0是端口号,10是数据长度

        发送指定长度的数据。收到此命令后先换行返回”>”,然后开始接收串口数据,当数据长度满 length 时发送数据。如果未建立连接或连接被断开,返回ERROR如果数据发送成功,返回SEND OK

        单路连接时:(+CIPMUX=0)AT+CIPSEND=<length>

        多路连接时:(+CIPMUX=1)AT+CIPSEND=<id>,<length>

        <id>需要用于传输连接的 id 号

        <length>数字参数,表明发送数据的长度,最大长度为2048

       AT+CIPSEND 

      响应  收到此命令后先换行返回”>”然后就进入了透传模式,每包数据以 20ms 间隔区分,每包最大 2048 字节。当输入单独一包”+++”返回指令模式。该指令必须在开启透传模式以及单连接模式下使用

补充:

AT+CIFSR   响应 +CIFSR:STAIP,"192.168.43.57"

                            +CIFSR:STAMAC,"cc:50:e3:1d:c3:5a"

说明:获取本机目前的 IP 地址,第一行为 AP 下的 IP,第二行为 STAMAC下的 IP

获取本地IP地址,默认IP:192.168.4.1

AT+CIPSTO=<time>    响应 OK

说明: < time>0~28800 服务器超时时间,单位为 s

设置超时时间(当ESP8266作为客户端(路由器)时,如果一段时间(超时时间)内没有数据传输会自动断开)

 

三、Station - AP模式

1、AT+CWMODE=3  响应OK //工作模式为station-AP模式,相当于路由器模式和station模式下,设置参数保存到flash

说明:选择 WIFI 应用模式: 1-Station 模式,2-AP 模式,3-AP 兼 Station 模式

2、AT+RST  模式切换时需要用到 返回结果为 ready

说明:重启模块的命令

2、AT+CWMODE?     +AT+CWMODE:3   (换行)   响应OK   //查询当前模式指令,可以不要

3、AT+CWSAP="Text","ch123456",11,4  响应OK 

说明:      指令AT+ CWSAP=<ssid>,<pwd>,<chl>,<ecn>;

                         <ssid>:类型 字符串,  接入点名称

                         <pwd>:类型 字符串, 密码(最大64字节)

                         <chl>: 通道号

                         <ecn>; 加密类型0 — OPEN,1—WEP,2—WPA_PSK,3—WPA2_PSK,4—WPA_WPA2_PSK

4、打开电脑WIFI连接上ESP8266,然后打开网络调试助手,TCP server-配置-激活-能看到此时手机的IP和端口号

 

5、AT+CIPMODE=1  响应OK    //开启透传模式

说明:设置模块传输模式   响应OK

如果已经处于连接状态则,返回Link is builded

              AT+CIPMODE=<mode>

              <mode>0 非透传模式1 透传模式

6、AT+CIPMUX=0   响应OK    //开启单路模式

说明:建立 TCP 连接或注册 UDP 端口号

           1) 设置 AT+CIPMUX=0   单路连接

              +CIPSTART:(<type>取值列表),(<IP address>范围),(<port>范围)

              +CIPSTART:(<type>取值列表),(<domain name>范围),(<port>范围)

          2) 设置 AT+CIPMUX=1  多路连接

              +CIPSTART:(id),(<type>取值列表),(<IP address>范围),(<port>范围)

              +CIPSTART:(id), (<type>取值列表),(<domain name>范围),(<port>范围)

配合AT+CIPSTART指令使用

7、AT+CIPSTART="TCP","192.168.4.2",1234   响应CONNECT    OK

说明:建立 TCP 连接或注册 UDP 端口号

响应:如果格式正确且连接成功,返回OK

          否则返回ERROR

          如果连接已经存在,返回ALREAY CONNECT

       单路连接:(+CIPMUX=0)AT+CIPSTART=<type>,<addr>,<port>

       多路连接:(+CIPMUX=1)AT+CIPSTART=<id><type>,<addr>,<port>

       <id> 0-4 连接的 id 号

      <type> 字符串参数,表明连接类型 ”TCP”建立 tcp 连接”UDP”建立 UDP 连接

      <addr> 字符串参数,远程服务器 IP 地址

      <port> 远程服务器端口号

192.168.4.2为手机的服务器IP地址,1234为手机的端口号。

8、AT+CIPSEND  响应OK    //ESP8266发送数据到手机。

说明:发送数据

           单路连接时:(+CIPMUX=0)AT+CIPSEND=<length>

          多路连接时:(+CIPMUX=1)AT+CIPSEND=<id>,<length>

        响应

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

           如果未建立连接或连接被断开,返回ERROR

           如果数据发送成功,返回SEND OK

          <id>需要用于传输连接的 id 号

          <length>数字参数,表明发送数据的长度,最大长度为2048

         AT+CIPSEND

      响应收到此命令后先换行返回”>”然后就进入了透传模式,每包数据以 20ms 间隔区分,每包最大 2048 字节。当输入单独一包”+++”返回指令模式。该指令必须在开启透传模式以及单连接模式下使用

此时电脑可以和ESP8266双向通信。

工具资源链接:https://download.csdn.net/download/qq_37387733/13108078

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值