单片机reti指令的作用(单片机reti)

交换机 2024-10-18 电子科技 46 views

扫一扫用手机浏览

文章目录 [+]
在单片机中,RET和RETI分别是什么返回指令

RETI***是中断返回指令;RET***是子程序返回指令;RETI比RET多一步清除中断优先级状态位,让同级别的中断有机会得到响应。

RET是普通子程序的返回指令,RET是普通子程序的最后1条指令,它使程序从子程序转到调用该子程序指令LCALL/ACALL的下1条指令执行。

但在第二次运行时就会出错了。过程不同***RET是从子程序返回,返回到LCALL或ACALL指令下一条指令处继续执行程序。RETI是从中断服务子程序返回,返回到中断时的断点处继续执行程序,断点未知。

单片机汇编语言指令中中断返回指令RET和RETI有什么不同?

RETI是中断服务子程序的返回指令,RETI是中断服务子程序的最后1条指令,它使程序从中断服务子程序转到中断点继续运行。

过程不同***RET是从子程序返回,返回到LCALL或ACALL指令下一条指令处继续执行程序。RETI是从中断服务子程序返回,返回到中断时的断点处继续执行程序,断点未知。

由于两种调用方式的存在,单片机的返回指令也有了两种不同的指令,分别是RET和RETI。

RETI是中断返回指令,这条指令的功能和RET指令相似,2条指令的不同之处是:本指令清除了中断响应时,被置1的MCS-51内部不可寻址的***“优先级生效”触发器清零。

为什么80C51单片机在执行RETI或访问IE、IP指令时,不能立即响应中断...

1、不是不能响应。而是不响应。只有再执行一条其它指令之后,单片机才去响应早已出现的中断申请。这是硬件设计的结果。

2、(1)没有更高级的中断服务正在进行中。(2)当前的指令周期已经结束。(3)当前执行的不是RETI指令或者访问寄存器IE(IP)的指令。否则,必须等候CPU再执行一条指令后,才能响应中断请求。

3、外部中断请求标志位是***IE0******和***IE1******。***返回(RETI)******指令以及任何访问******IE******和***IP******寄存器的指令执行过***后,CPU不能马上响应中断。

4、中断响应就是单片机CPU对中断源提出的中断请求的接受。中断请求被响应后,再经过一系列的操作,而后转向中断服务程序,完成中断所要求的处理任务。

5、若当前指令为RETI或访问IE或IP指令,执行该类指令占一个机器周期,其后需再执行一条指令(最多占4个机器周期),才能响应中断请求,则增加的等待时间不会超过5个周期。

标签:

本文转载自互联网,如有侵权,联系删除

本文链接地址:http://www.oubolanzhuangshi.com/5858.html

相关文章

  • 暂无相关推荐