STM32G0器件具有FlexPowerControl,它提高了功耗模式管理的灵活性,进一步降低了应用的总体功耗。“运行”模式可以支持系统时钟高达64MHz,功耗仅100μA/MHz,系统时钟为16MHz时的功耗更低,仅为93μA/MHz。
STM32G0器件支持7种主要的低功耗模式:低功耗运行、睡眠、低功耗睡眠、停止0、停止1、待机和关机模式。每个模式又支持多种配置,提供7种额外的子模式,此外,STM32G0器件还支持电池备份域“VBAT”,功耗管理方面的高度灵活性提供了CoreMark值为142的高性能评分和出色的能效。
STM32G0器件有两种停止模式,分别是停止0和停止1,这是保留全部RAM数据内容的最低功耗模式,仅需2μs即可实现从STOP唤醒到16MHz的运行模式。在“停止”模式下,SRAM和外设寄存器的内容得以保留,所有高端外设时钟停止,可以使能32KHz外部振荡器和32KHz内部振荡器,多种外设事件可以用来唤醒STOP模式下的MCU。
在“停止0”模式下,调压器配置为“主调压器”模式,所以在该模式下,VCORE域中的所有时钟停止,PLL、HSI16和HSE晶振被禁用,通过内部或外部低速振荡器提供时钟的RTC可以保持激活状态,BOR(欠压复位)始终被使能。在“停止0”模式下,大多数外设的时钟均关闭,只有几种外设仍在工作。
“停止1”模式与“停止0”模式十分相似,区别在于功耗显著降低,原因是主调压器停止并用低功耗调压器替代,无RTC的“停止1”模式的电流消耗为1.3μA(通常在电压为3V),Flash存储器不供电且RTC禁用的情况下唤醒时间为5μs,唤醒调压器在模式1或2时的系统时钟为HIC 16 MHz,关于Flash存储器和HSI 16是可配置的,可以停止或保持使能状态。
RTC,即实时时钟,RTC外设作为超低功耗日历,其闹钟功能在所有低功耗模式下均保持运行状态,此外,在使用32KHz低功耗外部振荡器(LSE)时钟时,即使主电源断开,而VBAT域通过备用电池供电,RTC仍然保持工作。RTC在电压为1.8V时的电流消耗仅300nA,包括LSE功耗,硬件日历以BCD格式显示,这可以降低软件负担,特别是在必须显示日期和时间时,备份寄存器和篡改检测属于TAMP外设。