51单片机延时0.5s和20ms的程序(汇编) 12M晶振
答案:3 悬赏:80 手机版
解决时间 2021-11-09 22:51
- 提问者网友:两耳就是菩提
- 2021-11-09 19:46
51单片机延时0.5s和20ms的程序(汇编) 12M晶振
最佳答案
- 五星知识达人网友:梦中风几里
- 2021-11-09 21:17
LCALL DELAY_20MS ;包括lcall和返回一共20ms,误差0us
DELAY_20MS: ;60H,61H,62H
MOV 62H,#26
MOV 61H,#5
MOV 60H,#74
DJNZ 60H,$
NOP
DJNZ 61H,$-7
DJNZ 62H,$-13
RET
;------------------------------------------------
LCALL DELAY_500MS ;包括lcall和返回一共0.5s,误差0us
DELAY_500MS: ;60H,61H,62H
MOV 62H,#10
MOV 61H,#102
MOV 60H,#243
DJNZ 60H,$
DJNZ 61H,$-6
DJNZ 62H,$-12
MOV 62H,#76
DJNZ 62H,$
RET
DELAY_20MS: ;60H,61H,62H
MOV 62H,#26
MOV 61H,#5
MOV 60H,#74
DJNZ 60H,$
NOP
DJNZ 61H,$-7
DJNZ 62H,$-13
RET
;------------------------------------------------
LCALL DELAY_500MS ;包括lcall和返回一共0.5s,误差0us
DELAY_500MS: ;60H,61H,62H
MOV 62H,#10
MOV 61H,#102
MOV 60H,#243
DJNZ 60H,$
DJNZ 61H,$-6
DJNZ 62H,$-12
MOV 62H,#76
DJNZ 62H,$
RET
全部回答
- 1楼网友:鱼芗
- 2021-11-09 22:42
0.5s
void delay(void) //误差 0us
{
unsigned char a,b,c;
for(c=23;c>0;c--)
for(b=152;b>0;b--)
for(a=70;a>0;a--);
}
20ms
void delay(void) //误差 0us
{
unsigned char a,b;
for(b=215;b>0;b--)
for(a=45;a>0;a--);
_nop_; //if Keil,require use intrins.h
_nop_; //if Keil,require use intrins.h
}
void delay(void) //误差 0us
{
unsigned char a,b,c;
for(c=23;c>0;c--)
for(b=152;b>0;b--)
for(a=70;a>0;a--);
}
20ms
void delay(void) //误差 0us
{
unsigned char a,b;
for(b=215;b>0;b--)
for(a=45;a>0;a--);
_nop_; //if Keil,require use intrins.h
_nop_; //if Keil,require use intrins.h
}
- 2楼网友:笑迎怀羞
- 2021-11-09 21:54
qq邮箱 我发给你 好几种延时的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯