STM32 | ESP8266 服务器与客户端

先看懂模块的原理图

关于四个引脚(GPIO2,、GPIO0、CH_PO和CPIO16(RST))的定义如下:(是我自己收集的信息,肯定有不完整的部分。希望大家指正)

GPIO0:当为高电平时代表从FLASH启动,为低电平时进入系统升级状态;

GPIO16:可以作为外部硬件复位(RST);

CH_PD:用来选择AT指令模式(高电平3.3V进入AT指令);

1、准备两个串口软件,分别为server、client端

创建两个文件,分别为服务器串口及客户端串口,里面放入一样的两个串口软件sscom42.exe

2、串口软件添加AT指令

服务器添加指令,具体含义看AT指令集手册

客户端添加AT指令

server端操作步骤

第1步:

发送命令:AT+CWMODE=2(设置指令)

指令:AT+CWMODE=

说明::1-Station模式,2-AP模式,3-AP兼Station模式

响应:OK

说明:需重启后生效(AT+RST)

第2步:

发送命令:AT+CWSAP="ESP8266","0123456789",11,0

指令:AT+ CWSAP=,,,

说明:指令只有在AP模式开启后有效

:字符串参数,接入点名称

:字符串参数,密码最长64字节,ASCII

:通道号

< ecn >:0-OPEN,1-WEP,2-WPA_PSK,3-WPA2_PSK,4-WPA_WPA2_PSK

响应:OK

然后就可以在你的手机或者是电脑通过无线网卡连接到ESP8266上了

最后一步是开启服务器模式:

发送命令:AT+CIPMUX=1 和AT+CIPSERVER=1,8080(因为只有在开启多连接模式的时候才能开启服务器模式)

然后就可以通过网络调试助手来通过"TCP Client"模式下添加"IP:192.168.4.1(模块默认的IP),端口8080(上一步设置的)"

Client模式:

第一步:

AT+RST

AT+CWMODE=1 //设置为station模式

AT+RST //重启生效

AT+CWLAP //查看可以网络

AT+CWJAP="ESP8266","0123456789" //连接自己要连接的网络,前面是SSID后面是密码,具体AT指令可以参考官方的AT集

AT+CIFSR //返回模块的IP地址说明已经正确连接到路由器

AT+CIPMUX=1 //打开多连接否则会报错 Link typ error

AT+CIPSTART=0,"TCP","192.168.4.1",8080 //其中的IP号和端口号是自己在局域网内建立的

或者:AT+CIPSTART="TCP","192.168.4.1",8080 //不是这个0是由于不同协议导致的

AT+CIPSEND=0,10 //有些协议不要这个0

0123456789 //发送10个字符给服务器

相关推荐
元清加油1 小时前
【Golang】:函数和包
服务器·开发语言·网络·后端·网络协议·golang
向日葵.3 小时前
fastdds.ignore_local_endpoints 属性
服务器·网络·php
昵称为空C5 小时前
SpringBoot接口限流的常用方案
服务器·spring boot
Peter_Deng.6 小时前
Linux 下基于 TCP 的 C 语言客户端/服务器通信详解(三个示例逐步进阶)
服务器·c语言·网络
点灯小铭7 小时前
基于STM32单片机智能RFID刷卡汽车位锁桩设计
stm32·单片机·汽车·毕业设计·课程设计
bai5459368 小时前
STM32 软件I2C读写MPU6050
stm32·单片机·嵌入式硬件
逼子格10 小时前
AT89C52单片机介绍
单片机·嵌入式硬件·51单片机·硬件工程师·硬件工程师真题·at89c52·器件手册
檀越剑指大厂11 小时前
【Linux系列】如何在 Linux 服务器上快速获取公网
linux·服务器·php
共享家952711 小时前
linux-高级IO(上)
java·linux·服务器
生涯にわたる学び12 小时前
ARM 实操 流水灯 按键控制 day53
arm开发·嵌入式硬件