STM32+AppInventor+ESP8266设置AP模式和手机TCP通信

完整程序和APP下载链接:下载链接

1、设置AP模式

cpp 复制代码
AT+CWMODE=2

2、开启热点供手机连接

bash 复制代码
AT+CWSAP="ESP8266_01","12345678",6,4

3、设置模块为多连接模式

注:该AT指令每次上电都需要重新配置,否则无法工作

bash 复制代码
AT+CIPMUX=1

说明: 建⽴ TCP 、UDP 或 SSL 连接时,设置模块的连接模式(单连接模式或多连接模式)。

用途: 发送指令"AT+CIPMUX=0",设置模块为单连接模式;
    发送指令"AT+CIPMUX=1",设置模块为多连接模式。

4、开启服务端,设置端口号

注:该AT指令每次上电都需要重新配置,否则无法工作

bash 复制代码
AT+CIPSERVER=1,8080

用途: 单连接模式时,该指令无意义且报错error。

多连接模式时,发送指令AT+CIPSERVER=1,8080",参数1取值范围 [0,1] ,0表示关闭服务器,1表示建立服务器;参数2表示端口号,可自行设定,但是避免常用的端口号,如8080等。例:此处我设置为:建立服务器,并且端口值设置为8080

ESP8266 处于AP热点模式时,其他设备连接上 ESP8266 提供的热点时,如需要进一步搭建TCP 通讯,此时需要将 ESP8266 模块设置为服务端,而开启或关闭服务端便是通过该指令实现的。但是开启服务端有一个前提条件,那就是必须是在多连接模式 (AT+CIPMUX=1)下,才能开启 TCP 服务器。

5、查询本地IP地址

bash 复制代码
AT+CIFSR

使用STM32单片机配置使用ESP-01S

1、首先使用串口调试助手向ESP-01S模块发送两个接入网络的AT指令。

2、剩下的两个 AT+CIPMUX=1AT+CIPSERVER=1,8080指令每次上电需要重新配置一次,所以该指令需要使用单片机的串口发送。

3、接受ESP-01S模块的信息

其它在网络中的无线设备发送到ESP-01S的数据会被模块通过串口发送到单片机。数据格式如下:

bash 复制代码
+IPD,0,15:This is message
+IPD,<客户ID>,<信息长度>:<信息内容>

需要在单片机的串口中断中接收解析以上的数据,就可以得到其它无线设备发送的信息。

相关推荐
dessler20 小时前
Elasticsearch(ES)分片(Shard)和 副本分片(Replica Shard)
linux·运维·elasticsearch
知北游天20 小时前
Linux网络:使用TCP实现网络通信(服务端)
linux·网络·tcp/ip
Dovis(誓平步青云)20 小时前
《探秘 Linux 进程控制:驾驭系统运行的核心之力》
linux·运维·服务器
YouEmbedded21 小时前
解码Linux文件IO之系统IO
linux·服务器·文件io·系统io接口
半桔1 天前
【网络编程】从数据链路层帧头到代理服务器:解析路由表、MTU/MSS、ARP、NAT 等网络核心技术
linux·运维·服务器·网络
程序猿小三1 天前
Linux下基于关键词文件搜索
linux·运维·服务器
虚拟指尖1 天前
Ubuntu编译安装COLMAP【实测编译成功】
linux·运维·ubuntu
刘某的Cloud1 天前
parted磁盘管理
linux·运维·系统·parted
啊?啊?1 天前
4 解锁 Linux 操作新姿势:man、grep、tar ,创建用户及添加权限等 10 大实用命令详解
linux·服务器·实用指令
程序员老舅1 天前
干货|腾讯 Linux C/C++ 后端开发岗面试
linux·c语言·c++·编程·大厂面试题