这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 关于VXWORKS中断嵌套问题

共3条 1/1 1 跳转至

关于VXWORKS中断嵌套问题

菜鸟
2007-07-05 17:17:02     打赏

我做了一些测试,发现VXWORKS(for coldfire)里的中断是不能嵌套的,或者说默认是不嵌套的?CPU是支持中断嵌套的,我觉得OS在调ISR前使用了intLock(),退出时调用intUnlock().如果在ISR里直接用intUnlock()开中断,系统立即就死了.请问了解的同学,如何才能在VXWORKS下实现中断嵌套?

在intLib.h文件前面的说明里,说intLibInit, 增加了INT_PREEMPT_MODEL的支持,但是找不到使用的方法.请大虾指点.




关键词: 关于     VXWORKS     中断     嵌套     问题    

菜鸟
2007-07-09 18:07:00     打赏
2楼

请问一下,你是如何证明不能发生嵌套的?

用户(我们啦)的中断程序在前后加intlock和intunlock是不太合适的,但中断处理内部倒确实做了这样的手脚,处理中断的第一件事就是关中断。

VxWorks下中断是可以嵌套的,最明显的是主时钟中断,也就是系统的tick中断,是一个优先级最高的中断。

感觉中断嵌套还不太好测试。只能去碰。如果你有很好的测试方法,还请赐教。


菜鸟
2007-12-19 22:09:09     打赏
3楼
vxworks本身是支持嵌套的,主要还是看硬件,我所知道的powerpc 82xx系列,产生中断时会禁止中断,等一些寄存器保存后再允许中断,这时只允许更高优先级的中断产生。在82xx中,时钟中断优先级很低。

共3条 1/1 1 跳转至

回复

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