C语言5ms延时程序汇编,各种汇编延时程序大集合

本文整理了各种延时程序,包括C语言和汇编实现的精确延时计算公式,适用于不同时间精度需求,如5毫秒、10毫秒、0.1秒等,基于12MHz晶振的1秒延时子程序,以及适用于不同频率晶振的延时程序。
摘要由CSDN通过智能技术生成

在论坛上看到不少不错的延时程序,整理如下共同分享:

本文引用地址:http://www.eepw.com.cn/article/201611/321248.htm

精确延时计算公式:

延时时间=[(2*第一层循环+3)*第二层循环+3]*第三层循环+5

;延时5秒左右

DELAY5S:PUSH 04H

PUSH 05H

PUSH 06H

MOV R4,#50

DELAY5S_0:MOV R5,#200

DELAY5S_1:MOV R6,#245

DJNZ R6,$

DJNZ R5,DELAY5S_1

DJNZ R4,DELAY5S_0

POP 06H

POP 05H

POP 04H

RET

;513微秒延时程序

DELAY: MOV R2,#0FEH

DELAY1: DJNZ R2,DELAY1

RET

;10毫秒延时程序

DL10MS: MOV R3,#14H

DL10MS1:LCALL DELAY

DJNZ R3,DL10MS1

RET

;0.1s延时程序12mhz

DELAY: MOV R6,#250

DL1: MOV R7,#200

DL2: DJNZ R6,DL2

DJNZ R7,DL1

RET

;延时1046549微秒(12mhz)

;具体的计算公式是:

;((((r7*2+1)+2)*r6+1)+2)*r5+1+4 = ((r7*2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值