如何在eCos OS中以微秒精度获得当前系统时间?

时间:2017-01-05 07:28:19

标签: c operating-system real-time embedded-linux ecos

我知道默认的eCos精度是1 ticks = 10 ms

eCos OS提供cyg_current_time();

我可以使用cyg_current_time除以tick_per_one_ms来获取SystemTime_MS;

(例如)GetSystemTime = cyg_current_time() / 10;

如何以精确的方式获得系统时间?

我想为我们精确计算一个时间间隔。

例如(想知道A()花费多少时间):

startTime = GetSystemTimeUS();
A();
endTime = GetSystemTimeUS();

printf("A() cost %lu us.",endTime - startTime);

我尝试了很多方法,但它没有用。

  1. gettimeofday:eCos实现的接缝,但仍然精确。
  2. 得到勾号:但是1个刻度是10毫秒。这意味着上下文切换时间是ms精度。
  3. 计时器,时钟等....
  4. 我的意思是我想用精确的方式实现get Current System时间函数。

0 个答案:

没有答案
相关问题