第十五课:51单片机的中断系统内容摘要:

中断系统的控制寄存器: 中断允许寄存器 IE 中断屏蔽 在中断源与 CPU 之间有一级控制,类似开关,其中第一级为一个总开关,第二级为五个分开关,由 IE 控制。 在 MCS- 51 中断系统中,中断的允许 或禁止是由片内可进行位寻址的8 位中断允许寄存器 IE 来控制的。 见下表 EA ES ET1 EX1 ET0 EX0 其中 EA 是总开关,如果它等于 0,则所有中断都不允许。 ES-串行口中断允许 ET1-定时器 1 中断允许 EX1-外中断 1 中断允许。 ET0-定时器 0 中断允许 EX0-外中断 0 中断允许。 如果我们要设置允许外中断 1,定时器 1 中断允许,其它不允许,则 IE可以是 EA ES ET1 EX1 ET0 EX0 1 0 0 0 1 1 0 0 即 8CH,当然,我们也可以用位操作指令 SETB EA SETB ET1 SETB EX1 来实现它。 中断优先级寄存器 IP 中断优先原则:(概括为四句话) 低级不打断高级 高级不睬低级 同级不能打断 同级、同时中断,事先约定。 为什么要有中断优先级。 CPU 同一时间只能响应一个中断请求。 若同时来了两个或两个以上中断请求,就必须有先有后。 为此将 5 个中断源分成高级、低级两个级别,高级优先,由 IP 控制。 在 MCS-中断优先级中由中断优先级寄存器 IP 来高置的, IP 中某位设为 1,相应的中断就是高优先级,否则就是低优先级。 PS PT1 PX1 PT0 PX0 IP 优先级别寄存器各位介绍如下: PS: 串行口中断优先级控制位。 PS=1 设定串行口为高优先级中断;PS=0 为低优先级中断。 PT1: T1 中断优先级控制位。 PT1=1 设定定时器 T1 为高优先级中断;PT1=0 为低优先级中断。 PX1: 外部中断 1 优先级控制位。 PX1=1 设定定时器外部中断 1 为高优先级中断; PX1=0 为低优先级中断。 PT0: T0 中断优先级控制位。 PT0=1 设定定时器 T0 为高优先级中断;PT0=0 为低优先级中断。 PX0: 外部中断 0 优先级控制位。 PX0=1 设定 定时器外部中断 0 为高优先级中断; PX0=0 为低优先级中断。 例:设有如下要求,将 T0、外中断 1 设为高优先级,其它为低优先级,求 IP 的值。 IP 的首 3 位没用,可任意取值,设为 000,后面根据要求写就可以了 PS PT1 PX1 PT0 PX0 0 0 0。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。