是否有可能为将精确到小于100微秒的Windows CE的时间量睡觉?抖动越少越好 - 。理想地,我们希望单个数字微秒的响应时间

我们真正需要的是一个5ms的计时器具有非常低的抖动 - 尽管Windows CE WaitFor的[单|多]对象和睡眠的API以毫秒为单位工作,我们不能那么对于亚毫秒的时间我们正确的代码可能需要运行,如此循环将逐渐漂移。

如果这是不可能的,这些信息将是非常有益了。

有帮助吗?

解决方案

这MSDN文章有一些代码来设置一个500US在WinCE的定时器中断,所以它是完全可能的。

如果您没有锁定到您的WinCE的版本,你可能想看看 Tenasys ,谁声称在标准硬件上提供一个RTOS行进侧由端与Windows。

我也听说过 QNX 好东西,但我没有用他们的产品无论是。我不相信这是在任何Windows兼容的,但是。

其他提示

这是不可能的。它甚至不是在桌面上成为可能。典型的操作系统简单地不以这种方式起作用。

如果你需要的是精确的东西火,每4毫秒或任何你的运气了。如果你真正需要的是什么火精确250倍,每秒可能更可行。如果您有需要,后者是我可以建议的方法。

如果您需要睡不电池/线程收益问题,只是一个准确的时机问题,你可以使用Windows CE设备“的PerformanceCounter”。上的XScale和高通的CPU,这是内部芯片定时器,并且具有子1毫秒粒度。在较旧的OMAP和三星处理器,所述的PerformanceCounter API是经过1ms的系统蜱和拥有大量抖动。

L.B。

要纠正抖动需要访问一个高分辨率定时器。 你的CPU可能有一个。如果不是,则中断控制器可以

最简单的方法就是自己的方式来使用的Linux具有实时和酒进入该库。 你想有一个周期性主题。

看一看从NIST这个报告在

scroll top