独闷闷网

 找回密码
 立即注册
搜索
查看: 3237|回复: 0
打印 上一主题 下一主题
收起左侧

[转载] 51单片机中的中断优先级总结

[复制链接]
跳转到指定楼层
楼主
发表于 2014-9-9 07:15:45 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
      51单片机的中断可嵌套,但至多支持二级嵌套。        51单片机的默认(此时的IP寄存器不做设置)中断优先级为:  
外部中断0 > 定时/计数器0 > 外部中断1 > 定时/计数器1 > 串行中断;  
      但这种优先级只是逻辑上的优先级,当同时有几种中断到达时,高优先级中断会先得到服务。这种优先级实际上是中断同时到达的情况下,谁先得到服务的优先级,而不是可提供中断嵌套能力的优先级。这种优先级被称为逻辑优先级。  
      例如:当计数器0中断和外部中断1(优先级 计数器0中断>外部中断1)同时到达时,会进入计时器0的中断服务函数;但是在外部中断1的中断服务函数正在服务的情况下,这时候任何中断都是打断不了它的,包括逻辑优先级比它高的外部中断0计数器0中断。  要实现真正的嵌套形式的优先级,也即高优先级中断服务可以打断低优先级中断服务的情况,       必须通过设置中断优先级寄存器IP来实现;这种优先级被称为物理优先级。  
      例如:设置IP = 0x10,即设置串口中断为最高优先级,则串口中断可以打断任何其他的中断服务函数实现嵌套,且只有串口中断能打断其他中断的服务函数。若串口中断没有触发,则其他几个中断之间还是保持逻辑优先级,相互之间无法嵌套。



乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-4-24 23:20 , Processed in 0.164821 second(s), 20 queries .

快速回复 返回顶部 返回列表