在可穿戴设备、物联网终端等应用中,功耗是非常重要和苛刻的一个设计考量,这就需要工程师选用低功耗MCU等电子器件,以提高设备的续航时间。那么,什么是低功耗MCU呢?
简单来讲,就是支持低功耗模式的MCU,这就要求工程师在低功耗、短启动时间和多种唤醒事件之间进行平衡,为自己的设计方案选择一个合适的MCU。以下以MM32F003为例进行说明。
1. 低功耗模式
MM32F003支持睡眠、停机和待机模式,可以在要求低功耗、短启动时间和多种唤醒事件之间达到最佳的平衡。在系统或电源复位以后,MCU就一直处于运行状态。这时的时钟源为CPU提供时钟,内核执行程序代码。当CPU不需继续运行时,可以利用多个低功耗模式来降低功耗,例如等待某个外部事件时。
(1)睡眠模式
在睡眠模式,只有CPU停止,所有外设处于工作状态并可在发生中断/事件时唤醒CPU。
(2)停机模式
在保持SRAM和寄存器内容不丢失的情况下,停机模式可以达到最低的电能消耗。在停机模式下,停止所有内部1.8V部分的供电,PLL、HSI的振荡器和HSE晶体振荡器被关闭,调压器可以被置于普通模式或低功耗模式。
可以通过任一配置成EXTI的信号把MCU从停机模式中唤醒,EXTI信号可以是16个外部I/O口之一、PVD的输出的唤醒信号。
(3)待机模式
待机模式可实现系统的最低功耗。该模式是在CPU深睡眠模式时关闭电压调节器,内部所有的1.5V部分的供电区域被断开,HSI和HSE振荡器也都关闭。可以通过WKUP引脚的上升沿、NRST引脚的外部复位、IWDG复位唤醒或者看门狗定时器唤醒不复位。
有两种方式进入待机模式,可以通过设置独立的控制位,选择以下待机模式的功能:
(1)独立看门狗(IWDG):可通过写入看门狗的键寄存器或硬件选择来启动IWDG。一旦启动了独立看门狗,除了系统复位,它不能再被停止。
(2)内部振荡器(LSI振荡器):通过控制/状态寄存器(RCC_CSR)的LSION位来设置。
在进入待机模式后,除了被用于唤醒I/O,其余I/O都进入高阻态,而从待机模式唤醒后,相当于复位MM32芯片,程序重新从头开始执行,SRAM和寄存器的内容将被丢失。
2. 电流消耗实测
电流消耗是多种参数和因素的综合指标,这些参数和因素包括工作电压、环境温度、I/O引脚的负载、产品的软件配置、工作频率、I/O脚的翻转速率、程序在存储器中的位置以及执行的代码等。
(1)停机和待机模式最大电流消耗
表中是MM32F003处于下列条件时的数值:
(1)所有的I/O引脚都处于输入模式,并连接到一个静态电平上—VDD,或VSS(无负载)。
(2)所有的外设都处于关闭状态,除非特别说明。
(3)闪存存储器的访问时间调整到fHCLK的频率(0 ~ 24MHz时为 0 个等待周期, 24~48MHz时为1个等待周期)。
(4)指令预取功能开启。当开启外设时:fPCLK1 = fHCLK。
(2)运行模式下的最大电流消耗
表中是MM32F003处于下列条件时的数值:
(1)所有的I/O引脚都处于输入模式,并连接到一个静态电平上—VDD或VSS(无负载)。
(2)所有的外设都处于关闭状态,除非特别说明。
(3)闪存存储器的访问时间调整到fHCLK的频率(0∼24MHz时为0个等待周期, 24∼48MHz时为1个等待周期)。
(4)指令预取功能开启。当开启外设时:fPCLK1 = fHCLK。
使用HSI振荡器,MM32F003从睡眠模式唤醒时间不超过4.2μs,从停机模式唤醒时间<12μs,从待机模式唤醒时间<230μs。
-
mcu
+关注
关注
146文章
17135浏览量
351027
发布评论请先 登录
相关推荐
评论