Files
STM32F4-Base/simulator/sim
wandering1 d770e36c7c refactor(NET): 源码注释去阶段化 + 网络两份文档重构 + 不稳根因图更新
- 源码注释:删去自愈收敛阶段
1/1.5/3等 scaffolding 称谓,改为语义引用
  (E-02 收口 / F-NET-2/3/4 / docs/网络/网络自愈架构设计.md §5.2 E13);
  涉及 net_socket/.h、net_events、net_listener、net_pending、net_types、
  net_config、ch395f、time_sync、iec104_serv、ui_net_sink、lftpd、
  simulator/sim/net_socket_sim、board/host 测试与探针
- 文档重构:网络自愈架构设计.md 与 Net层阻塞模型架构设计.md 改为现状口径
  (删历史节与阶段叙事),NET/README.md、docs/README.md 同步
- 工具与配图:gen_net_instability_svg.py 与
  docs/images/网络不稳根因总览.svg 随源码口径一并更新
- 门禁:@build 0 错误 0 警告
2026-10-14 22:05:53 +08:00
..

simulator/sim/ — 模拟器平台层

PC 端 LVGL 模拟器的平台适配层:把 MCU 侧的硬件/RTOS 接口替换成 PC 实现, 使 UI 源码(Drivers/BSP/UI/)与固件共用同一套代码。

文件一览

文件 替换的 MCU 侧实现 作用
sim_port.c/h ui_port.c 显示/输入移植层:SDL 窗口 → LVGL 显示驱动 + 键鼠/触摸输入
net_socket_sim.c net_socket.c 网络 Socket 的 PC 实现(宿主 BSD socket)
cfg_file_store_sim.c cfg_file_store_mcu.c 配置存储的 PC 后端(宿主堆)
sim_syslog.c sys_log_mcu.c 日志的 PC 实现(写文件而非 NAND)
ui_net_sink_backend_sim.c ui_net_sink_backend_mcu.c 推流后端的 PC 实现
sim_latency_stub.c — 时延打桩(模拟链路延迟,供测试)

设计模式

MCU 与模拟器共用核心逻辑,仅后端不同:

      共享核心(无分配符号)
      ├── cfg_file.c(配置引擎)
      └── ui_*(LVGL UI)
             ↓ 后端抽象接口
   ┌─────────┴─────────┐
MCU 后端(本工程 *_mcu.c)  PC 后端(本目录 *_sim.c)

配置引擎后端:MCU = FreeRTOS 堆、模拟器 = 宿主堆,共享核心零分配符号。

相关文档

  • 模拟器总说明:../README.md
  • UI 架构与移植要点:docs/UI设计/UI_设计架构.md
  • 模拟器部署:docs/UI设计/LVGL模拟器部署与使用说明.md