
#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)
使用cpu的rdtsc汇编指令:#include <stdio.h>
int get_rdtsc() ...{
return asm("rdtsc")
}
这个函数可以获得cpu的时间戳,分辨率当然是cpu的主频, 如果cpu频率高的话, 27MHz的定时误差应该不是很大。但是, 你要输出和处理这个时钟信号产生的延迟也不太好控制,毕竟不是实时系统。。。。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)