ESP8266-01S的AT指令调试与TCP连接

AT指令ESP-01S与TCP连接

主要是有两点,一个是将ESP-01S作为客户端(STA)模式,连接好WIFI后与TCP服务器相连,二是将ESP-01S作为服务器接收TCP客户端的连接。



硬件

直接上图
在这里插入图片描述这两个都要有的,要不然就只能自己利用USB-TTL串口连接了,比较麻烦。这个连接网上也有教程,这里就不在讲解,因为不管是什么方式,只要能与上位机进行串口通信都可以。


一、ESP-01S作为客户端

首先我在学校里没有路由器,暂时用手机热点代替。固件就用原始的固件就行,先不修改。WIFI名称qqlaoban1,密码12345678。下面进行测试。

在这里插入图片描述
首先上电,他会有信息显示。你会看到乱码,这是因为上电时ESP-01S发送信息的波特率为74880,所以会有乱码。然而AT指令所用波特率为115200,所以乱码先不管。而且进行AT调试时,一定先把发送新行选中,否则你每打一个指令,都需要在末尾加一个enter键,比较麻烦。

测试一下
在这里插入图片描述
说明没问题。然后将工作模式设为STA。
在这里插入图片描述
STA就相当于手机,要连WIFI。AP相当于路由器,其它设备连接它。STA对应1。AP对应2。STA和AP对应3,即两种都能用。
在这里插入图片描述
然后如图所示,输入该条指令进行连接,如果连接不上可以AT+RST复位一下,他应该会自动再连接。我遇到问题,就是无法连接,总是显示+CWJAP:3。 然后某一次我复位了一下就好了,可能是凑巧,也可能是ESP-01S的STA的模式问题,后者最有可能。如果连接不上,可以过10分钟左右再连接试试,最好能保持手机热点不断。
这里显示WIFI Connected, WIFI GOT IP,说明已经连接上了。
在这里插入图片描述
然后输入上图命令,发现它的IP为192.168.19.245。后面有大用。然后打开上位机网络调试助手(netAssist.exe),网上有,可自行下载。
在这里插入图片描述
然后本机地址选择与ESP-01S在同一个局域网下的IP地址。注意,此时电脑也连接的手机热点。如下
在这里插入图片描述
在这里插入图片描述
协议类型为TCP Server,端口8080。打开之后返回串口调试助手。再继续AT发指令,让ESP-01S进行连接。
在这里插入图片描述
可见,发送完AT指令后,显示CONNECT,即连接成功。而网络调试助手也成功显示,有客户端连接。
然后利用ESP-01S进行发送数据。
在这里插入图片描述
输完AT+CIPSEND=10(意思发送10个字符)之后,然后它会有提示,让你输入10个字符,输完之后点击发送,他会显示SEND OK。然后看网络调试助手有没有结果。
在这里插入图片描述
看,有了。那么PC端给ESP-01S发送,
在这里插入图片描述
可见,串口端(ESP-01S)也收到了。那么ESP-01S作为客户端,PC作为服务器端就到此为止,后续可根据此步骤在单片机上编写程序了。

二、EPS-01S作为服务器

首先用串口发送AT指令,设为AP模式,如下。
在这里插入图片描述
然后让ESP-01S作为WIFI发射器, WIFI名称为esp01s_123,密码为12345678。
在这里插入图片描述
然后电脑看一下有没有这个名称的WIFI。
在这里插入图片描述
看一下,有了,如果没有的话请AT+RST一下。连接即可。然后查看一下IP地址,如下,后面有用。
请添加图片描述

然后AT+CIPMUX=1开启多连接。
请添加图片描述
然后AT+CIPSERVER=1,8081开启服务器,端口8081

请添加图片描述
然后可以通过网络调试助手进行连接了。如下图所示
请添加图片描述
注意串口收到的数据,0,Connected。说明连接号为0,那么ESP-01S发送数据,就需要指定连接号。AP向STA发数据如下。发送连接号为0,10个字符
请添加图片描述
STA向AP发送数据
请添加图片描述


总结

那么以上就是大致流程了,具体其它协议,如MQTT等等还有待研究。调试ESP-01S需要有耐心,若已知出错,可以查一下是不是AT指令输错了,如果没有可以把ESP-01S断电一会再试试(玄学),或者看一下哪里没有配置好,都没有的话就重新刷一下固件(万一固件坏了呢),或者AT+RST一下等等。总之,需要耐心。
另外,最好能找到一份完整的AT手册,我这里就没有找到,在各大网站上不断搜寻才勉强完成这次实践。提供一下安信可的官网,上面资料还算全面。
https://docs.ai-thinker.com/esp8266

### ESP-01S AT命令列表及说明 #### 一、基本设置类指令 - **AT** 用于测试模块是否正常工作。如果返回`OK`则表示模块可以正常接收并处理指令[^1]。 ```plaintext AT ``` - **AT+RST** 重启ESP8266模块,使配置生效或恢复默认状态。 ```plaintext AT+RST ``` #### 二、Wi-Fi连接控制指令 - **AT+CWMODE** 设定WiFi模式:1为Station模式;2为SoftAP模式;3为Station+SoftAP混合模式。 ```plaintext AT+CWMODE=<mode> ``` - **AT+CWJAP** 连接到指定SSID和密码的无线网络,在成功建立连接后会自动获取IP地址。 ```plaintext AT+CWJAP="<ssid>","<password>" ``` #### 三、TCP/IP协议栈操作指令 - **AT+CIFSR** 查询当前设备所获得的本地IP地址信息,适用于STA/AP两种模式下查看本机IP情况。 ```plaintext AT+CIFSR ``` - **AT+CIPSTART** 启动客户端链接,参数分别为传输层协议(TCP/UDP)、远程服务器域名或IP以及端口号。 ```plaintext AT+CIPSTART="TCP","server_ip",port_number ``` #### 四、数据发送接收指令 - **AT+CIPSEND** 向已建立的数据链路发送数据包,需先输入待发字节数再按回车键继续录入实际要传送的内容。 ```plaintext AT+CIPSEND=<length> ``` - **AT+CIPCLOSE** 关闭现有的TCP/UDP连接,释放资源以便重新发起新的请求。 ```plaintext AT+CIPCLOSE ``` 以上列举了一些常用的ESP-01S AT指令及其功能描述。这些命令能够帮助开发者完成从初始化硬件直到实现互联网通讯的各项任务。对于更详细的指令集文档建议查阅官方手册或其他权威资料以确保应用准确性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值