1)实验平台:正点原子领航者ZYNQ开发板
2)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761
3)全套实验源码+手册+视频下载地址:http://www.openedv.com/docs/boards/fpga/zdyz_linhanz.html
4)对正点原子FPGA感兴趣的同学可以加群讨论:876744900
5)关注正点原子公众号,获取最新资料
![267326738abe4e1ad31a68851db1c432.png](https://i-blog.csdnimg.cn/blog_migrate/2f00dab57178c6d728fc421f6247374b.png)
第三十七章基于UDP协议的远程更新QSPI Flash实验
上一实验我们利用TCP协议实现了远程更新QSPI。为了满足不同的网络需求,本次实验我们将上一章实验使用的TCP协议替换成UDP协议。本章包括以下几个部分:
37.1简 介
37.2实验任务
37.3硬件设计
37.4软件设计
37.5下载验证
37.1简介
UDP由于本身的尽最大能力交付问题,即不稳定可靠,在传输文件上并不合适,在网络性能较好时,能够不丢失数据,当网络性能较差时,会面临数据丢失的问题,可靠性无法保证。UDP更适合于传输音视频这种对实时性要求高而又能容忍丢失数据的场合。当然了,也可以在UDP协议之上,编写一个能够确保可靠性的应用层协议,如TFTP协议。
本实验只是将《基于TCP协议的远程更新QSPI Flash实验》中的TCP协议实现改为UDP协议实现,了解如何使用UDP协议实现远程更新QSPI。如果在实际需求中确实需要使用UDP协议进行远程更新,可以在该实验的基础上增加确认重传机制,同时需要编写一个上位机使该确认重传机制能够正常工作;或者结合《基于lwip的TFTP服务器实验》使用TFTP协议以确保文件传输的可靠性。
37.2实验任务
本章的实验任务是使用LWIP协议栈的UDP协议实现远程更新QSPI的功能,当输入“update”命令时更新QSPI并反馈信息,当输入“clear”命令时之前传输的数据无效。
37.3硬件设计
本次实验的硬件设计与《基于TCP协议的远程更新QSPI Flash实验》相同。
37.4软件设计
上一章的实验的软件设计部分,为了提高数据传送的效率,我们对lwip进行相应设置。其实官方提供的模板中有优化好的设置,我们上一章的设置就是参考官方的设置。本章我们使用官方优化好的设置,避免自己手动优化。
我们删除上一实验的应用工程和BSP工程,新建一个名为“qspi_update_udp”的工程,如图 37.4.1所示。点击“Next >”,在选择模板界面中,选择“lwip UDP Perf Server”,如图 37.4.2所示: