谢谢高手指点!
【问】
1、delay(unsigned int x)
{ while(x--);}
以及
2、delay(unsigned int x)
{for (i=0,i<x;i++);}
这两个时间函数,他们所延迟的时间分别是X的多少倍?怎么结算的!
谢谢高手指点!
函数2中的I是定义的全局变量!单片机的晶振为12M。
【答】
C语言的执行时间,从来就没有计算公式。
C程序的执行时间,和操作系统有很大的关系,和编译软件也有关,在单片机中,更和变量的存储类型有关(如单字节变量、两字节变量)。
因为有如此多的不确定因素,所以,从来就没有办法计算C的执行时间。
只是可以在仿真调试的时候,进行实际测量,得到一些(难以通用的)经验数据。
楼主要想准确的控制时间,应该研究使用汇编语言,或者使用硬件定时器。
C语言,只能干些粗活。