RISC-V单片机快速入门05-玩转ESP8266 WIFI模块①
前言
本节开始,我们学习使用GD32VF103的串口驱动ESP-01S模块,本文先介绍下ESP-01S模块的基本用法。
本文引用地址:https://www.eepw.com.cn/article/202006/414407.htm一、基础知识
1.ESP-01S简介
ESP-01S是体积超小的802.11b/g/n Wi-Fi SOC模块,采用低功率32位CPU,可兼作应用处理器,主频最高可达160MHz,内嵌Lwip协议栈,支持STA/AP/STA+AP工作模式,采用通用AT指令,可以方便进行开发。
引脚说明如下所示:
正常工作接线:
烧录接线:
二、AT指令示例
1. AP模式下的TCP Server通信
(1) 模块恢复出厂设置
发送指令:
AT+RESTORErn
模块返回:
[2020-06-09 22:02:13.461 T]AT+RESTORE
[2020-06-09 22:02:13.478 R]AT+RESTORE
[2020-06-09 22:02:13.694 R]
OK
[2020-06-09 22:02:13.828 R]
ets Jan 8 2013,rst cause:2, boot mode:(3,7)
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 : DOUT
SPI Flash Size & Map: 8Mbit(512KB+512KB)
jump to run user1 @ 1000
[2020-06-09 22:02:14.006 R]�ERROR:Frame
ERROR:Frame
��N�|{��o|��$��l`�N�d�d�l`�N�$�l�
[2020-06-09 22:02:14.120 R]
ready
(2) 取消回显
发送指令:
ATE0rn
模块返回:
OK
[2020-06-09 22:02:18.536 T]ATE0
[2020-06-09 22:02:18.554 R]ATE0
OK
(3) 设置AP模式
发送指令:
AT+CWMODE=2rn
模块返回:
OK
[2020-06-09 23:11:08.107 T]AT+CWMODE=2
[2020-06-09 23:11:08.125 R]
OK
(4) 设置多路连接
发送指令:
AT+CIPMUX=1rn
模块返回:
OK
[2020-06-09 23:13:31.738 T]AT+CIPMUX=1
[2020-06-09 23:13:31.756 R]
OK
(5) 启动一个WIFI热点
发送指令:
AT+CWSAP="ESP01S_test","12345678",1,3rn
模块返回:
OK
[2020-06-09 23:15:59.556 T]AT+CIPSERVER=1,8089
[2020-06-09 23:15:59.574 R]
OK
通过PC可以查到附近起来了ESP01S_test这个WIFI热点
(6) 启动TCP Server
发送指令:
AT+CIPSERVER=1,8089rn
模块返回:
OK
[2020-06-09 23:15:59.556 T]AT+CIPSERVER=1,8089
[2020-06-09 23:15:59.574 R]
OK
(7) 网络助手连接TCP Server
首先使用电脑连接ESP01S_test热点,密码为121345678,然后启动TCP Client,连接模块IP地址:192.168.4.1,端口:8089
继续开启另一个网络助手,同样连接192.168.4.1:8089
两个网络助手分别发送数据给ESP01S,可以看到模块收到了两条数据,数据头为+IPD
(8) 发送数据
发送数据给客户端1:
发送指令:
AT+CIPSEND=0,13rn
模块返回:
>
发送数据:
hello,client1
[2020-06-09 23:35:27.298 T]AT+CIPSEND=0,13
[2020-06-09 23:35:27.316 R]
OK
>
[2020-06-09 23:35:28.261 T]hello,client1
[2020-06-09 23:35:28.279 R]
Recv 13 bytes
[2020-06-09 23:35:28.321 R]
SEND OK
发送数据给客户端2:
发送指令:
AT+CIPSEND=1,13rn
模块返回:
>
发送数据:
hello,client2
评论