什么是中断和中断系统?单片机中断响应时间的计算

描述

  当CPU正在处理某件事情的时候,外部发生的某一事件请求CPU迅速去处理, CPU暂时中止当前的工作,转去处理所发生的事件,处理完该事件以后,再回到原来被中止的地方,继续原来的工作。这种过程为中断,实现这种服务的部件称为中断系统。

  功能:①实时处理,能对外界异步发生的事件作出及时的处理。②完全消除了CPU在查询方式中的等待现象,大大提高了CPU的工作效率。③实现实时控制。

  中断优先级处理的原则是什么?

  中断优先级是CPU响应中断的先后顺序。中断优先处理的原则是:

  (1)先响应优先级高的中断请求,再响应优先级低的中断请求。

  (2)如果一个中断请求己被响应,同级的其他中断请求将被禁止。

  (3)如果同级的多个中断请求同时出现,CPU则按单片机内部的自然优先级顺序响应各中断请求。

  单片机内部自然优先级顺序(由高到低)为: 外部中断0→定时器0中断→外部中断l→定时器1中断→串行接口中断。

  单片机中断响应时间的计算

  中断响应时间:从外部中断请求有效(外部中断请求标志置1)到转向中断入口地址所需要的响应时间。每个机器周期的S5P2时刻,INTx引脚的电平被锁存到内部寄存器中,待下一个周期查询。

  1.最短时间:中断请求有效,查询后在下一个周期便开始执行一条硬件的子程序的调用(时间是两个周期),然后开始执行服务程序的第一条指令。这样从锁存电平的周期到执行中断服务程序,中间相隔3个机器周期。

  2.最长时间:如果中断信号发生在前面所说的3种情况时,响应时间就要变长:

  (1)响应时间取决于正在执行的同级或高级中断的执行时间;

  (2)指当前CPU执行的指令是多周期指令,如乘除法指令(4个 周期),最坏情况,还要等3个周期。这样响应周期变为3+3=6个周期;

  (3)CPU当前执行的指令是RETI或访问IE、IP寄存器时,本指令(1个周期)没有响应,且下一条指令执行完后才能响应,这样附加的等待时间最长不会超过5个周期(1+4)。整个响应为5+3=8个周期。

  这样,如果不考虑第1种情况,整个中断响应的时间范围应当是: 3~8个机器周期。

       审核编辑:黄飞

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分