RTC配置

RTC配置应用

日历配置流程

  1. 使能PWR时钟
1
RCC_APB1PeriphClockCmd()
  1. 使能后备寄存器访问
1
PWR_BackupAccessCmd()
  1. 配置RTC时钟源,使能RTC时钟
1
2
3
4
RCC_RTCCLKConfig()
RCC_RTCCLKCmd()
# 如果使用LSE 要打开LSE
# RCC_LSEConfig(RCC_LSE_ON)
  1. 初始化RTC(同步/异步分频系数和时钟格式)
1
RTC_Init ()
  1. 设置时间
1
RTC_SetTime ()
  1. 设置日期
1
RTC_SetDate()

闹钟配置流程

  1. 初始化RTC相关参数
  2. 关闭闹钟
1
RTC_AlarmCmd(RTC_Alarm_A,DISABLE)
  1. 配置闹钟参数
1
RTC_SetAlarm()
  1. 开启闹钟
1
RTC_AlarmCmd(RTC_Alarm_A,EABLE)
  1. 开启配置闹钟中断
1
2
3
RTC_ITConfig()
EXTI_Init()
NVIC_Init()
  1. 编写中断服务函数
1
RTC_Alarm_IRQHandler()

RTC周期性自动唤醒配置流程

  1. 初始化RTC相关参数
  2. 关闭WakeUp
1
RTC_WakeUpCmd(DISABLE)
  1. 配置WakeUp时钟分频系数/来源
1
RTC_WakeUpClockConfig()
  1. 设置WakeUp自动装载寄存器
1
RTC_SetWakeUpCounter()
  1. 使能WakeUp
1
RTC_WakeUpCmd( ENABLE);
  1. 开启配置闹钟中断
1
2
3
RTC_ITConfig()
EXTI_Init()
NVIC_Init()
  1. 编写中断服务函数
1
RTC_WKUP_IRQHandler();