打印

问一下ARM7的中断嵌套,和PIC对比之后的疑问

[复制链接]
2066|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
headwolf|  楼主 | 2009-5-19 21:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ARM7的结构,是否不支持天然的中断嵌套,如果要搞这个要软件处理,就和PIC16一样。偶尔看到老外写的某ARM7的介绍的时候有这句话,想知道一下是不是所有的都是这样。
PIC 16BIT和PIC18应该都是支持天然的中断嵌套的吧,因为这些有POP和PUSH指令。
沙发
yewuyi| | 2009-5-20 08:53 | 只看该作者

~~

ARM的中断结构极为繁琐,PIC16的中断结构极为简略,呵呵,如此而已

使用特权

评论回复
板凳
machunshui| | 2009-5-20 12:29 | 只看该作者

什么叫"天然的中断嵌套"?

什么叫"天然的中断嵌套"?


ARM7中断和pic18类似,
都是两个中断向量入口.

不同点,是ARM7的中断有基于硬件的优先权管理,
pic18没有.

使用特权

评论回复
地板
HWM| | 2009-5-20 12:37 | 只看该作者

ARM7(其实整个ARMv5)未定义具体的中断控制系统。

使用特权

评论回复
5
headwolf|  楼主 | 2009-5-20 13:19 | 只看该作者

上英文原版

The interrupt structure within the ARM7 CPU and the VIC dose not support nested interrupts . If your application requires interrupts to be able to interrupt ISRS then you must provide support for this in software. Fortunately this is easy to do with a couple of macros.
上面是老外书上抄下来的。按我的理解,如果要在ARM7实现中断嵌套,必须加入额外的宏或者代码。而我用PIC24的时候,只需要设置好中断优先级别,高中断自然可以打断低中断,由于在ISR的出入口是用POP和PUSH(编译器产生)指令进行保护和还原,我不需要太关心。这就是我所谓的"天然".

使用特权

评论回复
6
HWM| | 2009-5-20 13:27 | 只看该作者

是这个意思,其实原则上VIC都不是ARMv5的范畴。

但到了ARMv7情况有所改变,在Cortex-M3(属于ARMv7-M)中,已经具备了中断控制系统(NVIC)。NVIC是支持中断嵌套的。

使用特权

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

本版积分规则

14

主题

278

帖子

0

粉丝