自定义的一个delay函数,一般是延时用 void 代表函数没有返回值 unsigned int 是定义的time类型,为无符号整形16位。time就是自定义参数
大概是125*time*4个指令周期 在for语句里面每执行一次至少有一次比较(1周期),一次inc或dec(1周期),还有一次跳转之类的指令(1或2或3周期),各个编译器编译后也不全相同,你可看编译后的代码来估算好了。
这个其实就是让单片机一直在那里执行空指令,达到延时的效果。延时时间越长,越小的话,延时时间越短..为了防止出现意外,所以特意写成了uint ..也就是无符号的数,,防止给出的参数为负数的话,将会延时很久很久。
void Delay(unsigned int i); 函数名叫 Delay,它有一个形式参数i,参数类型是 无符号整型。无返回值。 这个函数应是自定义函数,不是标准c/c++的库函数。 顾名思义,它用于 延时,i 是时间,以毫秒计算。例如 Delay(1000); 就是停1秒钟。 它类似于 windows 里的 Sleep() 函数: #include #include int m...
这是一个延时程序,表示等待一段时间,具体时间由t的大小和单片机的频率有关系!
这void Delay(unsigned int )函数实际上是根据单片机工作频率进行空操作,来进行延时的方法。while (--t);这句是t先进行减一操作,然后进行条件判断,当t为真(t>0),则循环体内操作,进行空操作;当t为假(即=0),则跳出循环体,则退出函数。
定义一个函数 delay10ms 形参是无法好整型变量 望采纳哦
1.我夸张点说吧,如果执行一条语句i=0; cpu需要用时1s,那么你需要系统延时10s时,循环执行i = 0 10遍就可以了。你后面的代码自然就10s后再执行了。 CPU执行每个代码都是有耗时的只是很短。2.观察这个延时程序你可以发现,总循环次数是ms*110次,就像上面说的如果循环一次耗时1毫秒,如果你想...
C语言的函数 无返回值 参数 无符号整数