0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

在STM32F407板子上搭建TCP服务器及TFTP服务器

STM32单片机 来源:互联网 作者:佚名 2017-09-25 18:05 次阅读

掉落的枫叶像老工程师的笔记经验我打开夜灯照亮岁末的秋天晚霞掠过天边北风掠过工作台的桌面我把努力融进了落叶想换来熟悉的那些肯定的笑颜

开发平台

STM32F407开发板(带以太网),板子上的PHY为LAN8720A,没有用到显示屏全为串口输出调试信息实现功能

通过STM32CubeMX在原子STM32F407板子上搭建TCP Server 及 TFTP Server ,实现这些功能非常简单。步骤

功能介绍、工程搭建、工程代码、TFTP 服务器测试

1、TCP Server 实现显示连接上的客户端IP及对客户端发来的数据回传2、TFTP Server 实现IAP功能及读取MCU内部FLASH数据。这里用到的是文件传输协议,主要是参考官方文档UM1709,及官方STM324xG_EVAL的LWIP IAP例子。

工程搭建

外设配置

打开STM32CubeMX,点NEW PROJECT,在左侧的输入框中输入407ZG,在右侧会显示STM32F407ZGT6的MCU列表,选择此列表,双击。设置时钟源为外部时钟开启SWD调试接口,开启ETH外设,选择RMII接口(LAN8720A为RMII接口),中间件里时能LWIP。使用RMII接口的时候软件会自动配置对应的引脚,但是一定要仔细对比软件配置的引脚是否为板子上硬件所连接的

原子F407板子上的LAN8720A的RMII接口引脚如下图,

  1. 配置时钟外部高速晶振选择为8M,PLL SORCE MUX 选择为HSE,在HCLK处输入168点回车,软件会自动配置好

  2. 中间件配置这里主要配置,ETH、LWIP、串口1、GPIO

  3. 生成工程代码

    点左上角的Project,选择Settings...(不建议直接点黄色的齿轮),点击OK。再点右上方的黄色齿轮即可生成工程代码

工程代码

1、TCP Server 的实

看起来代码很多,其实真的不复杂。

大致流程:先新建一个TCB_PCB、开始监听、挂载客户端连接请求回调函数、挂载接收数据回调函数、挂载发送完成回调函数、挂载出错回调函数、挂载心跳包回调函数、关闭连接等,最重要的是释放内存!每收到一个数据链,它已经被申请了内存,所有在处理完这个数据后一定要释放

2、TCP服务器测试网络调试助手连接TCP服务器(两者必须在一个网关里面,192.168.000.XXX),网络调试助手里选择TCP客户端,远程主机IP为 192.168.0.120 , 端口号为7

详细测试步骤请点击阅读原文下载

通过测试,则表示TCP服务器已经完成。您也可以通过手机连接这个路由器的WIFI,通过 网络调试助手APP来连接这个开发板的服务器,电脑可以通过 TCP客户端与开发板的TCP服务器连接同时也可以用手机做TCP客户端连接开发板的TCP服务器

3、TFTP Server 的实现还是在上面的代码上来实现此功能,即在TCP 服务器的代码上实现TFTP 服务器。打开刚才STM32CubeMX工程,在原来的基础上来配置LWIP。

因为是要通过TFTP 来实现 IAP 功能 ,所有一定有FLASH 的操作,这里我们COPY官方例子里面的flash_if.c和flash_if.h

至此,TFTP服务器搭建完成,下载到开发板串口显示如下信息:Start 开始监听 挂载客户端连接回调函数 TFTP初始化成功 Static IP address: 192.168.0.120可以通过上面的TCP服务器测试步骤来测试TCP服务器功能,正常测试,工作正常,ping也能

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2270

    文章

    10895

    浏览量

    355744
  • TFT
    TFT
    +关注

    关注

    10

    文章

    385

    浏览量

    111063
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1353

    浏览量

    79055
  • STM32F4
    +关注

    关注

    3

    文章

    194

    浏览量

    28047
收藏 人收藏

    评论

    相关推荐

    企业云服务器平台设计与搭建

    企业云服务器平台的设计与搭建是一个复杂但系统的过程,涉及多个环节和因素。主机推荐小编为您整理发布企业云服务器平台设计与搭建这一过程的详细阐述。
    的头像 发表于 12-04 09:51 81次阅读

    服务器搭建步骤

    服务器不仅提供了灵活的资源配置和强大的计算能力,还降低了IT基础设施的维护成本。下面,rak小编带您详细了解云服务器搭建的步骤。
    的头像 发表于 10-09 10:58 208次阅读

    飞凌嵌入式ElfBoard ELF 1板卡-常见网络服务搭建TFTP服务搭建

    TFTP(Trivial File Transfer Protocol,简单文件传输协议),是TCP/IP协议族中用来客户机和服务器之间进行简单文件传输的协议,开销很小。
    发表于 09-25 09:44

    服务器搭建详细过程

    随着云计算技术的发展,越来越多的企业和个人开始选择使用云服务器来部署自己的应用和服务。相比于传统的物理服务器,云服务器提供了更高的灵活性、可扩展性和安全性。下面将详细介绍如何
    的头像 发表于 09-12 10:00 334次阅读

    如果ESPTCP客户端与服务器断开连接,如何启用自动重连?

    ESP - TCP 客户端 嵌入式 Linux 服务器 - TCP 服务器 如果ESPTCP
    发表于 07-17 06:25

    tcp方式连接不了服务器了,服务器代码还能开源吗?

    维护服务器吗?已经两天了。http方式还可以连接上,就tcp的方式不行了.服务器代码能开源吗?让我们自己搭建
    发表于 07-15 06:53

    ESP826如何运行AP TCP服务器

    我正在开发一个室外远程控制系统,带有来自ESP8266 AP的专用WLAN。带有 TCP 客户端的平板电脑应连接到它,以便在 ESP 设置一些 GPIO。根据我的理解,ESP TCP
    发表于 07-09 06:27

    分享 | PTP、NTP时间同步服务器的部署与搭建过程

    分享 | PTP、NTP时间同步服务器的部署与搭建过程
    的头像 发表于 05-15 10:01 1025次阅读
    分享 | PTP、NTP时间同步<b class='flag-5'>服务器</b>的部署与<b class='flag-5'>搭建</b>过程

    使用STM32F407正点原子的开发板作为客户端,电脑作为服务器端时程序总是死接收函数上是为什么?

    生成的工程可以ping通,使用STM32F407正点原子的开发板作为客户端,电脑作为服务器端时程序总是死接收函数上,把接收函数屏蔽后程序正常也能于服务器连接上。请大神指教,是否是哪里
    发表于 04-29 06:54

    通过STM32+ESP8266 Wifi模块 +云服务器,做一个数据收发控制的板子服务器方面该如何选择?

    通过STM32+ESP8266 Wifi模块 +云服务器 做一个数据收发控制的板子服务器方面该如何选择?
    发表于 04-25 08:16

    服务器linux搭建ftp服务访问不了怎么解决?

    如果你服务器linux搭建了FTP服务但无法访问,这可能是由于几种原因引起的。以下是一些常见问题和解决方法: 1、防火墙配置:确保防火
    的头像 发表于 04-18 17:23 1496次阅读

    服务器远程不服务器怎么办?服务器无法远程的原因是什么?

    解封。 2.远程端口没有添加到防火墙策略中 很多人可能对这个不是很理解,在这解释一下:端口没有防火墙策略中允许所有人链接,那么这个端口就无法被访问, 同理,远程端口没有加入防火墙策略,就无法访问这台服务器
    发表于 02-27 16:21

    linux服务器和windows服务器

    ,这在满足个性化需求和增强服务器安全 性具有优势。 Linux服务器还具有出色的性能和稳定性。相比之下,Windows服务器性能和稳定性
    发表于 02-22 15:46

     海外云服务器搭建pi节点详细步骤

     海外云服务器搭建pi节点简单吗?海外云服务器搭建pi节点步骤有哪些?小编为您整理发布海外云服务器搭建
    的头像 发表于 02-21 10:16 1111次阅读

    独立服务器和云服务器的区别

    独立服务器和云服务器的区别是很多用户选择服务器时要做的课程,那么独立服务器和云服务器的区别有哪
    的头像 发表于 01-17 10:58 850次阅读