当前位置:首页 > 单片机 > 单片机
[导读]1.与RTC有关的IO口:PC13(TAMPER-RTC)不能设置成GPIO_Mode_AN状态,否则进不了RTC中断。(可以设置成GPIO_Mode_IN)。2.需要在设置RTC时钟之前 RTC_WakeUpCmd(DISABLE),这一句官方例子上没有,如果没有这一句现象

1.与RTC有关的IO口:PC13(TAMPER-RTC)不能设置成GPIO_Mode_AN状态,否则进不了RTC中断。(可以设置成GPIO_Mode_IN)。

2.需要在设置RTC时钟之前 RTC_WakeUpCmd(DISABLE),这一句官方例子上没有,如果没有这一句现象为只有当重新上电的时候RTC才会重置,而重新运行程序的时候RTC不会重置。



3.在设置RTC的定时唤醒中断前,一定要清除相应的中断,否则表现的现象为有时能进入RTC中断,有时不能进。

RTC_ClearITPendingBit(RTC_IT_WUT);

RTC_ITConfig(RTC_IT_WUT, ENABLE);

4.RTC的周期中断将CPU从停机模式唤醒时,一定要清除Wake-Up标志位,否则只能进一次RTC中断,后续进不了。

if(PWR_GetFlagStatus(PWR_FLAG_WU) != RESET)// 检查唤醒标志是否设置

{

PWR_ClearFlag(PWR_FLAG_WU);

}

未解决的问题:当RTC将CPU唤醒后,如果配置MSI为时钟源,当再次进入低功耗时,功耗维持在60-70ua,原因未知;当采用HSE为中断源时,RTC中断会在三四次后不能再进入,目前采用HSI作为RTC唤醒后的中断源。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭