社区
单片机/工控
帖子详情
跪求 STM32芯片__disable_irq关闭中断后,调用__WFI()指令,CPU为什么能给被唤醒
nbh520
2017-07-06 10:38:08
Cortex M0内核 ,CPU调用__disable_irq函数关闭中断后,进入睡眠模式,并且调用__WFI()函数,等待中断,结果当有外部中断进入时,CPU唤醒。
跪求大神指教这是什么原理,关闭中断后,等待中断,然后中断来了,想不明白
...全文
1212
1
打赏
收藏
跪求 STM32芯片__disable_irq关闭中断后,调用__WFI()指令,CPU为什么能给被唤醒
Cortex M0内核 ,CPU调用__disable_irq函数关闭中断后,进入睡眠模式,并且调用__WFI()函数,等待中断,结果当有外部中断进入时,CPU唤醒。 跪求大神指教这是什么原理,关闭中断后,等待中断,然后中断来了,想不明白
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
研究是为了理解
2018-05-07
打赏
举报
回复
可以的, 具体可以看看<cortex-M3权威指南>关于电源管理的描述章节. 即便是使用__disable_irq函数禁止了中断和可屏蔽异常, 也是可以使用配置的中断唤醒CPU的.
STM32
开关总
中断
引用 http://www.amobbs.com/forum.php?mod=viewthread&tid=5397451 在
STM32
/Cortex-M3 中是通过改变
CPU
的当前优先级来允许或禁止
中断
。 PRIMASK 位:只允许 NMI 和 hardfault 异常,其他
中断
/异常都被屏蔽(当前
CPU
优先级=0)。 FAULTMASK 位:只...
【
STM32
】低功耗模式、
WFI
命令等进入不了休眠的可能原因(系统定时器SysTick一直产生
中断
)
【
STM32
】低功耗模式、
WFI
命令等进入不了休眠的可能原因(系统定时器SysTick一直产生
中断
)
STM32
低功耗停机模式(STOP)管脚事件(EVENT)
唤醒
实现及优化
STM32
低功耗停止模式(STOP)管脚事件
唤醒
实现及优化 1. 介绍
STM32
具有多种低功耗模式,当前以
STM32
L4系列的低功耗模式最为丰富,此处基于
STM32
L476和
STM32
CUBEIDE环境介绍停止模式(STOP)管脚事件
唤醒
的实现(HAL库)。STOP模式只是停止代码执行,
唤醒
(其实是continue的作用)后继续执行后面的代码,而不是重启之后从初始代码开始执行。 2. 低功耗模式
STM32
L4的低功耗模式,相比其它系列的
芯片
,多了几种: 三种STOP模式的区别,可以参考文档:RM03
STM32
低功耗睡眠模式(SLEEP)事件(EVENT)
唤醒
实现及优化
STM32
低功耗睡眠模式(SLEEP)事件(EVENT)
唤醒
实现及优化 1. 介绍
STM32
具有多种低功耗模式,当前以
STM32
L4系列的低功耗模式最为丰富,此处基于
STM32
L476和
STM32
CUBEIDE环境介绍睡眠模式(SLEEP)事件
唤醒
的实现(HAL库)。这里以管脚
中断
为
中断
源。SLEEP模式只是停止
CPU
和后续代码执行,
唤醒
(其实是continue的作用)后继续执行后面的代码,而不是重启之后从初始代码开始执行。 2. 低功耗模式
STM32
L4的低功耗模式,包括传统的睡眠模式: STM3
STM32
/M3/M0关于开关总
中断
的问题
NVIC 共支持 1 至 240 个外部
中断
输入(通常外部
中断
写作
IRQ
s)。 具体的数值由
芯片
厂商在设计
芯片
时决定。此外, NVIC 还支持一个“永垂不朽”的不可屏蔽
中断
(NMI)输入。NMI 的实际功能亦由
芯片
制造商决定。在某些情况下, NMI 无法由外部
中断
源控制。 在
STM32
/Cortex-M3 中是通过改变
CPU
的当前优先级来允许或禁止
中断
。 异常...
单片机/工控
27,375
社区成员
28,770
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章