STM32F407+Cubemx学习&应用[8]——TCP服务端将A客户端的数据转发给B客户端
本《STM32F407+Cubemx学习&应用系列》是自己在做工程时学习和琢磨的总结,还有诸多不足希望能够指出。本系列主要针对串口通信的一些应用,和TCP、CAN通信的一些简单应用。
本例程的目的:通过TCP服务端实现中转,实现TCP客户端数传输,并用串口打印出来。
本例程的基础例程:https://blog.csdn.net/LW_12345/article/details/121453986?spm=1001.2014.3001.5501《STM32F407+Cubemx学习&应用[2]——时间中断中处理任务(相当于多了个线程,能够处理多任务)》
参考:硬石例程《YSF4_HAL_ETH-008. TCP Server(*发送数据)》
硬件
硬石开发板:YS-F4Pro(用于工业控制~~~师兄选的哈)
路由器和网线
建局域网
比较简单,自己百度哈。
Cubemx配置工程
时钟配置
STLink下载配置
USART1配置及串口打印
TIM6时间中断配置
ETH配置
LWIP配置
其他配置默认
Keil中代码
增加了ethernetif.h,ethernetif.c,app_ethernet.h,app_ethernet.c,tcp_echoserver.h,tcp_echoserver.c,六个文件。
由于TCP通信太复杂了,好多东西就直接搬硬石的了,包括main.c文件中调用,tcp_out.c中也有所改动,代码就不在这赘述啦,直接上干货。
源码下载:
https://gitee.com/Luweizhiyuan2020/stm32-f407_-cubemx.git
(OrbitalrobotLowermachine_TCP0.0.0)