延时5秒左右
DELAY5S:PUSH04H
PUSH05H
PUSH06H
MOVR4,#50
DELAY5S_0:MOVR5,#200
DELAY5S_1:MOVR6,#245
DJNZR6,$
DJNZR5,DELAY5S_1
DJNZR4,DELAY5S_0
POP06H
POP05H
POP04H
RET
;513微秒延时程序
DELAY:MOVR2,#0FEH
DELAY1:DJNZR2,DELAY1
RET
;10毫秒延时程序
DL10MS:MOVR3,#14H
DL10MS1:LCALLDELAY
DJNZR3,DL10MS1
RET
;0.1s延时程序12mhz
DELAY:MOVR6,#250
DL1:MOVR7,#200
DL2:DJNZR6,DL2
DJNZR7,DL1
RET
;延时1046549微秒(12mhz)
;具体的计算公式是:
;((((r7*2+1)+2)*r6+1)+2)*r5+1+4=((r7*2+3)*r6+3)
*r5+5
DEL:MOVR5,#08H
DEL1:MOVR6,#0FFH
DEL2:MOVR7,#0FFH
DJNZR7,$
DJNZR6,DEL2
DJNZR5,DEL1
RET
;1秒延时子程序是以12MHz晶振
Delay1S:movr1,#50
del0:movr2,#91
del1:movr3,#100
djnzr3,$
djnzr2,del1
djnzr1,del0
Ret
;1秒延时子程序是以12MHz晶振为例算指令周期耗时
KK:MOVR5,#10;1指令周期1
K1:MOVR6,#0FFH;1指令周期10
K2:MOVR7,#80H;1指令周期256*10=2560
K3:NOP;1指令周期
128*256*10=327680
DJNZR7,K3;2指令周期
2*128*256*10=655360
DJNZR6,K2;2指令周期
2*256*10=5120
DJNZR5,K1;2指令周期2*10=20
RET
;2指令周期21+10+2560+327680+655360+5120+20+2=990753
;约等于1秒1秒=1000000微秒
;这个算下来也只有0.998抄
T_0:MOVR7,#10;
D1:MOVR6,#200;
D2:MOVR5,#248;
DJNZR5,$
DJNZR6,D2;
DJNZR7,D1;
RET
;这样算下来应该是1.000011秒
T_0:MOVR7,#10;
D1:MOVR6,#200;
D2:NOP
MOVR5,#248;
DJNZR5,$
DJNZR6,D2;
DJNZR7,D1;
RET
DELAY_2S:;10MS(11.0592mhz)
MOVR3,#200
JMPDELAY10MS
DELAY_100MS:;100MS(11.0592mhz)
MOVR3,#10
JMPDELAY10MS
DELAY_10MS:
MOVR3,#1
DELAY10MS:;去抖动10MS
(11.0592mhz)
MOVR4,#20
DELAY10MSA:
MOVR5,#247
DJNZR5,$
DJNZR4,DELAY10MSA
DJNZR3,DELAY10MS
RET
DELAY_500MS:;500500MS
MOVR2,#208
JMPDELAY_MS
DELAY_175MS:;175MS
MOVR2,#73
JMPDELAY_MS
delaY_120MS:;120MS
MOVR2,#50
JMPDELAY_MS
delay_60ms:;60ms
MOVR2,#25
JMPDELAY_MS
delay_30ms:;30ms
MOVR2,#12
JMPDELAY_MS
DELAY_5MS:;5MS
MOVR2,#2
;===================================
DELAY_MS:
CALLDELAY2400
DJNZR2,DELAY_MS
RET
;===================================
DELAY2400:;10x244+4=2447
/1.024=2390
MOVR0,#244;1
DELAY24001:
MULAB;4
MULAB;4
DJNZR0,DELAY24001;2
RET
DELAY:;延时子程序(1秒)
MOVR0,#0AH
DELAY1:MOVR1,#00H
DELAY2:MOVR2,#0B2H
DJNZR2,$
DJNZR1,DELAY2
DJNZR0,DELAY1
RET
MOVR2,#10;延时1秒
LCALLDELAY
MOVR2,#50;延时5秒
LCALLDELAY
DELAY:;延时子程序
PUSHR2
PUSHR1
PUSHR0
DELAY1:MOVR1,#00H
DELAY2:MOVR0,#0B2H
DJNZR0,$
DJNZR1,DELAY2;延时100mS
DJNZR2,DELAY1
POPR0
POPR1
POPR2
RET
本文发布于:2023-01-03 05:20:54,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/82369.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |