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

[复制链接]
3219|4
 楼主| twodiamond 发表于 2014-10-23 10:12 | 显示全部楼层 |阅读模式
F4中是否提供驱动接口,用于控制全局中断的打开、关闭,以及全局中断状态的查询?

谢谢!


xlsbz 发表于 2014-10-23 11:06 | 显示全部楼层
没搞过。不过这个和ARM有关和 STM32无关。

所以估计有。
mmuuss586 发表于 2014-10-23 19:21 | 显示全部楼层
airwill 发表于 2014-10-23 22:02 | 显示全部楼层
我使用:
__enable_irq()
__disable_irq()

不过. 很难得用到关中断功能.
 楼主| twodiamond 发表于 2014-10-25 14:43 | 显示全部楼层
是在多任务系统(目前测试freertos)中使用,必须要用到全局中断的关闭、打开,以保护对全局变量的操作,freertos中有提供这2个函数:portENTER_CRITICAL()、 portEXIT_CRITICAL()来实现,但没有查询这个中断状态的接口,如果这样,象下面的逻辑,很难实现了:

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

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

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

portEXIT_CRITICAL();               //开全局中断
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

36

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部