一、开发测试环境
野火stm32开发板,w5500模块,Tftpd64软件,rt-thread操作系统和netutils软件包(网络小工具集)。(RT-Thread 目前支持 TFTP 服务器和 TFTP 客户端)。
二、tftp介绍-简单文件传输的协议
TFTP (Trivial File Transfer Protocol, 简单文件传输协议)是 TCP/IP 协议族中的一个用来在客户机与服务器之间进行 简单文件传输的协议 ,提供不复杂、开销不大的文件传输服务,端口号为 69 ,比传统的 FTP 协议要轻量级很多 ,适用于小型的嵌入式产品上。
三、单片机开启tftp服务器的方法
基于 <手把手教-单片机stm32基于w25q128使用文件系统> 和 <手把手教-单片机和w5500模块基于rt-thread中wiznet软件包的使用> 这2篇文章建立工程,(注意w5500的复位脚改为了PB8)。
已经具有的功能,如下:
①文件系统功能;
②网络支持select等api的操作。
添加netutils软件包,如下:
直接编译下载到开发板,打印信息如下:
手动挂载W25Q128
开启tftp服务器功能 ,指令
tftp -s
四、测试
①打开Tftpd64软件,选择tftp 客户端功能,填写服务器ip和默认端口号69
②选择本地文件test1.txt
③点击 Put 按钮上传文件到指定位置,不填默认为根目录
④查看单片机,是否正确接收
⑤测试从服务器下载文件,选择get按钮
查看本地文件,和服务器数据相同。