云计算百科
云计算领域专业知识百科平台

单片机进入低功耗后为什么“睡死”?

从 WFI 到唤醒链路,系统排查低功耗唤醒失败

做电池供电的嵌入式产品时,低功耗模式往往是最容易“看起来配置正确,实际上完全跑不通”的模块之一。

代码可能已经完成:

配置GPIO唤醒
配置RTC
配置EXTI
配置NVIC
关闭外设
进入WFI

结果程序一进入低功耗就出现两种极端情况:

要么刚睡下就立刻醒。

要么真正睡下以后,再也醒不过来。

很多工程师遇到这种问题,第一反应都是:

“是不是唤醒源没有配置对?”

于是不断检查GPIO、EXTI、RTC、NVIC。

但实际工程中,唤醒源只是整条链路中的一个环节。

一个完整的低功耗唤醒过程至少涉及:

外部事件
│
▼
唤醒检测电路
│
▼
时钟/低速时钟
│
▼
中断或唤醒标志
│
▼
NVIC / Wakeup Controller
│
▼
CPU退出低功耗
│
▼
恢复时钟与系统状态

其中任何一环出现问题,都可能表现成:

“MCU睡死了。”

所以,低功耗问题真正应该排查的,不只是“谁负责唤醒”,而是

赞(0)
未经允许不得转载:网硕互联帮助中心 » 单片机进入低功耗后为什么“睡死”?
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!