# App/app/ — 应用入口与全局定义 > 应用层的**入口**与**全局定义**:初始化编排、功能编译开关、跨模块的就绪事件定义。 ## 文件一览 | 文件 | 作用 | |---|---| | `app_main.c/h` | **应用初始化入口 `app_main_init`**:时间子系统优先 → RS485 → NAND → ADC → 诊断(在 `osKernelStart` 之前执行) | | `app_cfg.h` | **功能裁剪的决策占位说明**——2026-10-22 起**不含任何宏**(原 3 个 `APP_*_ENABLE` 零消费点,已删;接回方法见该文件修改记录 v1.2) | | `sys_events.h` | **系统就绪事件定义**(CMSIS-RTOS v2 Event Flags:`SYS_EVT_NET_READY` / `SYS_EVT_STORAGE_READY` / `SYS_EVT_FTP_READY` / `SYS_EVT_TIMESYNC_READY` 及命令位) | ## 初始化顺序(`app_main_init`) ``` sd2506_init // 时间子系统优先,使后续日志带时间戳 sys_clock_init // 墙钟(RTC 故障降级并返回 -1 → 触发自检) rs485_init gd5f2gq5ue_init tpafe5160_init SD2506 诊断 // ID / 时间 / 温度 / 电池 tpafe5160_start_conv_irq // 首次 ADC 转换 ``` > ⚠️ 以上全部在内核启动前执行 → **禁止任何 FreeRTOS/CMSIS-RTOS API 调用** > (`osMessageQueueNew` 等会杀死启动)。内核前日志走无锁静态缓冲(见 `../log/`)。 ## 相关文档 - 架构全景:`docs/架构设计/项目架构总览.md` - 启动顺序与就绪屏障:`docs/架构设计/项目启动顺序管理.md` - 墙钟:`docs/子系统设计/系统墙钟时间维护说明.md`