+ -
当前位置:首页 → 问答吧 → 如何从子程序A代码中部,再调用一个子程序B,跳出子程序A?

如何从子程序A代码中部,再调用一个子程序B,跳出子程序A?

时间:2011-05-20

来源:互联网

;---------------------------
;单片机编程:
;这是一段计时0.5s的子程序;
;要求在计时过程中,CPU可以做其他的事情,最后其他程序过来查询是否到了时间。

DELAY0.5MS:
MOV R3, #0AH
DELAY0.05MS:
  CJNE R3, #00H,DELAYRET ;想通过R3等于0时来让计时程序退出;  
  MOV TMOD,#10H ;这里是用计时器0来计时0.05s;
  MOV TL0,#B0H
  MOV TH0,#3CH
  SETB EA
  SETB ET0
  SETB TR0
  AJMP RD_KB ;这个是要要使用的其他程序。
 
  ORG OOOBH
  AJMP DELAY0.05MS ;从这里继续调用延时0.05ms的子程序,这样完成0.5秒延时。
  RETI
DELAYRET: ;这个就是想跳出计时程序的子程序;
RET

作者: Microsoft_EIS   发布时间: 2011-05-20

添加 
 CLR TR0

作者: Microsoft_EIS   发布时间: 2011-05-20