EPS8266远端固定UDP传输

UDP通信

先回顾一下TCP与CDP的区别

UDP传输不区分server或者client,由指令AT+CIPSTART建立传输。

UDP传输分为固定远端的UDP通信和远端可变的UDP通信

1.配置WiFi模式

AT+CWMODE=3

响应:ok

2连接路由器

AT+CWJAP="SSID","password"

响应:ok

3.查询ESP8266设备的IP地址

AT+CIFSR

响应:

+CIFSR: APIP, "192.168.4.1"

+CIFSR: APMAC, "1a: fe: 34: a5:8d: c6"

+CIFSR: STAIP, "192.168.3.133"

+CIFSR: STAMAC, "18: fe: 34: a5: 8d: c6"

OK

SSCOM软件上的端口号选择UDP,远程哪里填写我们8266设备的地址

4.PC与ESP8266设备连接同一路由器,在PC端使用网络调式工具,建立一个UDP传输

假设PC创建的UDP自身地址为192.168.101.116,端口为8080.

基于前文步骤,介绍 UDP通信示例

固定远端的UDP通信

UDP通信的远端固定,由AT+CIPSTART指令的最后一个参数设置为0决定。系统将分配一个连接号给这个固定连接,UDP通信双方不会被其他设备替代。

1.使能多连接

AT+CIPMUX=1 AT+CIPMUX=1为多连接模式,AT+CIPMUX=0为单连接模式

响应:ok

2.创建UDP传输。列如,分配连接号为4,指令如下

AT+CIPSTART=4,"UDP","192.168.101.110",8080,1112,0

响应:

4,CONNNECT

ok

指令中的参数说明如下:


• "192 168.101.710:8080 为 UDP 传输的远端 IP和端口 ,(**这里的远端即为软件上显示的本地那栏)**即前文步骤4中PC 建立的UDP端口;
1112 为ESP8266 本地的 UDP 端口,用户可自行设置,如不设置则为随机值;
•0表示当前 UDP 传输建立后,UDP远端不会被其他设备更改
;即使有其他设备通过UL协议发数据到

ESPS266 UDP 端口 1112,ESP8266的第4号UDP 传输的远端也不会被替换,使用指令"AT+CIPSEND=4,X"发送数据,仍然是当前固定的 PC 端收到。

<link ID>:网络连接ID(0~4),用于多连接情况

<type>:字符串参数,连接类型,"TCP","UDP"或"SSL"

<remote IP>:字符串参数,远端IP地址

<remote port>:远端端口号

【<UDP local port>】:传输时,设置本地端口

【<UDP mode>】:UDP传输的属性,若透传,则必须为0

3.8266发送数据

AT+CIPSEND=4,7 //Send 7 bytes to transmission NO.4,超过长度就只发送前几个,记得取 消 发送新行,发送新行就会发送回车和换行导致字节超过7

>UDPtest //enter the data ,no CR

响应:

Recv 7 bytes

SEND ok

相关推荐
岸边的风8 分钟前
无需公网IP的文件交互:FileCodeBox容器化部署技术解析
网络·网络协议·tcp/ip
Zonda要好好学习1 小时前
Python入门Day4
java·网络·python
2501_915374351 小时前
UDP vs TCP:核心差异与应用场景全解析
网络协议·tcp/ip·udp
Edingbrugh.南空1 小时前
操作系统级TCP性能优化:高并发场景下的内核参数调优实践
网络协议·tcp/ip·性能优化
riverz12271 小时前
TCP backlog工作机制
服务器·网络·tcp/ip
yqcoder2 小时前
1. http 有哪些版本,你是用的哪个版本,怎么查看
网络·网络协议·http
Fanmeang5 小时前
OSPF路由过滤
运维·网络·华为·ip·路由·ospf·路由过滤
2501_915918416 小时前
接口漏洞怎么抓?Fiddler 中文版 + Postman + Wireshark 实战指南
websocket·网络协议·tcp/ip·http·网络安全·https·udp
我是阿呆同学6 小时前
仿mudou库one thread oneloop式并发服务器
网络
是阿建吖!6 小时前
【Linux | 网络】网络编程套接字
linux·网络