RTC闹钟低功耗唤醒
想做个闹钟低功耗唤醒的,可以闹钟的配置有问题,始终无法进入闹钟的中断,求各位大神看看,配置上哪里有问题了。接下来贴代码void Calendar_Init(void)
{
//选择LSE(32.768KHz)作为时钟源
//CLK_RTCClockConfig(CLK_RTCCLKSource_LSE, CLK_RTCCLKDiv_1);
RTC_DeInit(); //初始化默认状态
//选择LSI(38KHz)作为时钟源
CLK_RTCClockConfig(CLK_RTCCLKSource_LSI, CLK_RTCCLKDiv_1);
//打开RTC 时钟
CLK_PeripheralClockConfig(CLK_Peripheral_RTC, ENABLE);
/* RTC 时钟源:LSE,计时时间:32768/128/256 = 1S */
RTC_InitStr.RTC_HourFormat = RTC_HourFormat_24;//24 小时制
//RTC_InitStr.RTC_AsynchPrediv = 0x7F; //异步分频器128 分频
//RTC_InitStr.RTC_SynchPrediv = 0x00FF; //同步分频器256 分频
/* RTC 时钟源:LSI,计时时间:38000/38/1000 = 1S */
RTC_InitStr.RTC_AsynchPrediv = 0x25; //异步分频器38 分频
RTC_InitStr.RTC_SynchPrediv = 0x03E7; //同步分频器1000 分频
RTC_Init(&RTC_InitStr); //初始化RTC 参数
/* 初始化RTC_DateStr 结构体,设置日期数据*/
RTC_DateStructInit(&RTC_DateStr); //初始化RTC_DateStr 结构体
RTC_DateStr.RTC_WeekDay = RTC_Weekday_Thursday;//星期四
RTC_DateStr.RTC_Date = 03; //3 日
RTC_DateStr.RTC_Month = RTC_Month_January; //1 月
RTC_DateStr.RTC_Year = 18; //2018 年
RTC_SetDate(RTC_Format_BIN, &RTC_DateStr); //设置日期数据
/* 初始化RTC_TimeStr 结构体,设置时间数据*/
RTC_TimeStructInit(&RTC_TimeStr);//初始化RTC_TimeStr 结构体
RTC_TimeStr.RTC_Hours = 23; //23H
RTC_TimeStr.RTC_Minutes = 55; //55 分
RTC_TimeStr.RTC_Seconds = 00; //0 秒
RTC_SetTime(RTC_Format_BIN, &RTC_TimeStr); //设置时间数据
RTC_AlarmStructInit(&RTC_AlarmStr);
RTC_AlarmStr.RTC_AlarmTime.RTC_Hours = 23;
RTC_AlarmStr.RTC_AlarmTime.RTC_Minutes = 55;
RTC_AlarmStr.RTC_AlarmTime.RTC_Seconds = 30;
RTC_AlarmStr.RTC_AlarmMask = RTC_AlarmMask_Hours | RTC_AlarmMask_Minutes | RTC_AlarmMask_Seconds;
RTC_SetAlarm(RTC_Format_BIN,&RTC_AlarmStr);
RTC_GetAlarm(RTC_Format_BIN,&RTC_AlarmStr);
RTC_AlarmSubSecondConfig(100,RTC_AlarmSubSecondMask_None);
RTC_AlarmCmd(ENABLE);
RTC_ITConfig(RTC_IT_ALRA,ENABLE);
}
中断部分代码
if(RTC_GetITStatus(RTC_IT_ALRA) != RESET)
{
RTC_ClearITPendingBit(RTC_IT_ALRA);
}
else if(RTC_GetITStatus(RTC_IT_WUT) != RESET)
{
RTC_WakeUpCmd(DISABLE);
RTC_ClearITPendingBit(RTC_IT_WUT);
}
RTC_ClearITPendingBit(RTC_IT_ALRA);
求指导,
没人做过这个东东么? taozefeng1 发表于 2018-8-15 19:33
没人做过这个东东么?
一直看英文文档, 看的感觉要疯了,关键是看了,还不明白表达的什么意思。。 已解决。 taozefeng1 发表于 2018-8-15 20:12
已解决。
怎么解决? 很好的资料,学习了 楼主闹钟中断可以唤醒halt模式吗?我用wakeup中断可以唤醒,闹钟唤醒是怎么实现的
页:
[1]