打印
[技术问答]

如何在省电模式中,唤醒后但不进中断处理?

[复制链接]
691|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhuotuzi|  楼主 | 2019-8-31 23:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在进入省电模式之前,用户可以藉由呼叫下列函数
__disable_irq();
禁用 IRQ 处理,使得系统在唤醒之后,会接续执行进入省电模式的下一笔指令,而不会进入中断处理程序。
除此之外,用戶还需要注意以下几点 :
  • 用户需要 __WFI 函數後面加上函數
          __ISB();
          清除管线预先抓取的指令,使得接续的指令能被正确的抓取并且执行。
  • 写 ”1” 到 NVIC_ICPR 将对应的 IRQ 处理挂起清除。
  • 将中断旗帜清除。

使用特权

评论回复
沙发
zhuotuzi|  楼主 | 2019-8-31 23:27 | 只看该作者
这个经验非常好,转来。

使用特权

评论回复
板凳
wahahaheihei| | 2019-8-31 23:30 | 只看该作者
这个方法好,可以避免不必要的中断发生

使用特权

评论回复
地板
天灵灵地灵灵| | 2019-9-8 23:28 | 只看该作者
这样还可以中断唤醒?

使用特权

评论回复
5
天灵灵地灵灵| | 2019-9-8 23:28 | 只看该作者
只是唤醒后不处理中断函数?

使用特权

评论回复
6
wahahaheihei| | 2019-9-8 23:53 | 只看该作者
很奇怪,关闭后,中断还能唤醒吗

使用特权

评论回复
7
mintspring| | 2019-9-9 00:02 | 只看该作者
好方法,试试看。

使用特权

评论回复
8
yiyigirl2014| | 2019-9-11 00:27 | 只看该作者
如果关闭的话,还会触发中断唤醒吗

使用特权

评论回复
9
heisexingqisi| | 2019-9-15 23:53 | 只看该作者
先试试看。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

201

主题

3315

帖子

7

粉丝