打印

PSoC中断嵌套问题

[复制链接]
1880|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
love_life|  楼主 | 2009-11-23 00:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一般来说
当高优先级中断正在执行时,低优先级的中断是不响应的

请问,PSoC是不是也一样啊?
沙发
Apnote| | 2009-11-23 19:26 | 只看该作者
PSoC也是有中断优先级的,一般由priority encoder产生中断向量从高到低。

数据参考手册TRM的Posted versus Pending Interrupts部分说的很清楚。

使用特权

评论回复
板凳
god_like| | 2009-11-23 21:29 | 只看该作者
应该不同吧
好像只要进入中断,就会自动关闭全局中断允许,不再响应任何中断.直到reti指令自动允许全局中断.
  你如果要中断嵌套,需要手动操作允许全局中断.

使用特权

评论回复
地板
love_life|  楼主 | 2009-11-23 21:40 | 只看该作者
3# god_like

我查了官方网站,相同的
Question:
Why do I have to re-enable global interrupts?

Response:
Global nterrupts are disabled in Interrupt Service Routines (ISRs) by default. Re-enabling the global interrupts inside an ISR allows the next pending interrupt to be serviced while inside the ISR that enabled global interrupts. If the pending interrupt is lower priority than the one that enabled global interrupts, it will still be serviced.

Note: If you enable global interrupts inside an ISR that posts interrupts faster than they can be serviced, you may overflow your stack by constantly entering an ISR without exiting it.

使用特权

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

本版积分规则

32

主题

636

帖子

1

粉丝