关于省电模式

2019-04-13 20:46发布

每种单片机都有省电模式,各自细节不同,但总休思想是一样的。 第一个问题:如何实现省电的? 第二个问题:如何操作? 1.0  要省电,首先得了解系统时钟,因为要驱动任何电子模块,都得有时钟驱动。其次得模块思想,即把一个MCU分成不同模块。 1.1 时钟系统,在STM32时钟一文可以了解。 1.2 关于模块            内核   (省电模式下,一般内核都停止)            寄存器  (如pc, sp ,状态寄存器,ram)            外设                      高速 外设                   低带外设  
现在以STM32F10XX说明:

1.0     睡眠模式(Cortex_M3内核停止,外设仍在运行)即PC寄存器不增加

               

2.0     停止模式(所有的时钟都已停止)

停止模式是在Cortex™-M3 的深睡眠模式基础上结合了外设的时钟控制机制,在
停止模式下电压调节器可运行在正常或低功耗模式。此时在1.8V 供电区域的的所
有时钟都被停止,PLL、HIS 和HSE RC 振荡器的功能被禁止,SRAM 和寄存器
内容被保留下来。

3.0      待机模式(1.8V电源关闭)

待机模式可实现系统的最低功耗。该模式是在Cortex-M3 深睡眠模式时关闭电压
调节器。整个1.8V 供电区域被断电。PLL、HSI 和HSE 振荡器也被断电
SRAM 和寄存器内容丢失。只有备份的寄存器和待机电路维持供电。   此外,在运行模式下,可以通过以下方式中一种降低功耗。 1.0 降低系统时钟 在运行模式下,通过对预分频器的寄存器进行编程,可以降低任意一个系统时钟
(SYSCLK、HCLK、PCLK1、PCLK2)
的速度。在进入睡眠模式前,也可以利用
预分频器来降低外设的时钟。   2.0 关闭APB和AHB总线上未被使用的外设的时钟。   C8051F93x STM32f103