打印
[STM32F4]

全局中断之打开、关闭与查询

[复制链接]
2991|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
twodiamond|  楼主 | 2014-10-23 10:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
F4中是否提供驱动接口,用于控制全局中断的打开、关闭,以及全局中断状态的查询?

谢谢!


沙发
xlsbz| | 2014-10-23 11:06 | 只看该作者
没搞过。不过这个和ARM有关和 STM32无关。

所以估计有。

使用特权

评论回复
板凳
mmuuss586| | 2014-10-23 19:21 | 只看该作者
参考这个帖子看看;
https://bbs.21ic.com/icview-308386-1-1.html

使用特权

评论回复
地板
airwill| | 2014-10-23 22:02 | 只看该作者
我使用:
__enable_irq()
__disable_irq()

不过. 很难得用到关中断功能.

使用特权

评论回复
5
twodiamond|  楼主 | 2014-10-25 14:43 | 只看该作者
是在多任务系统(目前测试freertos)中使用,必须要用到全局中断的关闭、打开,以保护对全局变量的操作,freertos中有提供这2个函数:portENTER_CRITICAL()、 portEXIT_CRITICAL()来实现,但没有查询这个中断状态的接口,如果这样,象下面的逻辑,很难实现了:

   ......
portENTER_CRITICAL();              //关全局中断

  func1();                                             //该函数中也调用了一次全局中断关、全局中断开操作,所以出来后,全局中断是打开的状态

  .......                                                //这之间的代码就有可能被中断了,也就是失去了关中断的初衷

portEXIT_CRITICAL();               //开全局中断

使用特权

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

本版积分规则

16

主题

36

帖子

0

粉丝