0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何对微控制器进行省电管理

Wildesbeast 来源:21IC 作者:21IC 2020-06-21 10:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

微控制器的使用越来越多,在现实诸多方面均有微控制器的身影。但在实践过程中,暴露出一些微控制器问题,譬如如何对微控制器进行省电管理。如果你对这个微控制器问题存在兴趣,不妨继续往下阅读哦。

一、微控制器省电管理方法

新唐科技的NUC1xx包含NUC101、NUC100、NUC120、NUC130和NUC140,是以ARM Cortex-M0为核心的32位微控制器(MCU),经由不同时钟的设定,最高可以达到50MHz的运作频率。然而在一般简单控制或系统负载较低时,CPU并不需要执行在最高的运行时钟下即可应付所需要的计算量。这时候,便可以利用系统时钟的控制来降低时钟,以达到省电的目的。

另一种情况是CPU因为等待下一个工作或只需要久久工作一次时,就可以先将CPU进入Idle或Power Down模式,等到一定的时间之后或是有特定的事件发生时,才被唤醒过来进行相关事件的处理。同时,如果系统内没有用到的系统模块,也可以将其关闭以节省不必要的耗电。下面介绍各种不同的省电方法的原理,并提供相关的范例说明。

二、开关系统模块

在新唐科技NUC1xx中,为了省电的需求,当某个系统模块不使用时,可以将其输入时钟关闭,使其进入关闭的模式,依此来达到省电的效果。在NUC1xx中,几乎所有的系统模块都可以各别被关闭,这些模块包括:Watch Dog TImer、RTC、TImer0~3、I2C0~1、SPI0~3、UART0~2、PWM0~7、CANUSBADCACMP、PS2、PDMA、 Flash ISP。不过,并非每颗芯片都包含了所有模块功能,例如CAN模块只在NUC130和NUC140才有此功能,详细说明请参考各芯片的相关文件。

各模块的相关耗电如表1所示。

新唐科技NUC1xx藉由关闭各模块时钟的方式来达到关闭各模块的目的,所以要关闭模块就必须设定相关的时钟控制缓存器。NUX1xx提供AHBCLK Register与APBCLK Register,来控制上文所列出各模块的开关。

三、系统时钟设定

新唐科技NUC1xx本身的耗电量和它的运行时钟有很大关系。如果运行的时钟高,则耗电高,反之则比较省电,但同时CPU就可能无法负荷大量的运算。因此,如果要同时兼顾大量运算跟省电,就必须能够根据实际上的需求来调整CPU的工作时钟,以求达到最佳的运作效率。

NUC1xx内建了PLL,能使用外部12MHz的晶振或是内部22M振荡器产生系统所需的时钟,由PLL所产生的时钟再经过适当除频,即可作为CPU的工作频率。另外NUC1xx也提供经由外部32KHz的晶振或是内部10KHz 振荡器直接供给作为CPU工作频率的方式。因此,NUC1xx对于工作时钟的设定,提供了很大的灵活性。

四、IDLE省电模式

新唐科技NUC1xx除了可利用设定最适合的工作时钟来达到省电的目的外,如果在系统完全不需要工作时,还可以将CPU及大部分的硬件关闭,以达到最大的省电效果。这种搭配关闭CPU及大部分硬件的模式,我们称之为省电模式,其中包括了Idle省电模式及Power Down省电模式。下面就Idle省电模式进行说明。

藉由关闭大部分硬件时钟以达到最大省电效率的模式主要有两种,一种是Idle省电模式,另一种是Power Down省电模式。这两种模式最大的不同点是,当系统进入Idle省电模式下时,任何的中断事件都可以重新唤醒CPU,以便让系统可以处理新进的事件。但如果系统处于Power Down省电模式,就只有少数特定的中断事件能够唤醒系统。

由于所谓的Idle模式,实际上就是把CPU的时钟关闭,这样让CPU在没有工作时处在最省电的模式。因为在这个模式下,只是将CPU的时钟关闭,一旦有任何中断事件发生,马上可以打开CPU的时钟来处理相关的事件,所以不会造成处理事件的延迟,同时又可以达到省电效果,是兼顾速度与省电的一种模式。

NUC1xx可以利用ARM Cortex-M0本身提供的WFI/WFE指令进入Idle模式。一旦进入Idle模式,CPU将立刻进入Sleep模式而停止运作,因此在WFI/WFE指令之后的程序都必须等到CPU被唤醒后才会被执行。此时NUC1xx的耗电量将降到约16mA@3.3V-48MHz。

进入Idle省电模式之后,如果要唤醒CPU,回到一般的工作模式,就必须先产生中断信号。该中断信号可以是NUC1xx中的任何模块所产生的中断,也可以通过外部中断的方式来唤醒CPU。需要注意的是,当决定CPU要由某个中断来唤醒时,就必须在进入Idle省电模式前,将该中断设定完成,才能使其产生中断事件来唤醒CPU。

五、Power Down省电模式

Power Down是新唐科技NUC1xx最省电的一种模式,因为一旦进入Power Down省电模式,晶振时钟会被关闭,整颗NUC1xx呈现静止的状态,这时的耗电量将减到最小的程度。而在此模式下,也只有少数的特定中断事件能够唤醒NUC1xx,使其恢复工作状态。在Power Down模式下,NUC1xx提供了GPIO、USB、UART、RTC、ACMP和CAN的中断唤醒方式。

要进入Power Down省电模式,除了必须呼叫WFI/WFE指令外,在调用WFI/WFE指令之前,必须另将PD_WAIT_CPU和PWR_DOWN_EN两个功能依序打开。已确保CPU先进入Sleep模式后,系统再进入Power Down模式,此时NUc1xx是属于最省电的状态,耗电量将降到约15uA。

一旦NUC1xx进入Power Down省电模式,由于大部分的逻辑电路都进入停止状态,因此要想唤醒CPU,必须经由特殊定义的中断源来唤醒。在Idle省电模式下,只要有任何中断即可唤醒CPU不同,不过相同的是,两者都必须要在进入省电模式前,先设定好将来要用来唤醒CPU的模块,这包括其中断或唤醒功能,这些为了唤醒CPU的准备都完成之后,才能进入省电模式,否则就没有任何方式能够再唤醒CPU了。

由于所谓的Power Down省电模式,实际上是把晶振的时钟关闭,让整个NUC1xx呈现静止的状态。而因为晶振也被关闭了,一旦有唤醒中断事件发生,需要等到晶振稳定下来后,CPU才能继续运作,所以由Power Down进入一般的工作模式,会需要延迟一点时间来等待,而NUC1xx系列所提供的延迟时间预设为4096个clock cycle。以12MHz来计算,延迟时间为(1/12MHz)*4096=341.12us(图2中的T2),而晶振起振所需时间(图2中的T1)则会随着晶振频率、品牌、PCB 布线等都会造成少许差异。一般而言, 12MHz晶振起振所需时间约1~2ms。实际量测范例数据如图2所示。

本文介绍了新唐科技NUC1xx所提供的各种省电方式,包括了关闭没用到的模块、调整CPU运作的时钟、Idle省电模式与Power Down省电模式。在实际应用时,使用者可以根据自身所需,选择适合的方式,甚至组合不同的省电方法以达到最佳的省电效率。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    8248

    浏览量

    162259
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11216

    浏览量

    222858
  • CAN
    CAN
    +关注

    关注

    58

    文章

    3010

    浏览量

    471391
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MCU微控制器CH32L103高速电吹风方案

    MCU微控制器是整个电吹风控制系统的指挥中心。英尚微推出的高速电吹风方案,以MCU微控制器CH32L103为主控微控制器,帮助高速电吹风实现高效率、低噪音、高智能和全保护的性能。CH3
    的头像 发表于 11-27 16:20 136次阅读

    选择微控制器MCU几个步骤

    就准备微控制器选型了。这当然不是个好主意。 在微控制器方面做任何决策时,硬件和软件工程师首先应设计出系统的高层结构、框图和流程图,只有到那时才有足够的信息开始对微控制器选型进行合理的
    发表于 11-26 07:09

    MCU微控制器是什么(mcu微控制器芯片原理)

    MCU(Microcontroller Unit),中文称为微控制器或单片机,可以理解为"浓缩的计算机"。它将处理、存储、输入输出接口等计算机必需的核心部件,全部集成在一块
    的头像 发表于 11-17 17:23 541次阅读

    如何使用 M0A23 系列微控制器在 UART 和 CAN 之间进行桥接传输?

    使用 M0A23 系列微控制器在 UART 和 CAN 之间进行桥接传输
    发表于 08-19 06:51

    Analog Devices / Maxim Integrated MAX32672 ARM Cortex-M4F微控制器特性/应用/框图

    。这些MCU设有灵活的多功能电源管理单元,采用强大的带浮点单元 (FPU) 的Arm® Cortex®-M4处理。Analog Devices MAX32672还为从8位或16位微控制器传统设计提供了一个简单、低成本的升级途径
    的头像 发表于 06-27 11:12 513次阅读
    Analog Devices / Maxim Integrated MAX32672 ARM Cortex-M4F<b class='flag-5'>微控制器</b>特性/应用/框图

    知名厂商微控制器(MCU)芯片手册分享

    微控制器(MCU)又称单片机,是一种高度集成的微型计算机系统,它将中央处理(CPU)、存储(RAM/ROM/Flash)、输入/输出接口(I/O)及多种外设集成在一块芯片上,专门用于嵌入式
    的头像 发表于 05-15 18:25 2278次阅读
    知名厂商<b class='flag-5'>微控制器</b>(MCU)芯片手册分享

    MAX32670高可靠性、超低功耗微控制器技术手册

    在Darwin家族中,MAX32670是一款超低功耗、高性价比、高可靠性的32位微控制器,在实现复杂的传感处理设计的同时不会影响电池寿命。器件集成了高度灵活性的多功能电源管理单元与功能强大的Arm
    的头像 发表于 05-08 11:48 768次阅读
    MAX32670高可靠性、超低功耗<b class='flag-5'>微控制器</b>技术手册

    家用电器开发中微控制器的选型要点

    ROHM提供融入自有低功耗技术优势的丰富的低功耗微控制器产品。通过供应微控制器产品,为从事电池供电的小型设备、家用电器、工业设备、社会基础设施、车载设备等各种系统开发的微控制器用户提供支持。本文以
    的头像 发表于 04-24 10:26 923次阅读
    家用电器开发中<b class='flag-5'>微控制器</b>的选型要点

    RAA270000KFT适用于 RH850 汽车微控制器的电源管理IC数据手册

    RAA270000KFT 是一款适用于 RH850 汽车微控制器系列的电源管理 IC (PMIC)。RAA270000KFT 包含两个集成的电流模式 DC-DC 转换、四个低压差线性稳压
    的头像 发表于 04-09 16:10 735次阅读
    RAA270000KFT适用于 RH850 汽车<b class='flag-5'>微控制器</b>的电源<b class='flag-5'>管理</b>IC数据手册

    一文认识ARM微控制器及瑞萨RA系列MCU

    俗称单片机,如果有学过微机原理就会很熟悉这个概念了。而ARM微控制器,顾名思义,就是基于ARM的微控制器,或者说搭载了ARM处理内核的微控制器
    的头像 发表于 03-24 09:17 2284次阅读
    一文认识ARM<b class='flag-5'>微控制器</b>及瑞萨RA系列MCU

    新唐科技微控制器在触控应用方面的优势

    随着物联网 (IoT) 和智能家居应用的蓬勃发展,触控按键技术已成为人机互动界面的关键。搭载电容式触控按键技术的新唐科技NuMicro 微控制器系列,提供防水、抗噪及高灵敏度的触控体验,为各类
    的头像 发表于 02-27 15:52 1039次阅读

    Toshiba推出七款Arm Cortex-M4电机控制微控制器

    M4K组和M470组现有产品的优秀特性,如编码接口和可编程电机控制功能,进一步降低了电机控制过程中的CPU负载,还保留了闪存、RAM、AD转换和时钟的检查机制,方便用户
    的头像 发表于 02-06 11:10 1005次阅读

    意法半导体推出STM32WL33系列无线微控制器

    意法半导体宣布STM32WL33系列无线微控制器(MCU)正式上市,新系列产品集成了最新一代Sub-GHz长距离射频收发、Arm Cortex-M0+处理内核和针对智能表计应用定制的外设以及改进的
    的头像 发表于 01-02 16:47 1257次阅读

    新唐科技推出专为高温度环境设计的微控制器

    高温高压环境下微控制器的智慧之选 在当今科技飞速发展的时代,各行各业对于电子设备的性能要求日益提升,尤其是在极端环境下,微控制器的稳定性和可靠性更是成为了衡量产品品质的关键因素。面对高温环境的严苛
    的头像 发表于 12-23 13:54 943次阅读