/* Reset Backup Domain */
BKP_DeInit();
/* Enable LSE */
RCC_LSEConfig(RCC_LSE_ON);
/* Wait till LSE is ready */
//等待外部晶振震荡 需要等待比较长的时间
while(RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET);
//使用外部晶振32768
RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);
//允许RTC
RCC_RTCCLKCmd(ENABLE);
//等待RTC寄存器同步
RTC_WaitForSynchro();
RTC_WaitForLastTask();
//允许RTC的秒中断(还有闹钟中断和溢出中断可设置)
RTC_ITConfig(RTC_IT_SEC, ENABLE);
RTC_WaitForLastTask();
RTC_SetPrescaler(32767);
RTC_WaitForLastTask();
//写入RTC后备寄存器1 0xa5a5
BKP_WriteBackupRegister(BKP_DR1, 0xA5A5); |