FreeRTOS 低功耗之待机模式

本文详细介绍了STM32F103和STM32F4xx系列微控制器如何进入及退出待机模式的方法,并提供了注意事项。对于STM32F103,可通过调用PWR_EnterSTANDBYMode函数进入待机模式;对于STM32F4xx,同样通过该函数实现。从待机模式唤醒的方式包括外部复位、WKUP引脚、RTC闹钟事件等。
摘要由CSDN通过智能技术生成

STM32F103 如何进入待机模式
在 FreeRTOS 系统中,让 STM32 进入待机模式比较容易,调用固件库函数PWR_EnterSTANDBYMode 即可。 
STM32F103 如何退出待机模式
让 STM32 从待机模式唤醒可以通过外部复位(NRST 引脚)、 IWDG 复位、 WKUP 引脚上的上升沿或
RTC 闹钟事件的上升沿。从待机唤醒后,除了电源控制/状寄存器,所有寄存器被复位。
从待机模式唤醒后的代码执行等同于复位后的执行。电源控制/状态寄存器(PWR_CSR)将会指示内核
由待机状态退出。
在开发板上面是通过 K2 按键来唤醒,K2 按键使用的引脚就是 WKUP 引脚。
STM32F103 使用待机模式注意事项
待机模式要注意以下问题:
在待机模式下,所有的 I/O 引脚处于高阻态,除了以下的引脚:
复位引脚(始终有效)。
当被设置为防侵入或校准输出时的 TAMPER 引脚。
被使能的唤醒引脚。

STM32F4xx 如何进入待机模式
在 FreeRTOS 系统中,让 STM32 进入待机模式比较容易,调用固件库函数
PWR_EnterSTANDBYMode 即可。
STM32F4xx 如何退出待机模式
让 STM32 从待机模式唤醒可以通过外 WKUP 引脚上升沿、 RTC 闹钟(闹钟 A 和闹钟 B)、 RTC 唤
醒事件、 RTC 入侵事件、 RTC 时间戳事件、 NRST 引脚外部复位和 IWDG 复位,唤醒后除了电源控制/
状寄存器,所有寄存器被复位。
从待机模式唤醒后的代码执行等同于复位后的执行。电源控制/状态寄存器(PWR_CSR)将会指示内核
由待机状态退出。
早期工程版本是通过 K2 按键,即引脚 PC13 检测 RTC 的入侵事件进行唤醒,实际测试发现问题较多。
本实验将其改为复位按键进行唤醒,可以这么做是因为系统进入到待机模式后,被唤醒后系统的执行过程
等同于进行复位。

STM32F4xx 使用待机模式注意事项
待机模式要注意以下问题:
将选择的待机模式唤醒源(RTC 闹钟 A、 RTC 闹钟 B、 RTC 唤醒、 RTC 入侵或 RTC 时间戳标志)对
应的 RTC 标志清零,防止无法正常进入待机模式。
待机模式下的 I/O 状态
复位引脚(仍可用)。
RTC_AF1 引脚 (PC13)(如果针对入侵、时间戳、 RTC 闹钟输出或 RTC 时钟校准输出进行了配置)。
WKUP 引脚 (PA0)(如果使能)。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值