51单片机延时程序时间是怎么计算的

如题所述

51单片机延时时间计算需要考虑以下两种因素:
1、指令执行时间
2、指令循环次数
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-11-06
计算延时时间应注意以下几点:1、晶振跑多少的,象这里的6M的话,那么它执行的机器周期就是2us,2、看指令执行要多少个机器周期,向DJNZ、RET都要两个机器周期,3、那么,这里总共时间是26(1A)*255(0FF)*255(0FF)*2(机器周期)*2us(1个机器周期的时间)=6762600us
若要精确计算的话要加上上面赋值的时间和子程序返回的时间。不过一般只要计算到上面就行了,因为赋值和返回指令的时间很短(相对于整个延时程序来说)本回答被网友采纳

51单片机延时程序时间是怎么计算的
51单片机延时时间计算需要考虑以下两种因素:1、指令执行时间 2、指令循环次数

单片机延时程序的延时时间怎么算的?
单片机的延时程序通过执行指令来达到延时效果,这个时间等于执行的指令需要的时间,而一个指令需要的时间叫做指令周期,这个时间等于若干个机器周期。

51单片机使用汇编语言循环延迟时间怎么算?
第一步:在延时程序没行后边标注该指令执行的机器周期第二步:在机器周期后边乘以该指令循环的次数第三步:计算总共用的机器周期数第四步:计算总延时时间。 本回答由网友推荐 举报| 答案纠错 | 评论(4) 10 1 zhxiufan | 高级工程师 向TA咨询 擅长: IT 其他回答 ;===<延时子程序>===882usDELAY882: ;1...

51单片机用c语言怎么写延时函数?
延时时间的计算与单片机的晶振频率有关。若晶振频率为12Mhz,那么单片机每震动一次所需要的时间是1\/12M s。那么再来看看单片机执行一次自减所需要的振动次数是96次,假如我们对时间要求不是特别精确的话,可以约等于100来计算。现在通过上面两个数据可以得出:单片机每执行一次自减所需要的时间是1\/12M *10...

51单片机怎样计时
首先,51单片机是加一计数,到65536溢出,所以定时时间(经过的脉冲个数,如果一个脉冲是1us,刚好延时50ms是50000个脉冲)是65536减初值 ,初值又分高8位和低8 位,高8位的1代表256,因此高8位的数值所代表的数是256的整数倍,低位最大不超过255,所以一定是除以256之后的余数,用公式是这样:初值...

51单片机12HZ的,怎么计算延时时间?
2 * 248 = 496 T DJNZ R1,F (2 + 496 + 1) * 60 = 29940T RET 2 + 29940 + 1 = 29943T 总共是: 29943T。如果是 12MHz,时间就是:29943us。另外,执行这个程序,还需要一条 CALL 指令,应该再加上 2T。--怎么样实现5S的延时?慢慢算呗。

...能有详细解释的。因为我还不知道这个延时的时间是怎么算_百度...
第一种的算法是 晶振的周期T1=1\/f; 这里f=6MHz 所以T1=1\/6 us;(微秒)单片机花12个T1去执行一个指令,所以一个机器周期等于12个晶振周期,T2=12*T1=2us 10ms=1000 0us 所以你要得到10ms的延时就要想办法让机器去做5000条“无聊的指令”所以 DEL: MOV R5,#05H F1: MOV R6,#05H...

在51单片机中_nop_()延时多长时间?
_nop_()要延时1个指令周期。1、时钟周期=振荡周期,名称不同而已,都是等于单片机晶振频率的倒数,如常见的外接12M晶振,那它的时钟周期=1\/12M。2、机器周期,8051系列单片机的机器周期=12*时钟周期,之所以这样分是因为单个时钟周期根本干不了一件完整的事情(如取指令、写寄存器、读寄存器等),而12...

单片机方面的知识
定时器延时的时间计算方式是TH0和TL0的常数乘以机器时钟周期。这边的TH0是高8位,TL0是低8位,组成一个16位的常数。一般51单片机是累加定时器,也就是说当计数器达到65536(0xFFFF)的时候,定时器会产生溢出中断,你的语句中,计时常数是10000,也就是说计数器会从55536开始计数到达65536就会溢出,...

51单片机怎么延时程序
几个精确延时程序:在精确延时的计算当中,最容易让人忽略的是计算循环外的那部分延时,在对时间要求不高的场合,这部分对程序不会造成影响。500ms延时子程序程序:(晶振12MHz,一个机器周期1us。)void delay500ms(void){ unsigned char i,j,k;for(i=15;i>0;i--)for(j=202;j>0;j--)for(...

相似回答