使用 STM32F103RC 芯片,STM32IDE 1.11.0 编译器。LwIP 2.1.3 版本,FreeRTOS 10
支持套接字通信和ping通信。
核心是 lwip 在 OS 模式下的 移植,opt 配置 头文件 中的系统相关参数的配置 非常重要。
FreeRTOS 的 内存配置也非常重要,要考虑到 lwip 会动态创建 task。
主程序在初始化完成后,启动一个 task ,轮询 lwip 的底层数据包。
LwIP 协议栈 驱动 ethernetif.c
ethernetif_init() -> low_level_init() -> 初始化底层 MAC&PHY
[task] DefaultTask() -> ethernetif_input() -> low_level_input() -> mux + read()
[task] tcpip_thread() -> low_level_output() -> mux + write()
1