打印

51中断允许位和ISR之间的奇怪现象

[复制链接]
1721|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
eledong|  楼主 | 2008-5-21 22:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ayb_ice| | 2008-5-22 09:34 | 只看该作者

我还以为是什么问题呢

这是你自己的问题嘛,一般是把所有的中断都写出来,即使是个空函数,这样就没有问题了。

使用特权

评论回复
板凳
HWM| | 2008-5-22 09:46 | 只看该作者

象中断之类的代码,除非你用C(内有标准启动代码),否则

使用特权

评论回复
地板
computer00| | 2008-5-22 09:48 | 只看该作者

因为51有个中断机制,就是要用RETI来返回,

只有它才能清除中断优先级标志,否则,以后的中断它就不再响应了,也就是说被屏蔽了。

这也是为什么一些51的“陷阱”程序,在检测到跑飞后,用两条RETI来返回到地址0的原因,而不能直接LJMP 0

使用特权

评论回复
5
eledong|  楼主 | 2008-5-22 12:02 | 只看该作者

谢谢回复

TO ayb_ice
“中断允许标志位开启而没有相应ISR”,是故意注释掉ISR的,主要是想验证一下其他**所说的情况

TO HWM
同意

TO 圈圈
谢谢!你的解释很详细很中肯,长知识了

使用特权

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

本版积分规则

6

主题

48

帖子

1

粉丝