#include<stdio.h>
void main()
{
clock_t start,finish
double durtion=0
printf("计时开始\n")
start=clock()
while(1-durtion>0.00001)
{
finish=clock()
durtion=(double)(finish-start)
}
printf("1ms计时完毕\n")
}
原理:两个时间差值是1ms就立即跳出while循环,C语言中时间分度值是ms
这个程序应该是板子上延时的程序。a就是需要延迟的毫秒数(也可能是其他单位)。
就是说,执行 for(i=0i<600i++)的时间应该是一个单位长度(可能为1ms);
这样,你在调用的时候,赋值给a多少值,实际就是延时多少毫秒。
例如,延时10ms,就用
delay(10)
延时1ms,就用
delay(1)
void delay(uint n){
uint i,j
for(i=ni>0i--)
{
for(j=110j>0j--)
}
}
当n=1是延时大约是1ms,就是说n等于都少就延时多少ms,当然n的值不超过uint的最大值。
头文件下请定义宏
#define uchar unsigned char
#define uint unsigned int
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)