ST意法半导体
直播中

王锦霞

7年用户 969经验值
私信 关注
[问答]

如何降低功耗STM32L4?

你好呀,
我正在使用 STM32L452 MCU 开发基于 FreeRTOS 的应用程序。我正在寻找一种方法来减少处理器工作空闲时间的功耗。在查看睡眠模式时,我想到 MCU 可能对外部事件无响应,甚至丢失上下文(MCU 重置),这不适合此 RTOS 运行应用程序。
当时我想我可以通过调整 PLL 寄存器来简单地降低 HCLK 频率。这里的问题是 systick 计时器会被更改,我真的需要它保持其常规时基(1 毫秒)。我检查了是否可以从其他来源为 Systick 定时器计时,但它似乎只有 HCLK 和 HCLK / 8。数据表说它是针对这个值校准的。
我将不胜感激有关此主题的一些建议。








回帖(1)

石栓成

2023-1-5 09:38:28
有一个项目使用 LPTIMx 作为滴答计时器:这样即使在 STOPx 模式下您也可以更新 FreeRTOS 滴答(恕我直言,这就是您所需要的)。
如果您想偶尔运行得更快,则更改 SYSTICK 预分频器(/1 或 /8)很好,但通常在较低速度下就可以了。与 STOP 模式睡眠状态相比,它仅提供有限的增益(即:睡眠@64 MHz ~1.4 mA;睡眠@8 MHz ~0.3 mA;而停止 2 低于~10uA)。无论如何,这正是我最近需要的。这是我的博客文章,其中包含实现细节(更改电压缩放、闪存延迟、调整 pll 等)。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分