1、启用低功耗是嵌入式MCU节约能耗的一种有效方法,以下以GD32F470ZGT6的为例,说明如何开启低功耗运行模式
软件配置低功耗模式
void enter_low_power(){
pmu_flag_clear(PMU_FLAG_RESET_STANDBY);
pmu_to_standbymode();
}以上程序首先将电源复位的有关标志位清空,之后进入待机模式
完整代码
#include "main.h"
#include <stdio.h>
#include "gd32f4xx.h"
#include "systick.h"
#include "bsp_uart.h"
void enter_low_power(){
pmu_flag_clear(PMU_FLAG_RESET_STANDBY);
pmu_to_standbymode();
}
int main(void)
{
systick_config();
bsp_uart_init();
printf("进入低功耗模式前\n");
//立即进入低功耗模式(待机模式)
enter_low_power();
printf("进入低功耗模式后\n");
while(1) {
delay_1ms(100);
}
}2、运行效果

printf("进入低功耗模式后\n")出现在进入待机模式之后,因此不会得到运行
按下复位按键,系统可以重新运行,但程序有效运行处到达printf("进入低功耗模式前\n")就停止了。
值得注意的是,进入低功耗运行后烧录程序也无法正常进行,解决办法是烧录程序前长按复位按键,直到烧录程序开始那一刻松开复位按键即可
我要赚赏金
