WIFI模块ESP8266-01S

主要介绍:WIFI模块在PC上做为客户端、服务器,在STM32上做服务器的通讯。

1. 安信可公司物联网模块:

ESP8266系列Wi-Fi模块一共有01~14十多款模块

 

WIFI模块ESP8266-01S_第1张图片

 

 

2.ESP-01S尺寸、管脚定义

WIFI模块ESP8266-01S_第2张图片

3.ESP-01S和ESP-01区别

ESP8266-01简称ESP-01,

ESP8266-01S简称ESP-01S

3.1 外观区别:

  • ESP8266-01S天线区域右下角只有一个指示灯,ESP8266-01天线区域右下角有两个指示灯。
  • ESP8266-01S背面有引脚说明,ESP8266-01背面有没有引脚说明。

3.2 电路区别:

ESP8266-01S内部电路相对ESP8266-01做了优化,根据官方提供的模组选型表,我们可以知道:

  • 指示灯的管脚,由ESP-01的TXD0变成了ESP-01S的GPIO2;
  • ESP-01S模块的IO0、RST、EN管脚上增加了上拉电阻。

WIFI模块ESP8266-01S_第3张图片

WIFI模块ESP8266-01S_第4张图片
 

控制板WIFI接口:

WIFI模块ESP8266-01S_第5张图片

ESP-01S的应用电路简化了,省掉了两个上拉电阻,ESP-01S是官方用来替换ESP-01的。


4.AT指令:

 

WIFI模块ESP8266-01S_第6张图片

命令    描述
基本命令
AT                                    测试 AT 启动
AT+GMR                             查看版本信息
   
AT+CWMODE                    选择 WIFI 应用模式
AT+RST                            重启模块
客户端模式
AT+CWLAP                      列出当前可用路由器接入点
AT+CWJAP                      加入接入点
AT+CWQAP                       退出接入点
AT+CIPSTART                  建立 TCP, 连接服务器
AT+CIPCLOSE                    关闭 TCP
AT+CIFSR               获取本地 IP 地址
AT+CIPMODE                   设置模块传输模式
AT+CIPSEND                       发送数据
服务器模式:
AT+ CWSAP           查询和设置 AP(server) 模式下的WIFI名称、密码、加密方式
AT+ CWLIF                         查看已接入设备的 IP地址
AT+CIPMUX                         启动多连接
AT+CIPSERVER         配置为服务器默认端口333
 AT+CIPSTO               设置服务器超时时间
AT+ CIPSTATUS                   获得连接状态

5.AT指令使用示例:

将WIFI模块用USB-TTL接入电脑,装上驱动,安装串口调试助手和网络调试助手,本过程使用野火多功能调试助手。

5.1 WIFI模块作为客户端(透传)

  1. 串口调试助手设置串口参数,见下图1
  2. AT :测试AT开发模式启动
  3. AT+GMR :查看固件版本信息
  4. AT+CWMODE=1:设置WIFI应用模式 1Station模式 2 AP模式 3 AP兼Station模式,AP指作为接入点,station指作为客户端站
  5. AT+RST:重启
  6. AT+CWLAP:列出可用的接入点
  7. AT+CWJAP="TP-LINK_6FFA","123456789":加入接入点
  8. AT+CIFSR :获取本机IP地址
  9. PC连接路由,网络调试助手使用电脑IP地址创建一服务器,IP设置见下图2;
  10. AT+CIPSTART="TCP","192.168.101.110",8080    :与服务器建立TCP连接 
  11. AT+CIPMODE=1:设置透传模式(即可以一直发送,不然还得用AT+CIPSEND=4设置发送字节数;作为服务器模式时,不能用透传模式)
  12. AT+CIPSEND :开始透传,串口调试助手发送数据,网络调试助手发送数据
  13. 接收数据格式:串调:+IPD,n:xxxxxxxxxx 接收到 的数据 长度为 n 个字节 ,xxxxx 为数据;网调:[Tcp client 192.168.1.108 2872] 123,TCP模式,客户端IP地址,端口号,123是数据;
  14. 结束透传:有输入3个+号退出透传的方案,我没有实现,我直接断电模块,过几分钟可重新设置;

WIFI模块ESP8266-01S_第7张图片

WIFI模块ESP8266-01S_第8张图片

5.2 WIFI模块作为客户端(单次连接)

  1. AT+CWMODE=1 :设置WIFI应用模式 1Station模式 2 AP模式 3 AP兼Station模式,AP指作为接入点,station指作为客户端站
  2. AT+RST:重启
  3. AT+CWJAP="TP-LINK_6FFA","123456789":加入接入点
  4. PC连接路由,网络调试助手使用电脑IP地址创建一服务器,IP设置见上图2;
  5. AT+CIPSTART="TCP","192.168.101.110",8080    :与服务器建立TCP连接 
  6. AT+CIPSEND=4 :串调发送四个字节数据,输入要发送的四个字节内容, 无需回车。若发送的字节数目超过了指令设定长度 n,则会响应 busy,并发送数据的前 n 个字节,完成后响应 SEND OK 。网调可任意发送过来。

5.3 WIFI模块作为server

  1. AT+CWMODE=2 :设置WIFI应用模式 1 Station模式 2 AP模式 3 AP兼Station模式,AP指作为接入点,station指作为客户端站
  2. AT+RST:重启
  3. AT+CWSAP? :查询显示AP模式下的参数,+CWSAP:"ESP_664843","123456789",11,3,4,0
  4. AT+CWSAP="ESP_664843","123456789",11,3 :修改接入点名称、密码和3是加密方式。11是通道号,修改了需要重启,未用到没深究。

    加密方式

    0

    OPEN,设置成open,即使设置了密码也不起作用

    1

    WEP

    2

    WPA_PSK

    3

    WPA2_PSK

    4

    WPA_WPA2_PSK 

  5. AT+CIPMUX=1:启动多连接
  6. AT+CIPSERVER=1:建立server,默认端口333,试验过,改不了。
  7. AT+CIPSTO=300:设置服务器超时时间0~28800,单位为s,超过时间会将客户端踢掉。
  8. AT+CIFSR :获取本机IP地址,以便设置网络助手,见下图1,2,分 AP模式 、 AP兼Station模式两种显示
  9. 首先PC要连接到WIFI模块热点,PC上网络调试助手作为客户端连入AP,设置见下图3
  10. AT+CWLIF:查看已接入的设备,见下图4
  11. AT+CIPSEND=4:(命令报error,串调不能发送,网调可发送)
  12.  接收数据:串调可以从网调助手接收数据,网调助手不能接收串调数据。

WIFI模块ESP8266-01S_第9张图片

WIFI模块ESP8266-01S_第10张图片

WIFI模块ESP8266-01S_第11张图片

 

 

WIFI模块ESP8266-01S_第12张图片

 

 

6.STM32程序,暂时未成功啊

 

\n 是换行,英文是New line。

\r 是回车,英文是Carriage return。

\r 与 \n 合起来就是回车换行的意思,回车是将光标移到当前行的行首;换行是将光标移到当前行的下一行,但还是同一列,不会回到行首。

AT+CWSAP?

AT+CWSAP="ESP_664843","123456789",11,0,4,0

AT+CWSAP="ESP_664843","123456789",11,3

在AP服务器模式下,设置WIFI模块接入点名称,密码,11是通道号,不知道什么用,

       
   
   
   
   

 

AP
AT+CWMODE=2
AT+RST
AT+CWSAP="ESP_664843","123456789",11,3 
AT+CIPMUX=1
AT+CIPSERVER=1

 

 

 

7. 其它:

  • 开发模式:AT指令控制和源代码API函数开发;
  • 工作模式:STA+AP 、STA、AP模式;
  • 模块分类:AT类(这种模块精简实用,只引出UART口)和IO类(除了引出UART还引出可用IO口);
  • 工作条件:电压3.3V 接收电流70MA 发射瞬间电流240mA;
  •  I/O:9个标准IO和UART一个,9个中的三个IO口可做PWM输出;
  • 每条指令后面要加回车才会执行,否者你输入什么它返回什么而不去执行此命令

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(STM32学习,ESP8266-01S,WiFi模块)