/* * 模块名称:Network Configuration * 模块功能:网络子系统配置宏定义,包括最大Socket数量、缓冲区大小、 * 超时时间等参数配置 * 适用平台:STM32F4 系列(CH395F 以太网芯片) * 作者:王建锋 * 创建日期:2026-07-18 * 修改记录: */ #ifndef __NET_CONFIG_H #define __NET_CONFIG_H #ifdef __cplusplus extern "C" { #endif /* * 最大支持的 Socket 数量(CH395F 支持 0~7) */ #ifndef NET_MAX_SOCKETS #define NET_MAX_SOCKETS 8 #endif /* * TCP Server 多连接模式配置 * 监听 Socket 索引和数据 Socket 起始索引 */ #ifndef NET_TCP_SERVER_LISTEN_SOCK #define NET_TCP_SERVER_LISTEN_SOCK 0 /* 监听 Socket 索引 */ #endif #ifndef NET_TCP_SERVER_DATA_SOCK_START #define NET_TCP_SERVER_DATA_SOCK_START 1 /* 数据 Socket 起始索引 */ #endif #ifndef NET_TCP_SERVER_MAX_CLIENTS #define NET_TCP_SERVER_MAX_CLIENTS 7 /* 最大客户端数(1~7) */ #endif /* * 缓冲区大小配置 */ #ifndef NET_SEND_BUF_SIZE #define NET_SEND_BUF_SIZE 4096 /* 发送缓冲区大小(字节) */ #endif #ifndef NET_RECV_BUF_SIZE #define NET_RECV_BUF_SIZE 4096 /* 接收缓冲区大小(字节) */ #endif /* * 超时时间配置(毫秒) * 0 = 无限等待(阻塞模式) */ #ifndef NET_CONNECT_TIMEOUT_MS #define NET_CONNECT_TIMEOUT_MS 5000 /* 连接超时 */ #endif #ifndef NET_ACCEPT_TIMEOUT_MS #define NET_ACCEPT_TIMEOUT_MS 0 /* 接受连接超时(0=无限等待) */ #endif #ifndef NET_SEND_TIMEOUT_MS #define NET_SEND_TIMEOUT_MS 1000 /* 发送超时 */ #endif #ifndef NET_RECV_TIMEOUT_MS #define NET_RECV_TIMEOUT_MS 30000 /* 接收超时(30秒,0=无限等待) */ #endif /* * TCP KeepAlive 配置 */ #ifndef NET_KEEPALIVE_IDLE_MS #define NET_KEEPALIVE_IDLE_MS 7200000 /* KeepAlive 空闲时间(默认2小时) */ #endif #ifndef NET_KEEPALIVE_INTVL_MS #define NET_KEEPALIVE_INTVL_MS 75000 /* KeepAlive 探测间隔(默认75秒) */ #endif #ifndef NET_KEEPALIVE_CNT #define NET_KEEPALIVE_CNT 9 /* KeepAlive 探测次数(默认9次) */ #endif /* * select/poll 最大 fd 数量 */ #ifndef NET_SELECT_MAX_FDS #define NET_SELECT_MAX_FDS NET_MAX_SOCKETS #endif /* * 轮询延时配置(毫秒) */ #ifndef NET_POLL_DELAY_MS #define NET_POLL_DELAY_MS 1 /* 非阻塞轮询延时 */ #endif /* * 消息队列配置 */ #ifndef NET_MSG_QUEUE_LENGTH #define NET_MSG_QUEUE_LENGTH 8 /* 消息队列深度 */ #endif #ifdef __cplusplus } #endif #endif /* __NET_CONFIG_H */