今天配置了一下F4的RTC使用了LSI,但是原来使用的是LSE ,这就造成了一直无法初始化
初始化代码如下
u8 My_RTC_Init(void)
{
RTC_InitTypeDef RTC_InitStructure;
RTC_TimeTypeDef RTC_TimeStruct2;
u16 retry=0X1FFF;
char BUFF[50]={"\r\n RTC初始化失败 \r\n"};
char BUFF2[50]={"\r\n RTC初始化成功 \r\n"};
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);//使能PWR时钟
PWR_BackupAccessCmd(ENABLE); //使能后备寄存器访问
// if(RTC_ReadBackupRegister(RTC_BKP_DR0)!=0x5054) //是否第一次配置?
// {
//RCC_LSEConfig(RCC_LSE_OFF);//LSE 关闭
//RCC_LSICmd(ENABLE);
RCC_LSICmd(ENABLE);
while (RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET) //检查指定的RCC标志位设置与否,等待低速晶振就绪
{
retry++;
delay_ms(10);
// if(retry>0x25FF)
// {