LwIP 2.2.1在STM32F407VET6平台 移植

This commit is contained in:
冯佳
2026-01-29 17:26:04 +08:00
parent ffd33c4644
commit e7e10a8328
2207 changed files with 409723 additions and 165 deletions

110
ThirdParty/lwip-2.2.1/port/lwipopts.h vendored Normal file
View File

@ -0,0 +1,110 @@
/*
* lwipopts.h - STM32F407VET6 平台的 LwIP 配置文件
*
* 根据 STM32F407VET6 硬件特性优化配置
*/
#ifndef __LWIPOPTS_H__
#define __LWIPOPTS_H__
/* ---------- 平台特定配置 ---------- */
/* 无操作系统配置 */
#define NO_SYS 1
#define SYS_LIGHTWEIGHT_PROT 0
#define NO_SYS_NO_TIMERS 1
#define NO_SYS_NO_SYS_TIMEOUT 1
/* 内存配置STM32F407VET6 有 192KB RAM */
#define MEM_SIZE 16384 /* 16KB 内存池 */
#define MEMP_NUM_PBUF 16 /* PBUF 数量 */
#define MEMP_NUM_UDP_PCB 8 /* UDP PCB 数量 */
#define MEMP_NUM_TCP_PCB 8 /* TCP PCB 数量 */
#define MEMP_NUM_TCP_PCB_LISTEN 4 /* TCP 监听 PCB 数量 */
#define MEMP_NUM_TCP_SEG 16 /* TCP 段数量 */
/* PBUF 配置 */
#define PBUF_POOL_SIZE 16 /* PBUF 池大小 */
#define PBUF_POOL_BUFSIZE 1520 /* PBUF 缓冲区大小(以太网 MTU + 头部) */
/* 网络接口配置 */
#define LWIP_NETIF_LINK_CALLBACK 1 /* 启用链接状态回调 */
#define LWIP_NETIF_HOSTNAME 1 /* 启用主机名 */
#define NETIF_MAX_HWADDR_LEN 6 /* MAC 地址长度 */
/* ---------- 协议栈配置 ---------- */
/* IPv4 配置 */
#define LWIP_IPV4 1 /* 启用 IPv4 */
#define LWIP_ARP 1 /* 启用 ARP */
#define LWIP_ICMP 1 /* 启用 ICMPPing */
#define LWIP_IGMP 0 /* 禁用 IGMP */
#define LWIP_DHCP 1 /* 启用 DHCP */
/* IPv6 配置 */
#define LWIP_IPV6 0 /* 禁用 IPv6 */
/* TCP 配置 */
#define LWIP_TCP 1 /* 启用 TCP */
#define LWIP_TCP_KEEPALIVE 1 /* 启用 TCP 保活 */
#define TCP_TTL 255 /* TCP TTL */
#define TCP_WND 2048 /* TCP 窗口大小 */
#define TCP_MAXSEG 1460 /* TCP 最大段大小 */
/* UDP 配置 */
#define LWIP_UDP 1 /* 启用 UDP */
#define UDP_TTL 255 /* UDP TTL */
/* DNS 配置 */
#define LWIP_DNS 1 /* 启用 DNS */
/* ---------- 应用层配置 ---------- */
/* 套接字 API - 在无操作系统环境中禁用 */
#define LWIP_SOCKET 0 /* 禁用套接字 API */
/* 网络接口 API - 在无操作系统环境中禁用 */
#define LWIP_NETIF_API 0 /* 禁用网络接口 API */
/* 网络连接 API - 在无操作系统环境中禁用 */
#define LWIP_NETCONN 0 /* 禁用网络连接 API */
/* ---------- 性能优化 ---------- */
/* 校验和配置 */
#define CHECKSUM_BY_HARDWARE 1 /* 启用硬件校验和 */
/* 内存优化 */
#define MEM_ALIGNMENT 4 /* 内存对齐 */
#define MEM_SIZE_ALIGNED 1 /* 内存大小对齐 */
/* ---------- 调试配置 ---------- */
/* 调试级别 */
#define LWIP_DEBUG 1 /* 启用调试 */
#define LWIP_DBG_MIN_LEVEL LWIP_DBG_LEVEL_OFF
#define LWIP_DBG_TYPES_ON LWIP_DBG_ON
/* 具体模块调试 */
#define NETIF_DEBUG LWIP_DBG_OFF
#define PBUF_DEBUG LWIP_DBG_OFF
#define IP_DEBUG LWIP_DBG_OFF
#define ICMP_DEBUG LWIP_DBG_OFF
#define TCP_DEBUG LWIP_DBG_OFF
#define UDP_DEBUG LWIP_DBG_OFF
#define TCPIP_DEBUG LWIP_DBG_OFF
#define DHCP_DEBUG LWIP_DBG_OFF
#define DNS_DEBUG LWIP_DBG_OFF
#define SOCKETS_DEBUG LWIP_DBG_OFF
/* ---------- 平台特定定义 ---------- */
/* STM32F407VET6 特定定义 */
#define STM32F407xx 1
#define LAN8720_PHY_ADDRESS 0x00 /* LAN8720 PHY 地址 */
/* 硬件校验和支持 */
#define ETH_PAD_SIZE 0
#define LWIP_CHECKSUM_ON_COPY 0
#endif /* __LWIPOPTS_H__ */