以RISC-V MCU CH32V307为例
1. 停止模式简介
停止模式是在内核深睡眠模式(SLEEPDEEP)基础上结合了外设的时钟控制机制,并可以让电压调节器运行在低功耗模式。
此模式下,高频时钟(HSE/HSI/PLL)被关闭,SRAM和寄存器内容保持,IO引脚状态保持。
该模式唤醒后,系统可继续运行,特别注意的是,此时默认系统时钟为内部 8MHz HSI,如有需要,可调用 SystemInit() 重新初始化时钟 。
停止模式下可工作的模块:
-
独立看门狗(IWDG)
-
实时时钟(RTC)
-
低频时钟(LSI/LSE)
该模式下的唤醒时间为 HSI RC唤醒时间(23.1 us) + 电压调节器从低功耗模式唤醒时间(53.6 us 如果开启),总共约 76.7us
此模式下,电压调节器处于低功耗模式的睡眠电流约为 34uA,电压调节器处于正常状态的睡眠电流约为 110.5uA。
:::tip
为了进一步降低功耗,建议将不用的 IO 引脚初始化为下拉输入模式。
:::
2. 进入停止模式
进入停止模式的步骤:
-
配置内核寄存器
PFIC_SCTLR控制位SLEEPDEEP=1 -
如果需要配置调压器进入低功耗模式,将电源控制寄存器
PWR_CTLR控制位PDDS = 0,控制位LPDS=1, -
执行
WFI或WFE指令

本文详细介绍了RISC-V MCU CH32V307的停止模式,包括其特点、唤醒机制及如何进入和退出。在停止模式下,系统电流大幅降低,但SRAM和寄存器内容得以保留。建议将不用的IO引脚设置为下拉输入以降低功耗。退出条件包括外部中断事件,但不支持WKUP引脚上升沿唤醒。在MCU处于停止模式时,需要注意调试和程序更新的特殊处理。
最低0.47元/天 解锁文章

589

被折叠的 条评论
为什么被折叠?



