ESP8266例程解析⑤UDP client and server

本文介绍了ESP8266如何作为UDP客户端和服务器进行通信。UDP协议是一种无连接、不可靠的协议,适用于快速发送小数据量的情况。在UDP通信中,ESP8266作为客户端时需连接手机设定的UDP服务器,而作为服务器时则需开启热点等待设备接入。文中详细分析了UDP客户端的代码流程,并给出了设置和操作的注意事项。
摘要由CSDN通过智能技术生成

一、简介

  1. UDP 是 User Datagram Protocol的简称,是一种无连接、不可靠的协议,每一个数据报都是一个独立的信息,它在网络上以任何可能的路径传到目的地,但不保证是否真的传到目的地、是否过程中真的保证了数据的完整性!
  2. UDP就好似发短信,只管发出去,至于对方是不是空号(网络不可到达)能不能收到(丢包)等并不关心。
  3. UDP无需等待对面的确认了,再发送数据过去。这执行效率较高,适合要求发送迅速、数据小的连接!
  4. 在网络传输应用层中,通常使用TCP和UDP这三种协议实现数据的传输。在传输过程中,需要双向的通讯连接实现数据的交互。因此,在这双向链路的一端称之为socket,一个socket有一个IP地址和端口号。

二、UDP client and server

UDP client(8266为UDP客户端,手机为UDP服务端)

提示:
①.必须要服务端先开启,也即是手机先开启服务,设置对应的端口!然后8266开启UDP客户端去连接手机,进行通讯。
②.如果没有设置对端口对应,也会提示手机发送成功,因为UDP协议就是发送出去,不管是否到达目的地。

UDP client流程分析 (即代码分析)

  1. 8266分区初始化

  2. 设置串口

  3. WiFi设置模式(station模式)

  4. esp8266 station初始化并使能

  5. 连接路由器

  6. 回调定时器函数

    回调函数Check_WifiState
    查询esp8266 station接口连接AP的状态
    设置 ESP8266 发送 UDP广播包时,从 station 接口发送
    分配发送空间
    设置类型为UDP协议,设置本地端口 目标端口 目标IP地址(广播 255.255.255.255)
    执行接收或者发送函数
    建议UDP连接 发送测试内容

/** A espconn descriptor */
struct espconn
 {
    /** type of the espconn (TCP, UDP) */
    enum espconn_type type;
    /** current state of the espconn *
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值