一、知识普及
STM32F030休眠模式:
1.休眠模式。
2.停机模式。
3.待机模式。
官网文档:英文版
官网文档:中文版
休眠与唤醒方面文档写的很清楚了,在这不在详述。我们最关心的是休眠功耗,我们看下休眠功耗。
官网文档:英文版
实际功耗应该是两个表格中相应的电流相加,可见待机时如果开启RTC和看门狗,功耗在4.3uA,停机模式功耗在7.9-35ua左右。
二、待机模式休眠实现
void bsp_sleep(void)
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
PWR_WakeUpPinCmd(PWR_WakeUpPin_1,ENABLE);
PWR_ClearFlag(PWR_FLAG_WU);
PWR_ClearFlag(PWR_FLAG_SB);
PWR_EnterSTANDBYMode();
}
待机模式休眠以后不需要特殊处理,所有IO口为高阻状态,只能通过RTC或者WEAKUP(PA0)引脚唤醒。
三、代码下载
因为代码设计公司项目,不方便上传下载,有需要可以留言。
一、知识普及
STM32F030休眠模式:
1.休眠模式。
2.停机模式。
3.待机模式。
官网文档:英文版
官网文档:中文版
休眠与唤醒方面文档写的很清楚了,在这不在详述。我们最关心的是休眠功耗,我们看下休眠功耗。
官网文档:英文版
实际功耗应该是两个表格中相应的电流相加,可见待机时如果开启RTC和看门狗,功耗在4.3uA,停机模式功耗在7.9-35ua左右。
二、待机模式休眠实现
void bsp_sleep(void)
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
PWR_WakeUpPinCmd(PWR_WakeUpPin_1,ENABLE);
PWR_ClearFlag(PWR_FLAG_WU);
PWR_ClearFlag(PWR_FLAG_SB);
PWR_EnterSTANDBYMode();
}
待机模式休眠以后不需要特殊处理,所有IO口为高阻状态,只能通过RTC或者WEAKUP(PA0)引脚唤醒。
三、代码下载
因为代码设计公司项目,不方便上传下载,有需要可以留言。
举报