打印

c8051进入中断的问题!

[复制链接]
2973|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
czhlcai|  楼主 | 2007-3-21 16:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好,如果有两个中断,优先级一高一低。

1。如果低优先级中断产生(由于有中断延时,还未进入中断)这时,高优先级中断突然来了(也有中断延时),是直接进入高中断,还是先进入低中断再立即进入高中断?

2。如果低优先级中断产生,且刚进入中断,第一句话EA=0未执行或未执行完(因为执行要有2个机器周期)这时突然来了高优先级中断?那么会进入高优先级中断吗?因为我不想用中断嵌套,谢谢

相关帖子

沙发
ayb_ice| | 2007-3-21 16:54 | 只看该作者

随便说说

  1: 直接进入高中断
  2: 不存在未执行完成情况(一旦执行一定会执行完),那么如果还未执行当然是进入高优先级中断,这都是针对标准51而言,有些型号的C8051F必须连续执行EA=0,EA=0才能确保和标准51的EA=0的效果相同(详细情况请看DATASHEET),这是由于流水线问题引起的,后来的解决了这个问题.
  不想用中断全部中断设为同一优先级就可以用了.

使用特权

评论回复
板凳
czhlcai|  楼主 | 2007-3-21 19:29 | 只看该作者

谢谢

不是有自然优先级吗?优先级从设到低,怎么会设为同一优先级。

使用特权

评论回复
地板
ayb_ice| | 2007-3-21 19:33 | 只看该作者

随便说说

  是有自然优先级,但感觉你理解有误,还是多看看书吧.

使用特权

评论回复
5
czhlcai|  楼主 | 2007-3-22 10:22 | 只看该作者

谢谢ayb_ice我理解是有误

书上是这么说的“如果同级的多个中断请求同时出现,则按CPU查询次序确定哪个中断请求被响应,次序为:外部中断0->定时计数器中断0->外部中断1->定时计数器中断1->串行中断”

使用特权

评论回复
6
otisyf| | 2007-3-22 19:05 | 只看该作者

re

这也是单片机片内优先级!从高到低!

使用特权

评论回复
7
平常人| | 2007-3-22 19:55 | 只看该作者

问题一:先进入低优先级中断! 问题二:不会!

问题一:所谓“中断延时”表示已经过优先级仲裁进入中断响应阶段,所以直接进入先来的低优先级中断处理程序。

问题二:这种情况的高优先级中断比前种情况来得更晚,他早已错过了优先级仲裁阶段。

使用特权

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

本版积分规则

43

主题

136

帖子

0

粉丝