本帖最后由 wudianjun2001 于 2016-12-13 16:09 编辑
前面我们测试了TCP模式的服务器和客户端模式,这次我们来测试UDP模式,板卡一上电就监听端口,接收到数据后进行显示处理,然后回发应答数据。
FireduinoWiFi UDP流程 UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、处理器的处理能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。
第一步: 创建一个 WiFiUDP对象,接着调用对象函数begin函数,初始化UDP对象以及开始监听端口,参数为需要监听的端口号。
第二步: 数据的接收:如果UDP端口接到到远程发送的数据,通过调用对象parsePacket函数可以获取数据包大小。之后通过调用对象函数read 读取数据。 数据的发送:UDP 数据包的发送需要通过对象函数beginPacket指定远程主机的IP地址和端口号,之后调用对象函数write写入数据后,调用对象函数endPacket完成组包后扔到网络发送。
第三步: 完成数据传输后可以调用UDP对象 stop 函数 释放UDP资源。
网络参数定义,这里包含了UDP的头文件,定义了监听的端口
网络初始化,连接到WIFI后监听端口数据情况
主循环的内容
板卡上电串口打印的信息,可以看到板卡的IP
PC机上,软件打开UDP模式,进行IP地址和端口设置,然后发送数据
软件收到连接成功的信息后,发送数据给客户端 源代码 |