OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
12
返回列表 发新帖
楼主: sweet0429

关于待机唤醒实验中的疑惑?

[复制链接]

7

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
142
金钱
142
注册时间
2013-1-23
在线时间
4 小时
发表于 2015-9-2 16:10:25 | 显示全部楼层
从待机模式醒来后,不存在先执行复位,后执行中断的问题。
因为待机模式下,中断是没开启的,wakeup键唤醒只是配置后,检测的上升沿和中断没关系,醒来后,复位执行,重新配置的中断,此时按键的上升沿已经过了,不会触发中断,所以即使长按下去也不会执行中断里面的
if(Check_WKUP())//关机?
{  
Sys_Enter_Standby();  
}


正点原子逻辑分析仪DL16劲爆上市
回复 支持 反对

使用道具 举报

7

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
142
金钱
142
注册时间
2013-1-23
在线时间
4 小时
发表于 2015-9-2 16:12:02 | 显示全部楼层
回复【51楼】浮生长恨:
---------------------------------
就是说,即使不配置中断,也能醒来。
48楼的说法不正确,从待机模式醒来和中断没关系。
回复 支持 反对

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2015-10-3
在线时间
2 小时
发表于 2015-11-16 22:24:59 | 显示全部楼层
研究了一晚上总算懂了,谢谢原子哥~
回复 支持 反对

使用道具 举报

0

主题

11

帖子

0

精华

高级会员

Rank: 4

积分
877
金钱
877
注册时间
2015-11-5
在线时间
74 小时
发表于 2015-12-27 16:43:38 | 显示全部楼层
笨笨的小马驹爱奔跑 发表于 2015-1-20 22:59
待机唤醒实验终于明白了,多亏了别人的一句话,STM32的中断都是边沿触发的(我是卡在这里了),也就是说,按 ...

你说的是main中的LCD和WKUP这两个初始化函数换一下位置吗?这样的话屏幕就是闪了一下,不会一直亮啊
回复 支持 反对

使用道具 举报

18

主题

238

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1823
金钱
1823
注册时间
2014-8-5
在线时间
211 小时
发表于 2015-12-27 20:30:53 | 显示全部楼层
看了各位的讨论瞬间茅塞顿开
回复 支持 反对

使用道具 举报

74

主题

334

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
436
金钱
436
注册时间
2015-5-28
在线时间
144 小时
发表于 2016-8-9 10:56:03 | 显示全部楼层
正点原子 发表于 2012-11-17 16:03
特意做的这个效果。理论上是只需要WK_UP一个上升沿即可。

原子哥,待机模式可以设置成PA0的下降沿唤醒吗
最近爱上了stm32
回复 支持 反对

使用道具 举报

8

主题

30

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
229
金钱
229
注册时间
2014-3-14
在线时间
40 小时
发表于 2017-6-28 17:57:54 | 显示全部楼层
带我足够强大 发表于 2016-8-9 10:56
原子哥,待机模式可以设置成PA0的下降沿唤醒吗

当然不行看手册退出 WKUP引脚的上升沿、 RTC闹钟事件的上升沿、 NRST引脚上外部复位、 IWDG复位,这是32系统决定的
回复 支持 反对

使用道具 举报

8

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
116
金钱
116
注册时间
2017-7-3
在线时间
30 小时
发表于 2017-7-10 08:52:51 | 显示全部楼层
笨笨的小马驹爱奔跑 发表于 2015-1-20 22:59
待机唤醒实验终于明白了,多亏了别人的一句话,STM32的中断都是边沿触发的(我是卡在这里了),也就是说,按 ...

看懂了 感谢
回复 支持 反对

使用道具 举报

0

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
150
金钱
150
注册时间
2018-7-3
在线时间
28 小时
发表于 2018-8-2 10:45:24 | 显示全部楼层
很强
回复 支持 反对

使用道具 举报

4

主题

14

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2018-11-14
在线时间
8 小时
发表于 2018-11-28 10:49:41 | 显示全部楼层
笨笨的小马驹爱奔跑 发表于 2015-1-18 18:37
回复【2楼】正点原子:
---------------------------------
如果是待机之后,按下按键,则相当于复位, ...

!!!!!!!!!我也是这里卡住好久!!!按下三秒之后,上升沿进中断,check_WKUP=1,然后不也是进入sys_standb吗,这样的话,即使按下3秒也还是待机啊
回复 支持 反对

使用道具 举报

4

主题

52

帖子

0

精华

初级会员

Rank: 2

积分
195
金钱
195
注册时间
2017-4-24
在线时间
44 小时
发表于 2019-3-2 14:11:22 | 显示全部楼层
正点原子 发表于 2011-9-1 14:24
回复【楼主位】sweet0429:
---------------------------------
先执行初始化复位,再进入中断程序。明白这 ...

原子哥,我就是在待机模式下的时候,RTC唤醒一次,然后单片机执行一段
PWR->CSR|=0<<8;//不使能WKUP用于唤醒
的程序后再次进入待机模式,此时发现PA0上升沿还是一下子就唤醒了,好像我的设置不起作用一样,这是为什么呢
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2020-1-16
在线时间
3 小时
发表于 2020-2-21 23:40:04 来自手机 | 显示全部楼层
程序第一次执行,执行到执行到WKUP_Init()时,如果此时没有检测到按键按下3秒,CPU就会进入待机模式,请问一下是这样的吗?如果是这样,那此时CPU正处于待机模式,此时我即使按下了WKUP三秒,CPU回去执行Check_WKUP和中断处理函数吗?从而是其唤醒呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-20 22:55

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表