这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【转载】STM32学习笔记:ESP8266模块--from森

共1条 1/1 1 跳转至

【转载】STM32学习笔记:ESP8266模块--from森

工程师
2024-07-20 01:18:20     打赏

开始拿到后首先应该掌握的就是测试,熟悉AT指令,因为串口wifi通信是采用AT指令进行通信的,

在这里需要注意一点的就是:在编写程序的时候,一个串口(usart2)连接ESP8266,另一个串口(USart1)通过USB-TTL连接PC机查看输出信息,

GPIO0 默认是工作模式(不接线)。如果接了低电平就是下载模式(给模块刷固件!!),所以可以不接线,当然也可以接高电平。
反正一开始连接的时候CH_PD必须为高电平。其余的可以不接。
如果电脑的wifi上显示了你的wifi信号说明模块已经工作。
注意默认的波特率是115200!!!!!!设置好串口调试助手的波特率,再贴张图片吧防止亲们忘。

记得输入各种AT指令前,勾选上“发送新行”,然后输出READY!代表系统正
系统启动后,系统会输出一堆乱码,就是系统开机启动电平的变化状态,不影响。开机后,蓝灯会闪,红灯长亮,
来谈谈EPS8266的AT指令
先说一下EPS8266模快的两(三)种工作模式:Station 模式,AP 模式和AP 兼 Station 模式;有玩过路由器的应该知道路由器除了正常使用(AP模式)外,还可以接收其他路由器的信号(Station 模式),然后再发出来(AP 兼 Station 模式)。这两(三)种工作模式各怎样用呢!
先说一下AP模式下的通信:就设置他的模式为AP模式(就相当于普通路由器)
AT+CWMODE=? 响应返回当前可支持哪些模式
AT+CWMODE? 响应当前处于哪种模式
AT+CWMODE=2 1-Station 模式,2-AP 模式,3-AP 兼 Station 模式
步骤1 发送AT+CWMODE=2设置为AP 模式

这种模式下模块发出无线wifi信号。用电脑连接它。
步骤2 发送AT+RST 重启模块使AT+CWMODE=2模式生效

步骤3 发送AT+CIPMUX=1 启动多连接


为什么要启动多路连接模式,意思是允许多个客户端连接,当然模块最多允许5个客户端连接(每个客户端对应一个id号,0–4)。也是必须设定的,不然配置为服务器会出错
接着就是怎样与它通信。当然是网络通信,也就是TCP/UDP通信两种。{UDP–分为发送端和接收端,面向无连接的通信(速度快),只向指定的ip(每一台电脑都有自己的ip地址,向指定的ip地址发数据,数据就发送到了指定的电脑)端口(我把数据发送到电脑了,电脑中的哪个程序接收呢。不知道亲们知不知道,其实每一个网络软件都有自己的通信端口,像qq,酷狗音乐的下载端口等等。现在知道了吧,向指定的ip地址和指定的端口发数据,才能发送到指定的电脑的指定的程序上)不管你接没接收到,只管发}
{TCP–分为服务器和客户端,与udp不同的是双方建立正常的连接后,才能通信,每次通信都会检测连接正不正常,(通信可靠,速度比udp慢)}
模块作为服务器
步骤4 发送AT+CIPSERVER=1,8080开启服务器模式,端口号8080


打开电脑的网络调试助手(别忘了连接它的无线网)

对了远程主机地址为什么是192.168.4.1
你可以发送AT+CIFSR指令查看一下模块的自身ip地址

点击连接

接着就是发信息(客户端发给服务器)

接着就是发信息(服务器发给客户端)

去掉发送新行点击发送
客户端接收
模块作为客户端,PC作为服务器,最有意思的来了
模块作为客户端咱从头再来,
1,还是设置模块的工作模式为ap模式AT+CWMODE=2
2,复位一下AT+RST
3,发送AT+CIPMUX=0 启动单连接,先弄单连接后弄多连接,多连接比较有意思,想知道就慢慢的往下看
4,AT+CIPSTART=”TCP”,”192.168.4.2”,8080
TCP说明是tcp连接,如果写udp就是udp连接
192.168.4.2连接的ip地址,电脑的ip,端口号8080



接着就可以通信了
单路连接时发送指令为AT+CIPSEND=x , x为发送的字节数

看多路连接(首先提醒:一个模块可以做到四路连接)
1,还是设置模块的工作模式为ap模式AT+CWMODE=2
2,复位一下AT+RST
3,发送AT+CIPMUX=1 启动多连接
4,AT+CIPSTART=0,”TCP”,”192.168.4.2”,8080
5, AT+CIPSEND=0,20
6,去掉回车随便打些东西
7,发送
接着再发送
AT+CIPSTART=1,”TCP”,”192.168.4.2”,8080
AT+CIPSTART=2,”TCP”,”192.168.4.2”,8080
AT+CIPSTART=3,”TCP”,”192.168.4.2”,8080
AT+CIPSTART=4,”TCP”,”192.168.4.2”,8080
都连接上了!!!!!!

5, AT+CIPSEND=1,20
6,去掉回车随便打些东西
7,发送
5, AT+CIPSEND=2,20
6,去掉回车随便打些东西
7,发送
5, AT+CIPSEND=3,20
6,去掉回车随便打些东西
7,发送
5, AT+CIPSEND=4,20
6,去掉回车随便打些东西
7,发送

再用网络调试助手给模块发信息试一试
好了AP模式就讲这么多,该Station 模式了
Station模式与AP模式不同在于,Station模式需要让模块连接上家里的路由器的wifi。其余的都一样吧!
就让模块在Station模式下做服务器,然后与电脑通信(要在一个wifi下,电脑和模块连接同一个wifi信号)
1,发送AT+CWMODE=1设置为Station模式
2,AT+RST 重启生效
3,连接家里的路由AT+CWJAP=”TP-LINK_A52”,”1234567890”


发送AT+CWLAP可以查询周围的wifi信号
发送AT+CWJAP可以看一看wifi是否真的连接上
4,AT+CIPMUX=1 启动多连接
5,AT+CIPSERVER=1,8080 打开服务器端口为8080
6,AT+CIFSR 看一下你模块现在分得的ip是多少,因为只要模块连网就会重新分配ip地址。这也是网络助手里面远程主机栏要填写的ip地址



通信啥的就不多说了。
用模块做客户端
1 连接路由器AT+CWJAP=”TP-LINK_A52”,”1234567890”
2 AT+CIPMUX=0 单连接
3 AT+CIPSTART=”TCP”,”192.168.1.101”,8080
后面就是发送数据,如果出现一直连接不上关闭电脑防火墙


多连接就不演示了,
AT+CIPSTART=0,”TCP”,”192.168.1.101”,8080或
AT+CIPSTART=1,”TCP”,”192.168.1.101”,8080或
AT+CIPSTART=2,”TCP”,”192.168.1.101”,8080或
AT+CIPSTART=3,”TCP”,”192.168.1.101”,8080或
AT+CIPSTART=4,”TCP”,”192.168.1.101”,8080或
发送数据
AT+CIPSEND=0,20或
AT+CIPSEND=1,20或
AT+CIPSEND=2,20或
AT+CIPSEND=3,20或
AT+CIPSEND=4,20

来源: 整理文章为传播相关技术,网络版权归原作者所有,如有侵权,请联系删除。


共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]