文档库 最新最全的文档下载
当前位置:文档库 › 51单片机精确延时源程序

51单片机精确延时源程序


51单片机精确延时源程序

一、晶振为
11.0592MHz,12T

1、延时
1ms:

(1)汇编语言:
代码如下:
DELAY1MS: ;误差 -0.651041666667us
MOV R6,#04H

DL0:
MOV R5,#71H
DJNZ R5,$
DJNZ R6,DL0
RET

(2)C语言:
void delay1ms(void) //误差 -0.651041666667us

{
unsigned char a,b;
for(b=4;b>0;b--)

for(a=113;a>0;a--);
}

2、延时
10MS:

(1)汇编语言:
DELAY10MS: ;误差 -0.000000000002us
MOV R6,#97H

DL0:
MOV R5,#1DH
DJNZ R5,$
DJNZ R6,DL0
RET

(2)C语言:
void delay10ms(void) //误差 -0.000000000002us

{
unsigned char a,b;
for(b=151;b>0;b--)

for(a=29;a>0;a--);
}

3、延时
100MS:

(1)汇编语言:
DELAY100MS: ;误差 -0.000000000021us
MOV R7,#23H
DL1:
MOV R6,#0AH

I


棋影淘宝店:https://www.wendangku.net/doc/9d15212100.html,QQ:149034219

DL0:
MOV R5,#82H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
RET

(2)C语言:
void delay100ms(void) //误差 -0.000000000021us

{
unsigned char a,b,c;
for(c=35;c>0;c--)

for(b=10;b>0;b--)
for(a=130;a>0;a--);
}

4、延时
1S:

(1)汇编语言:
DELAY1S: ;误差 -0.00000000024us
MOV R7,#5FH
DL1:
MOV R6,#1AH

DL0:
MOV R5,#0B9H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
RET

(2)C语言:
void delay1s(void) //误差 -0.00000000024us

{
unsigned char a,b,c;
for(c=95;c>0;c--)

for(b=26;b>0;b--)
for(a=185;a>0;a--);
}

5、延时
10S:

(1)汇编语言:
DELAY10S: ;误差 -0.000000003101us
MOV R7,#0B3H
DL1:
MOV R6,#83H

DL0:
MOV R5,#0C3H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
NOP

II


棋影淘宝店:https://www.wendangku.net/doc/9d15212100.html,QQ:149034219

RET

(2)C语言:
void delay10s(void) //误差 -0.000000003101us

{
unsigned char a,b,c;
for(c=179;c>0;c--)

for(b=131;b>0;b--)
for(a=195;a>0;a--);
_nop_(); //if Keil,require use intrins.h
}

6、延时
100S:

(1)汇编语言:
DELAY100S: ;误差 -0.000000016117us
MOV R4,#72H
DL2:
MOV R7,#0DDH
DL1:
MOV R6,#0D7H

DL0:
MOV R5,#07H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
DJNZ R4,DL2
NOP
RET

(2)C语言:
void delay100s(void) //误差 -0.000000016117us

{
unsigned char a,b,c,d;
for(d=114;d>0;d--)

for(c=221;c>0;c--)
for(b=215;b>0;b--)
for(a=7;a>0;a--);
_nop_(); //if Keil,require use intrins.h
}

二、晶振为
12MHz,12T

1、延时
1MS:

(1)汇编语言:
DELAY1MS: ;误差 0us
MOV R6,#0C7H

DL0:
MOV R5,#01H
DJNZ R5,$
DJNZ R6,DL0

III


棋影淘宝店:https://www.wendangku.net/doc/9d15212100.html,QQ:149034219

RET

(2)C语言:
void delay1ms(void) //误差 0us

{
unsigned char a,b;
for(b=199;b>0;b--)

for(a=1;a>0;a--);
}

2、延时
10MS:

(1)汇编语言:
DELAY10MS: ;误差 0us
MOV R7,#05H
DL1:
MOV R6,#04H

DL0:
MOV R5,#0F8H
DJNZ R5,$
D

JNZ R6,DL0
DJNZ R7,DL1
RET

(2)C语言:
void delay10ms(void) //误差 0us

{
unsigned char a,b,c;
for(c=5;c>0;c--)

for(b=4;b>0;b--)
for(a=248;a>0;a--);
}

3、延时
100MS:

(1)汇编语言:
DELAY100MS: ;误差 0us
MOV R7,#07H
DL1:
MOV R6,#4AH

DL0:
MOV R5,#5FH
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
RET

(2)C语言:
void delay100ms(void) //误差 0us

{
unsigned char a,b,c;
for(c=7;c>0;c--)

for(b=74;b>0;b--)

IV


棋影淘宝店:https://www.wendangku.net/doc/9d15212100.html,QQ:149034219

for(a=95;a>0;a--);
}

4、延时
1S:

(1)汇编语言:
DELAY1S: ;误差 0us
MOV R7,#2EH
DL1:
MOV R6,#98H

DL0:
MOV R5,#46H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
NOP
RET

(2)C语言:
void delay1s(void) //误差 0us

{
unsigned char a,b,c;
for(c=46;c>0;c--)

for(b=152;b>0;b--)
for(a=70;a>0;a--);
_nop_(); //if Keil,require use intrins.h
}

5、延时
10S:

(1)汇编语言:
DELAY10S: ;误差 0us
MOV R7,#0BDH
DL1:
MOV R6,#0BFH

DL0:
MOV R5,#89H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
MOV R5,#02H
DJNZ R5,$
RET

(2)C语言:
void delay10s(void) //误差 0us

{
unsigned char a,b,c,n;
for(c=189;c>0;c--)

for(b=191;b>0;b--)
for(a=137;a>0;a--);
for(n=2;n>0;n--);

V


棋影淘宝店:https://www.wendangku.net/doc/9d15212100.html,QQ:149034219

}

6、延时
100S:

(1)汇编语言:
DELAY100S: ;误差 0us
MOV R4,#1EH
DL2:
MOV R7,#0E7H
DL1:
MOV R6,#0E5H

DL0:
MOV R5,#1EH
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
DJNZ R4,DL2
MOV R5,#02H
DJNZ R5,$
RET

(2)C语言:
void delay100s(void) //误差 0us

{
unsigned char a,b,c,d,n;
for(d=30;d>0;d--)

for(c=231;c>0;c--)
for(b=229;b>0;b--)
for(a=30;a>0;a--);
for(n=2;n>0;n--);
}

VI



相关文档
相关文档 最新文档