// the find
xukai871105/uip_freemodbus_tcp
实现modbus tcp,modbus协议栈使用freemodbus,以太网协议栈使用uIP,硬件环境STM32和ENC28J60
A minimal Modbus TCP implementation for STM32F1 microcontrollers using uIP 1.0 as the TCP/IP stack and FreeModbus as the protocol layer, talking to an ENC28J60 SPI Ethernet chip. This is a reference integration, not a library — one specific hardware configuration wired together and committed as a flat project.
The component selection is sensible for resource-constrained bare-metal work: uIP handles TCP on chips without a MAC, FreeModbus is well-understood and field-tested for industrial Modbus, and ENC28J60 is a common cheap SPI Ethernet option for STM32. The port layer (porttcp.c, tapdev.c) provides a clear seam showing exactly how to glue uIP's network interface to FreeModbus's TCP port — useful if you're doing the same integration yourself. The full STM32 Standard Peripheral Library is vendored in, so it should build without hunting down separate dependencies.
Last touched in January 2017 — STM32 Standard Peripheral Library has been superseded by HAL/LL for almost a decade, and uIP 1.0 predates that. The README is a single sentence; there are no build instructions, no pinout diagram, no explanation of what Modbus registers are exposed or how to exercise the code. The project file is IAR EWARM-specific, so porting to STM32CubeIDE or Keil requires manual work. No RTOS integration either — uIP's cooperative model means the main loop structure matters a lot, but there's no documentation of timing or task boundaries.