首页 理论教育 单片机应用技术:中断响应过程

单片机应用技术:中断响应过程

时间:2023-11-06 理论教育 版权反馈
【摘要】:8051 CPU在每个机器周期顺序检查每一个中断源,在机器周期的S6采样并按优先级顺序处理所有被激活了的中断请求,如果没有被下述条件所阻止,将在下一个机器周期的状态P1响应激活了的最高中断请求。如果存在上述条件之一,CPU将丢弃中断查询结果。由此可见,用户的中断服务程序末尾必须安排一条返回指令RETI,CPU现场保护和恢复必须由用户的中断服务程序实现。

单片机应用技术:中断响应过程

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

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

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

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

如果存在上述条件之一,CPU将丢弃中断查询结果。

处理机响应中断时,先置相应的优先级状态触发器(该触发器指出CPU开始处理的中断优先级别),然后执行一个硬件子程序调用,把程序的入口地址送给程序计数器PC,各中断源服务程序的入口地址为:

中断源        入口地址(www.xing528.com)

外部中断0       0003H

定时器/计数器T0       000BH

外部中断1       0013H

定时器/计数器T1       001BH

串行口中断       0023H

处理程序从该地址开始一直执行到RETI指令为止,RETI指令是中断服务程序结束的标志,CPU执行完这条指令后,清零响应中断所置位的优先级状态触发器,然后将从堆栈中弹出顶上的两个字节送到程序计数器PC,CPU从原来中断处重新执行被中断的程序。由此可见,用户的中断服务程序末尾必须安排一条返回指令RETI,CPU现场保护和恢复必须由用户的中断服务程序实现。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈