1.7 KiB
1.7 KiB
模块拆分 - 极低功耗与电源管理 (Docs/50_module-breakdown/mod-power.md)
本模块描述手环的低功耗休眠策略、OLED PMIC 供电控制、中断挂起以及安全唤醒初始化时序。
1. 模块职责说明
- 职责范围:
- 低功耗决策与断电:
当应用管理层判定 10 秒无按键且无无线事件时,PM 模块向 AMOLED 发送 Display OFF 命令,随后拉低
SHUT = 0(Pin 23 / P2.2),彻底切断 SGM3833 供电。 - 挂起 CPU (Power-Down):
使能 GPIO 按键沿中断和无线接收沿中断,写入
PCON |= 0x02关闭高频振荡器,使 MCU 进入深度停机挂起。 - 防浪涌安全唤醒初始化:
发生中断唤醒后,PM 必须遵循安全上电时序:首先拉高
SHUT = 1开启 SGM3833,随后执行 50ms 强阻塞延时避开冲击电流并等待电源轨稳定,最后调用LCD_Init()完整重新配置 RM69310 寄存器,方可恢复应用绘制。
- 低功耗决策与断电:
当应用管理层判定 10 秒无按键且无无线事件时,PM 模块向 AMOLED 发送 Display OFF 命令,随后拉低
2. 接口与函数说明
void Power_Init(void):配置 Pin 23 为推挽输出,默认SHUT = 1开启屏幕 PMIC。void Enter_Low_Power_Sleep(void):- 向 RM69310 写入关屏指令 (0x28)。
- 拉低
SHUT = 0关断 SGM3833 PMIC。 - 使能端口引脚沿中断并进入
PCON |= 0x02停机状态。
void Wakeup_Restore(void):- 拉高
SHUT = 1重新开启 SGM3833。 - 执行
delay_ms(50)硬件稳压阻塞等待。 - 重新调用
LCD_Init()完成屏幕控制寄存器复位和 GRAM 开启。 - 路由通知应用管理器切回时钟应用重新绘制。
- 拉高