您的位置 首页 主动

准确延时程序

在写一些有些时序的程序时,要用到准确的延时时间,以下是使用Keil软件的反汇编来计算延时的。程序如:voiddelayns(uchart){uchark

在写一些有些时序的程序时,要用到精确的延时时刻,以下是运用Keil软件反汇编来核算延时的。

程序如:

void delayns(uchar t)
{ uchar k,i,j;
for(k=0;kfor(i=0;i<14;i++)
for(j=0;j<237;j++);
}

通过汇编后核算的成果为
(3*j*i+5*i+10)*k+4=10024*k+5 us;这个10us的延时还行

他的反汇编程序是:

CLR A 1
MOV R6,A 1
?C0008:
MOV A,R6 1*k
CLR C 1*k
SUBB A,R7 1*k
JNC ?C0017 2*k
; for(i=0;i<14;i++)

CLR A 1*k
MOV R5,A 1*k
?C0011:
; for(j=0;j<237;j++);
CLR A 1*i*k
MOV R4,A 1*i*k
?C0014:
INC R4 1*j*i*k
CJNE R4,#0EDH,?C0014 2*j*i*k #0EDH为j
?C0013:
INC R5 1*i*k
CJNE R5,#0EH,?C0011 2*i*k #0EH为i
?C0010:
INC R6 1*k
SJMP ?C0008 2*k
; }

?C0017:
RET 2
; END OF _delayns

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/zhudong/256691.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部