1待机模式
待机模式是基于 RISC-V 的 SLEEPDEEP 模式实现的。在待机模式下,整个 1.1V 域全部停止
供电,同时 LDO 和包括 IRC16M、HXTAL 和 PLL 也会被关闭。进入待机模式前,先将 RISCV 系统控制寄存器的 CSR_SLEEPVALUE 位置 1,再将 PMU_CTL0 寄存器的 STBMOD 位置
1,再清除 PMU_CS0 寄存器的 WUF 位,然后执行 WFI 或 WFE 指令,系统进入待机模式,
PMU_CS0 寄存器的 STBF 位状态表示 MCU 是否已进入待机模式。待机模式有四个唤醒源,
包括来自 NRST 引脚的外部复位,RTC 闹钟/时间戳/侵入/自动唤醒事件,FWDGT 复位,WKUP
引脚的上升沿。待机模式可以达到最低的功耗,但唤醒时间最长。另外,一旦进入待机模式,
SRAM0/SRAM1/SRAM2/SRAM3 和 1.1V 电源域寄存器的内容都会丢失。退出待机模式时,
会发生上电复位,复位之后 RISC-V 将从 0x00000000 地址开始执行指令代码。
2 SRAM 睡眠模式
当 SRAM0/SRAM1/SRAM2/SRAM3 中至少有一个掉电时,置位 PMU_CTL1 寄存器中的
SRAMxPSLEEP(x = 0/1/2/3)位,则对应的 SRAMx(x = 0/1/2/3)开始进入掉电状态(需等
待几个 PCLK 时钟,SRAM 才可完全掉电,进入 SRAM 睡眠模式)。
置位 PMU_CTL1 寄存器中的 SRAMxPWAKE(x = 0/1/2/3)位,则对应的 SRAMx(x = 0/1/2/3)
上电。
当运行模式/睡眠/深度睡眠模式时,SRAMx(x = 0/1/2/3)可以配置为上电或掉电。
当待机模式时,SRAMx(x = 0/1/2/3)掉电
|