延时程序耗费时间的精确算法
时间:02-01 16:25 阅读:996次
*温馨提示:点击图片可以放大观看高清大图
简介:软件延时的基本方法是调用延时子程序。下图给出了一个计算耗费时间的例子。
软件延时的基本方法是调用延时子程序。
延时子程序所耗费的时间,很多人都是粗略的计算,这对于延时时间要求不高的情况下,还是适用的。
但是有时候,延时的时间要求比较精确,这就需要进行仔细的计算。计算耗费时间,不仅要计算子程序本身的,还要包括上主程序的调用指令。
下图给出了一个计算耗费时间的例子。
上述程序,共有三重循环。
其中红线框内的部分,共循环了215遍,每一遍只有一条2T的指令,所以耗用时间为430T。
兰线框内,共循环了128遍,每一遍的时间为:1+1+430+2,共用了55552T。
黑线框内,耗用时间的算法,和上面的计算方法相同,共用了499995T。
最后加上循环外边的指令,以及调用指令的时间,共用500 000T。
T的时间,取决于系统的晶振频率,在12MHz的条件下,延时时间为500 000us,即500ms。