当前位置:首页 > 嵌入式 > 嵌入式分享
[导读]我们探索了可以在每个Arm Cortex-M处理器上找到的低功率模式的基本原理,以及我们如何利用WFI和WFE说明来使处理器放置。真正存在的问题是,这些低功率模式如何在真实的微控制器上实现,这些模式如何影响我们的嵌入式系统?在这篇文章中,我们将更详细地探讨如何使微控制器入睡,并查看购买我们多少能量。

我们探索了可以在每个Arm Cortex-M处理器上找到的低功率模式的基本原理,以及我们如何利用WFI和WFE说明来使处理器放置。真正存在的问题是,这些低功率模式如何在真实的微控制器上实现,这些模式如何影响我们的嵌入式系统?在这篇文章中,我们将更详细地探讨如何使微控制器入睡,并查看购买我们多少能量。

低功率模式实验

探索低功率模式的最佳方法是选择一个微控制器,并实际以各种低功率模式运行处理器。在这篇文章中,我决定除去我久经考验的NXP Kinetis-L自由委员会,我不仅尝试过,而且在许多产品,应用程序和课程中都使用过。我还决定,对与错,不仅要衡量微控制器所绘制的能量,而且要衡量整个开发委员会的能量。 MCU通常是董事会上最渴望的设备之一,但是我经常发现测量整个系统电流提醒我,这并不是板上唯一的能源消费者。优化微控制器可以带您很长的路要走,但这并不总是可能需要优化能量的唯一设备。

从基线测量开始

每当我努力优化产品的能源消耗时,我首先要进行基线能量测量。通常,这是通过在几秒钟或几分钟内分析设备的当前抽签来理解我们在哪里开始的方法来完成的。在我的开发板实验中,我将Kinetis-L保持在运行模式下,没有实现睡眠,所有外围设备都会放在板上,并设置板定期切换LED。使用I-JET调试器和I-Scope的IAR嵌入式工作台,当LED关闭时,我能够为董事会介绍一个简单的基线〜16.9 mA,而当LED在下面可以看到的LED时约为18.0 mA。如您所见,您可以从或者从其他地方进行测量值,您可以在分析中进行分析。

通过等待和深度睡眠模式优化能量

看到节省能源的最快方法是实施等待或深度睡眠模式。对Kinetis-L处理器的数据表的检查表明,等待模式在3伏特的3.7和5.0 mA之间绘制。在此模式下,CPU和外围时钟被禁用,但闪存处于打ze式模式,该模式使处理器仍然可以在中断的时间范围内醒来(12 - 15个时钟周期)。等待模式易于实现,可以在下面看到要输入等待模式的代码:

void sleep_wait(void)

{

scb_scr&= 〜scb_scr_sleepdeep_mask;

ASM(“ WFI”);

}

只有这两条代码,开发委员会的当前消耗量从18.0 MA下降到15.9 MA。当前消费量下降了11.6%!如果板由680 mA电池供电,则该设备的电池寿命将从37.8小时到42.8小时!仅与两行代码相比增加了五个小时!

这些高级功率模式的伟大是,我们可以轻松地进一步迈出一步。我们可以使用以下代码将处理器纳入等待模式,而是将其移至深度睡眠等待模式:

void sleep_deep(void)

{

scb_scr | = scb_scr_sleepdeep_mask;

ASM(“ WFI”);

}

我们所做的只是在SCB_SCR寄存器中调整一个位,现在我们已经从原始的18 mA电流平局变为14.8 mA。当前消费量下降了17.8%!同样,假设板由680 mA电池供电,现在电池寿命将从37.8小时到46小时!这些仅用于几行代码,只是冰山一角!

利用stop and vlls模式用于UA当前抽奖

使用停止模式有可能通过禁用核心和系统时钟进一步将MCU电流绘制到另外两毫安中。您会发现的是,功率模式越低,实现它所需的代码越多,并且代码唤醒系统备份的代码就越复杂。在Kinetis-L上输入停止模式的代码可以在下面看到:

void sleep_stop(void)

{

挥发性unsigned int dummyRead = 0;

smc_pmctrl&= 〜smc_pmctrl_stopm_mask;

smc_pmctrl | = smc_pmctrl_stopm(0);

dummyRead = smc_pmctrl;

sleep_deep();

}

请注意,通过电源管理控制寄存器控制停止模式,一旦设置了状态,就会调用Sleep_Deep功能以完成设置电源模式并执行WFI。

到目前为止,我们一直在谈论MCU图1-2 mA。现代的微控制器将具有可以吸引微型甚至纳米压缩的功率模式! Kinetis-L处理器在2013年左右首次亮相,其非常低的泄漏停止(VLLS)模式仅吸引135至496个微型。可以在下面看到初始化此功率模式的代码:

void sleep_vlls1(void)

{

挥发性unsigned int dummyRead = 0;

smc_pmctrl&= 〜smc_pmctrl_stopm_mask;

smc_pmctrl | = smc_pmctrl_stopm(0x4);

smc_vllstrl = smc_vllsctrl_llsm(1);

dummyRead = vlls_ctrl;

sleep_deep();

}

在这一点上,微控制器几乎根本没有能量!

低功率模式对唤醒潜伏期的影响

正如我们到目前为止所看到的那样,将处理器转移到较低和较低的功率模式中是节省能源的好方法,但是节省的确是有代价的。处理器的能量状态越低,处理器醒来并进行有用的工作所需的时间就越多。例如,如果我要使用标准停止模式,则需要2 US加上中断延迟才能使处理器醒来并再次开始执行代码。还不错。但是,如果我要在kinetis-l上使用一种VLLS模式,那么我将有一个唤醒延迟,可以启动处理器以及另外53至115微秒!根据申请,这可能是不可接受的。

结论

ARM MicroController都将具有标准的低功率模式,但是每个硅供应商都会自定义开发人员可用的低功率模式。如我们所见,硅供应商经常提供多种模式,这些模式是低悬挂的水果,对唤醒潜伏期的影响最小。他们还提供了几种非常低的功率模式,几乎将处理器关闭,并仅绘制几百个或更少的微型!开发人员通常需要平衡他们想要汲取的能量的数量与他们需要的速度醒来并响应事件的速度。权衡绝对是专门应用程序的,因此不要期望能够在每个产品和应用程序上运行最低的功率模式。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭