请问复位脚和RTC从待机唤醒如何区分?

2019-07-14 18:06发布

我现在用STM32F100C8T6这个片子,系统工作完成后,进入待机模式,让RTC的闹钟在一段时间后把系统唤醒,
         现在我要分辨系统唤醒是RTC的闹钟唤醒还是REST脚复位唤醒的,这两个能分辨出来吗?REST脚上接的按键,可以手动复位。


     我现在
if(PWR_GetFlagStatus(PWR_FLAG_WU)
{
.......RTC唤醒需要做的工作;
}
else
{
....REST引脚,手动复位要做的工作;
}
这样没有进入RTC唤醒需要做的工作里面。。  RTC定时唤醒现在是正常的
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
平凡的世界12
1楼-- · 2019-07-15 00:06
RTC的闹钟中断程序,在把系统从待机模式唤醒时,中断程序并不执行。。。。
void RTCAlarm_IRQHandler(void) 
{
 char num;
 if(RTC_GetITStatus(RTC_IT_ALR)!= RESET)//
 {
   status_system=2;
   RTC_ClearITPendingBit(RTC_IT_ALR);  //

   for(num=0;num
Sabrina_cc
2楼-- · 2019-07-15 05:32
delay_ms(100); 被编译器优化掉了么,看下对应的汇编语句,调试设置个断点不就知道运行到哪了么
阿什顿信道
3楼-- · 2019-07-15 05:57
检查下优化以前对不对
爱雪爱雪
4楼-- · 2019-07-15 11:52
delay_ms(100);是正确的吗?是不是太快了,改成1000,就是1秒看看
水木清华pretty
5楼-- · 2019-07-15 16:26
 精彩回答 2  元偷偷看……
sfsfs
6楼-- · 2019-07-15 22:08
路过,学习ing

一周热门 更多>