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>,<信息长度>:<信息内容>

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

相关推荐
努力学习的小廉17 分钟前
深入了解linux系统—— 进程池
linux·运维·服务器
秃头菜狗40 分钟前
各个主要目录的功能 / Linux 常见指令
linux·运维·服务器
2301_793102491 小时前
Linux——MySql数据库
linux·数据库
GenCoder1 小时前
Keil开发STM32生成hex文件/bin文件
stm32·bin文件生成·keil开发
憧憬一下2 小时前
FreeRTOS任务之深入篇
stm32·嵌入式·freertos
jiunian_cn2 小时前
【Linux】centos软件安装
linux·运维·centos
lixzest2 小时前
STM32开发中,线程启动异常问题排查简述
stm32·嵌入式硬件
程序员JerrySUN2 小时前
[特殊字符] 深入理解 Linux 内核进程管理:架构、核心函数与调度机制
java·linux·架构
孤寂大仙v2 小时前
【计算机网络】非阻塞IO——select实现多路转接
linux·计算机网络
玩转4G物联网2 小时前
零基础玩转物联网-串口转以太网模块如何快速实现与TCP服务器通信
服务器·网络·物联网·网络协议·tcp/ip·http·fs100p