打印

讨论一下HALT/STOP模式的中断唤醒

[复制链接]
3106|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
agency1980|  楼主 | 2007-1-31 09:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在<中颖单片机入门与实践>有下面的一段话:
如果IE 置起指令是放在中断程序之外,而且程序中有HALT 或STOP 指令,则HALT/STOP 指令与IE 置起指令尽量靠近,否则会出现程序无法退出HALT/STOP 模式而出现“假死机”。
例如:
程序:
:
LDI IE, 0FH ; enable interrupt
NOP
NOP
HALT
如果在两条NOP 指令之后,立刻有中断事件产生或IRQ 中断标志不等于0,CPU 将立即响应对应的中断,IE 被硬件清零。"当程序从中断服务程序返回后,CPU 开始执行HALT/STOP 指令。由于IE 已被清零,所有的中断都被禁止,系统也无法由中断唤醒,一直处于HALT/STOP 模式,呈现一种假死机现象。"

我对最后一句话不是很清楚,程序的中断返回前软件上肯定要置IE使能,那怎么会进入假死状态呢?我相信没有人在中断返回前不使能IE的吧?除非只需要进中断一次.
沙发
warm_ice| | 2007-1-31 17:28 | 只看该作者

是这样的

这段讨论的就是不在中断返回时使能IE的问题,如果每次中断返回时使能IE,是不会有这个问题的.

使用特权

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

本版积分规则

6

主题

87

帖子

1

粉丝