rtc.c
main.c
#include "stm32f4xx.h"
#include "led.h"
#include "usart3.h"
#include "stdio.h"
#include "key.h"
#include "delay.h"
#include "exti.h"
#include "w25q64.h"
#include "Iwdg.h"
#include "wwdg.h"
#include "rtc.h"
int main(void)
{
int hour,min,sec;
RTC_TimeTypeDef RTC_TimeStruct;
RTC_DateTypeDef RTC_DateStruct;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init(168);
Led_Init();
Key_Init();//初始化
Usart3_Init(115200);
Exti_Init();
W25Q64_Init();//W25Q64 初始化
printf("串口调试成功\r\n");
MYRTC_Init();
RTC_Set_AlarmA(1,23,58,10); //闹钟A
RTC_Set_AlarmB(1,23,58,15); //闹钟B
while(1)
{
RTC_GetTime(RTC_Format_BIN,&RTC_TimeStruct);
printf("Time:%02d:%02d:%02d\r\n",RTC_TimeStruct.RTC_Hours,RTC_TimeStruct.RTC_Minutes,RTC_TimeStruct.RTC_Seconds);
RTC_GetDate(RTC_Format_BIN, &RTC_DateStruct);
printf("Date:20%02d-%02d-%02d\r\n",RTC_DateStruct.RTC_Year,RTC_DateStruct.RTC_Month,RTC_DateStruct.RTC_Date);
Delay_Ms(1000);
if(Read.USART3_FLAG&0x8000)
{
sscanf((char *)Read.USART3_Buff,"%d:%d:%d",&hour,&min,&sec);
RTC_Set_Time(hour,min,sec,RTC_H12_AM);
Read.USART3_FLAG = 0;
}
}
}