返回首页
当前位置: 主页 > 中断系统 >

8031单片机CPU响应中断源请求详细过程及程序示例

时间:2009-12-09 20:38来源:未知 作者:牛牛 点击:
MCS-51 的 CPU 在每一个机器周期顺序检查每一个中断源,在每一机器周期的状态周期 S6 采样并按优先级顺序处理所有被激活了的中断请求,如果没有被下述条件所阻止,将在下一个机器周期的状态周期 S1 响应激活了的最高级中断请求。 (1)CPU 正在处理相同的或更

MCS-51CPU在每一个机器周期顺序检查每一个中断源,在每一机器周期的状态周期S6采样并按优先级顺序处理所有被激活了的中断请求,如果没有被下述条件所阻止,将在下一个机器周期的状态周期S1响应激活了的最高级中断请求。 单片机

(1)CPU正在处理相同的或更高优先级的中断。

单片机

(2)现行的机器周期不是所执行指令最后一个机器周期。

单片机

(3)正在执行的指令是RETI或是访问IEIP的指令(CPU在执行RETI或访问IEIP的指令后,至少需要再执行一条指令才会响应新的中断请求。

内容来自单片机之家www.dpj100.com

如果上述条件中有一个存在,CPU将丢弃中断查询的结果。 单片机

CPU响应中断时,先置相应的优先级状态触发器(该触发器指出CPU开始处理的中断优先级别),然后执行一个硬件子程序调用,使控制转移到相应的入口,中断请求源申请标志清0(T1RI除外),硬件把程序计数器PC的内容压入堆栈,把中断子程序(即中断服务程序)的入口地址(中断向量)送入程序计数器PC 单片机

8031单片机各个断源的中断服务程序入口地址是固定不变的,如下表所示。CPU从相应的中断服务程序入口地址开始执行程序。

内容来自单片机之家www.dpj100.com


图片1

ORG   0000H
AJMP  MAIN
ORG   0003H
AJMP   INT0
ORG  000BH
AJMP       T0
ORG  001BH
AJMP   INT1
ORG  0023H 单片机
AJMP      ES
单片机

CPU从相应的中断服务程序入口地址开始执行程序,直到RETI为止。RETI指令表不中断服务程序的结束,CPU执行该指令时、一方面把响应中断时所置位的优先级状态触发器清0;另方面从栈顶弹出断点地址(两个字节)送到程序计数器PCCPU从原来中断处更新执行被中断的程序。 内容来自单片机之家www.dpj100.com

顶一下
(4)
66.7%
踩一下
(2)
33.3%
------分隔线----------------------------
推荐内容