打印
[活动]

- SYS_STANDBY_RTC_MODE 通过RTC唤醒(10秒)事件唤醒。 举例说明,代码

[复制链接]
277|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
丙丁先生|  楼主 | 2024-5-24 09:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以下是使用SYS_STANDBY_RTC_MODE模式的示例代码:

```c
#include "stm32f4xx.h"

void RTC_Config(void)
{
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
    PWR_BackupAccessCmd(ENABLE);
    RCC_LSEConfig(RCC_LSE_ON);
    while (RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET);
    RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);
    RCC_RTCCLKCmd(ENABLE);
    RTC_WaitForSynchro();
    RTC_WaitForLastTask();
    RTC_SetPrescaler(32767);
    RTC_WaitForLastTask();
}

int main(void)
{
    // 初始化系统时钟、GPIO等
    // ...

    // 配置RTC
    RTC_Config();

    // 设置RTC唤醒时间
    RTC_SetAlarm(RTC_GetCounter() + 10); // 10秒后唤醒
    RTC_WaitForLastTask();

    // 进入待机模式,等待RTC唤醒事件
    PWR_EnterSTANDBYMode();

    // 从待机模式唤醒后执行的代码
    // ...
}
```

使用特权

评论回复
沙发
xionghaoyun| | 2024-5-24 10:31 | 只看该作者
学习一下 工程能不能打包分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

203

主题

567

帖子

0

粉丝