jiangwei0802-34 发表于 2014-6-28 00:20:31

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

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

 
     我现在
if(PWR_GetFlagStatus(PWR_FLAG_WU)
{
 .......RTC唤醒需要做的工作;
}
else
{
 ....REST引脚,手动复位要做的工作;
}
这样没有进入RTC唤醒需要做的工作里面。。  RTC定时唤醒现在是正常的

feel-376797 发表于 2014-6-28 09:14:30

RE:复位脚和RTC从待机唤醒如何区分

时钟中断和引脚中断是两个中断,用两个服务程序不就分开了。

jiangwei0802-34 发表于 2014-6-28 11:14:13

回复:复位脚和RTC从待机唤醒如何区分

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

有缘于你 发表于 2014-6-28 18:03:28

RE:复位脚和RTC从待机唤醒如何区分

delay_ms(100); 被编译器优化掉了么,看下对应的汇编语句,调试设置个断点不就知道运行到哪了么

aaa999kk 发表于 2014-6-30 15:38:21

RE:复位脚和RTC从待机唤醒如何区分

检查下优化以前对不对

feiante-155820 发表于 2014-6-30 16:14:33

RE:复位脚和RTC从待机唤醒如何区分

delay_ms(100);是正确的吗?是不是太快了,改成1000,就是1秒看看

深秋独影 发表于 2014-6-30 17:36:17

RE:复位脚和RTC从待机唤醒如何区分

看看优化结果,可能被优化掉了,时间短就看不见了

vivy 发表于 2014-7-1 17:26:28

RE:复位脚和RTC从待机唤醒如何区分

路过,学习ing
页: [1]
查看完整版本: 复位脚和RTC从待机唤醒如何区分