39bd06adea
- 新增 26 份目录 README:App/(+log,task,util,protocol)、Drivers/BSP/(+8子系统)、 Src/、Inc/、scripts/、tools/(+6子工具)、test/、MDK-ARM/、simulator/(+sim,tests) - 每份含:定位、文件清单表、关键约束/陷阱、指向 docs 权威文档 - 第三方库与生成代码目录排除(CMSIS/HAL/Middlewares/Lib/SDL2) - docs/文档规范.md 新增 §1.1b 代码目录 README 约定;根 README 目录结构加入说明
1.5 KiB
1.5 KiB
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