liangliangwa 发表于 2018-1-22 14:34:18

STM32的低功耗控制,一般大家都是采用哪种?

在STM32中,低功耗控制有三种,休眠模式,停机模式,待机模式,想知道大家都常用哪个模式?都能控制到什么程度?多少微安?


哈佛祖安智 发表于 2018-1-22 15:37:37

看应用场景

liangliangwa 发表于 2018-1-22 16:09:33

哈佛祖安智 发表于 2018-1-22 15:37
看应用场景

感谢回复!请问待机模式适合什么场景呢?

zhjb1 发表于 2018-1-22 17:06:15

liangliangwa 发表于 2018-1-22 16:09
感谢回复!请问待机模式适合什么场景呢?

很难一下说明:如果手持电池耐久设备,可以采用待机模式,他的唤醒可以有多种方式,取决于你的需要,比如外设——NRST,IWDG或RTC时钟唤醒——这种模式最省电,但不保留睡死之前的信息。STOP模式比这个稍高点,可以被外部中断、事件、RTC时钟启动,STOP之前的状态可以压栈保存。如果耗电要求不是很高,Sleep模式也可选择。

liangliangwa 发表于 2018-1-22 17:26:53

zhjb1 发表于 2018-1-22 17:06
很难一下说明:如果手持电池耐久设备,可以采用待机模式,他的唤醒可以有多种方式,取决于你的需要,比如 ...

感谢回复!

Veiko 发表于 2018-1-22 17:58:25

看需求哦,如果只是单引脚唤醒,不需要保存RAM数据的话肯定用最低的啊,当然最低的唤醒的速度肯定也不一样,如果唤醒的响应要求很高你也要考虑不用最低的模式

liangliangwa 发表于 2018-1-22 19:10:26

Veiko 发表于 2018-1-22 17:58
看需求哦,如果只是单引脚唤醒,不需要保存RAM数据的话肯定用最低的啊,当然最低的唤醒的速度肯定也不一样 ...

感谢回复!你说的对。

kylongmu 发表于 2018-1-22 20:50:58

低功耗要很仔细的设计:
比如你的MCU完成所有外设的初始化时间,如果需要1秒钟,工作1秒钟,随后有58秒空闲,那么无法保存SRAM数据的功耗模式相反是更耗电的。但如果随后有10分钟的空闲时间,那么完全可以进入最低功耗。所以你要计算实际情况后再做出选择。甚至一些外设的工作参数也会导致功耗差异巨大,比如串口,9600波特率下传输64字节几乎用去0.1秒,如果能用2M波特率通讯,那么只需要50uS时间,显然快速的通讯能大大缩小程序全速运行的时间。

toofree 发表于 2018-1-23 00:29:33

分情况吧。如果是单向MCU给外部发数据,或MCU是主控,那么用休眠模式定时唤醒;如果外部是主,得随时响应外部,那得是待机模式;如果只是单稳态,只干一件事件,干完活就没他什么事情了,那么停机模式合适。

liangliangwa 发表于 2018-1-23 14:29:19

toofree 发表于 2018-1-23 00:29
分情况吧。如果是单向MCU给外部发数据,或MCU是主控,那么用休眠模式定时唤醒;如果外部是主,得随时响应外 ...

感谢回复!后面两个场景说反了吧,随时响应外部的,用停机模式比较好吧,这样引脚状态,内存内容,寄存器状态都会保存着,而干完活就没什么事情了,就用待机模式,这样就算内部1.8V所有电源断掉反倒更好省电。
页: [1] 2
查看完整版本: STM32的低功耗控制,一般大家都是采用哪种?