极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13511|回复: 1

【Ameba Arduino】省电模式前编--认识基础概念

[复制链接]
发表于 2016-5-6 11:53:52 | 显示全部楼层 |阅读模式
本帖最后由 Ameba_Arduino 于 2016-10-20 17:30 编辑



对maker而言,能看到自己的作品正确动作,例如LED闪亮,马达转动,就会很有成就感。但进一步的,maker可能希望作品能够移动,能够携带,能够长时间在没有外接供电的环境中运作,这时就必须使用电池供电。
但电池电力有限,如果作品很耗电,电池几天甚至几小时就耗干,会很令人泄气,设置让作品变得不适用,例如希望小孩随身携带一个紫外线感测警报器,出门5小时,3小时就没电,实用性大打折扣。这是就需要考虑省电模式,以延长待机时间。
省电模式基本概念
相信各位都知道,离开客厅到卧房就寝前,会把客厅的灯关掉,以此节约能源。
其实,芯片或电路省电的方法也是这样,整片电路板可以当做一座房子,房子有很多隔间,例如厨房,客厅,在电路上这种隔间被称为岛区,只是不易用肉眼看出岛区的分割界限,但是具体的电路图上可以知道。
将电路区分成数个岛区的用意就在,一点确定那个岛区的电路暂时不用运作,就可以停止给这个岛区供电,需要使用时再恢复供电,长时间如此,电路板的总体耗电就可以降下来。
电路如此,芯片也一样。芯片内部其实就是微小化的电路,也是分成几个岛区,对于暂时不适用的功能电路加以断电,以达到整个芯片省电的效果。
芯片省电模式各自为政
有了岛区灵活供电、断电的概念后,进一步要说明的是,目前无论芯片或电路,在岛区的划分上,其实没有一致的标准,每个芯片厂商依据自己芯片的特性,有不同的岛区规划设计。
另外,芯片同时间需要关闭几个岛区一样也是各自为政,芯片厂商通常设计出几个模式,例如A模式关闭1个岛区,B模式关闭3个岛区,并为各种省电模式命名,例如瞌睡(Doze)、睡眠(sleep)、休眠(suspend)、冬眠(Hibernation)等。
除了同时关闭岛区的多寡,构成多种省电模式外,芯片厂商提供多种省电模式的用意也在于,芯片厂商不知道购买芯片的人如何使用芯片?会用芯片设计出怎么样的电路?所以提供多种省电模式供用户选择。
另外,不同的省电模式,因为开关的岛区数目不同,要离开省电模式,并回到正常运作,所需要的时间也不同,有的设计需要很快离开省电模式,就会选择反应较快,但省电程度较少的省电模式,反之也有人需要很省电的设计,就会使用很省电,但进入和离开省电模式较久的模式。
除了省电程度,进出省电模式的反应速度外。还要考虑一些细节,例如芯片内的内存岛区一但停止供电,资料就会消失,所以必须在进入省电模式前,将资料搬运到其他存储区域,恢复供电之后再搬运回来。类似的,芯片也有I/O管脚的岛区,若停止供电,则芯片对外部电路的控制也就无法维持。-
所以,理论上关闭越多岛区越省电,但也需要考虑实际的运作环境。
Ameba两个主要省电模式
关于Ameba,可访问【新品推荐】Ameba Arduino全功能IoT解决方案
说了很多基础模式,希望爱好Ameba的maker能够更了解Ameba的省电模式。Ameba其实也有多种省电模式,但最主要有两个,一是睡眠模式(sleep),另一个是深度睡眠模式(Deep sleep)。
深度睡眠的省电效果比较好,但缺点是几乎这个芯片都停止运作,只保留一个wake up的时钟和部分外部触发信号,前者虽然没有深度睡眠模式省电,但却可以让Wi-Fi通讯保持正常运作。
具体的省电操作,将会在接下来的文章中做介绍。

更多Realtek低功耗WiFi Soc资讯,请关注Realtek官网:www.amebaiot.com.cn
Realtek Ameba技术交流群:(184666894

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2016-10-20 17:13:41 | 显示全部楼层
物联网应用越来越多,能耗是很大的一个挑战,以后设计应用的时候可以充分注意能耗。有没有人一起整理一下可以用于arduino中省电的库
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-27 09:54 , Processed in 0.039529 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表