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

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

相关推荐
xlq223223 分钟前
30.进程池IPC
linux·运维·服务器
CODE_RabbitV15 分钟前
【3min 解决】keil5 编译stm32 出现一堆 core_cm3.c 报错问题
c语言·stm32·嵌入式硬件
Predestination王瀞潞16 分钟前
5.2.1 通信->DNS域名系统协议标准(IETF RFC 1035):DNS(Domain Name System)
网络·网络协议·tcp/ip
nuomigege17 分钟前
beagleboneblack刷入官方IOT镜像后无法运行nodered问题的处理
linux·运维·服务器
【 STM32开发 】42 分钟前
【STM32 + CubeMX 教程】RTC 实时时钟 之 闹钟唤醒 -- F407篇
stm32·嵌入式硬件·实时音视频
huaxiu542 分钟前
ubuntu下应用打不开
linux·运维·ubuntu
m0_683124791 小时前
Ubuntu服务设置开机自启
linux·运维·ubuntu
BestOrNothing_20151 小时前
(1)双系统中Ubuntu22.04启动盘制作与启动盘恢复全过程
linux·ubuntu·双系统·启动盘制作·启动盘恢复
AI成长日志1 小时前
【实用工具教程】Linux常用命令速查与实战场景:文件操作、进程管理与网络调试高频命令解析
linux·php
BT-BOX1 小时前
第6章《Stm32CubeMX+Proteus仿真入门》LCD1602显示
stm32·嵌入式硬件·proteus