在LabVIEW的RT中,"Get Date/Time in Seconds"函数返回的时间落后于实际的时间。



主要软件: LabVIEW Modules>>LabVIEW Real-Time Module
主要软件版本: 7.1
主要软件修正版本: 8.0
次要软件: N/A

问题: 在使用LabVIEW RT 7.1.1或者以前的版本时,'Get Date/Time in Seconds' 函数返回的时间落后于实际的时间。

解答: 'Format Date/Time String', 和 'Get Date/Time String' 函数也有类似的情况。问题在于当实时操作系统运行实时优先级的代码时,实时操作系统将会忽略book-keeping的线程,而对实时操作系统(或者任何的类似操作系统)而言,保持系统时间就是属于book-keeping的任务之一。在LabVIEW RT中,这是通过中断服务请求的方式实现的,而这在实时操作系统运行实时优先级的代码时,就会被忽略。这也是实时操作系统之所以能具有确定性和可靠性的原因。

从LabVIEW 8.0开始,采用了一种新的时钟源,从而避免了这种情况。此外,这种时钟源给定时循环提供了真正的毫秒级时钟源,因此,使用 'Get Date/Time in Seconds' 函数就可以得到实际的时间。

相关链接:

附件:





报告日期: 11/15/2006
最近更新: 11/21/2006
文档编号: 25OBHC4U