如下面的一段程序:
应用程序:
#include <syswait.h>
usleep(n) //n微秒
Sleep(n)//n毫秒
sleep(n)//n秒
驱动程序:
#include <linux/delay.h>
mdelay(n) //milliseconds 其实现
#ifdef notdef
#define mdelay(n) (\
{unsigned long msec=(n)while (msec--) udelay(1000)})
#else,linuxsleep函数不准就可以调整为正确的了。
0.5微秒的延迟相当于纳秒级的了,内核空间有提供纳秒级的延迟#include <linux/delay.h>
ndelay(int n) 延时n纳秒
但是时间应该是不准的。
较为准确的延迟可以用select,但也只是us级的。
struct timeval tv
tv.tv_sec=0
tv.tv_usec=iUsec //微秒
select(0,NULL,NULL,NULL,&tv)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)