docs: 修复 main.md 中 Mermaid 图表的圆括号语法冲突导致的渲染乱码

This commit is contained in:
2026-07-10 09:36:43 +08:00
parent 9220da7373
commit 804e1264d7

View File

@@ -54,29 +54,29 @@
```mermaid
graph TD
%% 5层立体依赖结构
subgraph LayerApps ["1. 应用业务层 (Applications)"]
ActiveApp["当前活跃应用 (Foreground App)"]
BgApp["后台监测应用 (Background App)"]
subgraph LayerApps ["1. 应用业务层 Applications"]
ActiveApp["当前活跃应用 Foreground App"]
BgApp["后台监测应用 Background App"]
end
subgraph LayerAppMgr ["2. 应用管理层 (APP Management)"]
AppManager["APP 管理器 (StartApp / CloseApp)"]
subgraph LayerAppMgr ["2. 应用管理层 APP Management"]
AppManager["APP 管理器 StartApp / CloseApp"]
Lifecycle["生命周期调度机"]
end
subgraph LayerEvent ["3. 事件总线层 (Event Layer)"]
EventDispatcher["事件分配器 (Event Dispatcher)"]
EventQueue["事件环形缓冲区 (EventQueue)"]
subgraph LayerEvent ["3. 事件总线层 Event Layer"]
EventDispatcher["事件分配器 Event Dispatcher"]
EventQueue["事件环形缓冲区 EventQueue"]
end
subgraph LayerDrivers ["4. 中断与驱动层 (Drivers)"]
ExtInt["外部中断 (KEY按键扫描 / RF解码)"]
TimeInt["时钟中断 (Timer1 1ms时基)"]
subgraph LayerDrivers ["4. 中断与驱动层 Drivers"]
ExtInt["外部中断 KEY按键扫描 / RF解码"]
TimeInt["时钟中断 Timer1 1ms时基"]
ADC_Drv["ADC 电量采集"]
LCD_Drv["LCD 屏幕绘制驱动"]
end
subgraph LayerHW ["5. 硬件实体层 (STC32 HW)"]
subgraph LayerHW ["5. 硬件实体层 STC32 HW"]
MCU["STC32G 单片机核心"]
end
@@ -121,11 +121,11 @@ typedef struct {
graph LR
%% 事件的产生与消耗流转
HW_Sig["物理引脚状态跳变"] -->|电平变化中断| Driver["驱动中断 ISR"]
Driver -->|消抖/自适应解调| Packer["封装统一事件 (KeyEvent)"]
Packer -->|Key_Push_Event| Queue["Event Ring Buffer (环形队列)"]
Driver -->|消抖/自适应解调| Packer["封装统一事件 KeyEvent"]
Packer -->|Key_Push_Event| Queue["Event Ring Buffer 环形队列"]
Queue -->|Key_Pop_Event| MainLoop["MainLoop 轮询读取"]
MainLoop -->|事件分发| AppMgr["APP 管理器"]
AppMgr -->|onEvent(evt) 回调| ActiveApp["当前活跃 App 实例"]
AppMgr -->|onEvent 回调| ActiveApp["当前活跃 App 实例"]
```
### 4.1 环形事件缓冲区 (EventQueue)
@@ -144,11 +144,8 @@ graph LR
* **存储结构定义**
```c
typedef struct {
u8 is_used; // 有效标志 (0x01: 有效, 其它: 空闲)
u8 addr[3]; // 24位射频物理地址 (EV1527)
u8 type; // 传感器类型 (0: 门磁, 1: 红外, 2: 烟感, 3: 紧急, 4: 气体, 5: 水浸, 6: 振动)
u8 zone; // 防区类别 (0: 永久防区, 1: 普通可撤布防区)
char name_gbk[16]; // 法语自定义防区名称 (格式化为: [名前缀] [两位序号])
u8 flags_suffix; // 属性字节Bit 7 代表有效标志 (1: 有效, 0: 空闲)Bit 0~6 代表法语防区名称的后缀序号 (01~99)
u8 addr[3]; // 24位射频物理地址 (EV1527 地址 + 4位状态数据码)
} Sensor_Slot;
```