打印
[应用相关]

求助STM32大神 关于低功耗

[复制链接]
649|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
后会无期1|  楼主 | 2015-4-17 22:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
stm32的休眠与唤醒,休眠时间是动态变化的。怎么实现?
沙发
我思故我在12345| | 2015-4-17 22:15 | 只看该作者
休眠前通过RTC设定任意休眠时间,时间到时中断唤醒,如果有相应的外部事件也可以中断唤醒,不知道是不是理解对了你的意思

使用特权

评论回复
板凳
后会无期1|  楼主 | 2015-4-17 22:16 | 只看该作者
恩,你说的挺靠谱的。谢谢!但是我还有一些疑问,我的程序本身是比较复杂的,程序里有多个定时器,这些定时的长度也会根据‘SPI和串口收到的数据’的不同来做相应的调整,所以整个程序走一遍也会有多个休眠。按照你的方法,我可以在每个休眠之前都设置一下rtc时钟,这样看起来是可行的,但是比较麻烦。我看stm32有个睡眠模式(Cortex?-M3内核停止,外设仍在运行),用这个模式的话定时器就能自动唤醒了,但是这个模式好像没什么人用过,哎,有点迷茫。

使用特权

评论回复
地板
后会无期1|  楼主 | 2015-4-17 22:16 | 只看该作者
刚去网上查了下,感觉你说的待机模式应该不能用在我的程序里,待机后SRAM内容丢失,唤醒后相当于stm32复位。而我希望的是唤醒后继续执行之前的代码

使用特权

评论回复
5
我思故我在12345| | 2015-4-17 22:17 | 只看该作者
低功耗模式分好几级的,根据你的需要选择就行,需要做低功耗的一般调一下代码的结构,使得唤醒后处理完全部可能事件,然后根据这些事件计算出芯片下次被唤醒的间隔时间,进入低功耗模式就行了

使用特权

评论回复
6
后会无期1|  楼主 | 2015-4-17 22:17 | 只看该作者
是有三级低功耗,但是除了你提到的待机模式,别的模式很少有人用,也没有可供参考的代码。如果调整程序结构,用RTC唤醒,对于我的程序也不是很好调整,不过还是尝试一下这种方法吧,没其他办法了。。。

使用特权

评论回复
7
fhguo1990| | 2015-4-17 22:19 | 只看该作者
我觉得参照手册编写这几级低功耗也不是很难

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

208

帖子

0

粉丝