这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » Cortex-M3/M4关闭与开启全局中断enableirq()与disable

共1条 1/1 1 跳转至

Cortex-M3/M4关闭与开启全局中断enableirq()与disableirq()

院士
2025-01-19 16:52:12     打赏

Cortex-M3/M4关闭与开启全局中断enable_irq()与disable_irq()

最近在开发基于Cortex-M4内核的MCU固件升级程序,在升级跳转前要关闭掉全部中断,清除掉pending的中断状态,然后再跳转到app程序。这里就需要使用到关闭全局中断的操作

还有一件事情,我们自研的Cortex-M3内核,我的研发同事在调试中断时发现我们设计好的中断就是不进入。这又是为什么呢?

先说结果吧!

第一种情景下,我们调用__disable_irq(),即可关闭全部可屏蔽中断,之后就可以干想干的事情了。

第二种情景下,我尝试着__enable_irq(),我们预期的中断就触发了。

这两个函数ARM公司的头文件已经帮我们设计好了,我们直接调用即可。但是一定要引用core_cm3.h或core_cm4.h的头文件哟~~




关键词: Cortex-M3     全局     中断    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]