|
我将VISA写入函数设置为异步 I/O模式。为什么我会在NI I/O Trace中看到下面所示的viWaitOnEvent函数的超时错误?
当执行VISA 写入函数的时候,会依次发生下面的事情:
伴随着VISA写入函数的执行,你可以选择以同步模式运行还是异步模式运行。在同步模式下,调用的线程会在第四步结束后解锁,这时已经完成了数据到底层硬件的写入。在异步模式下,调用的线程会在第二步结束的时候被释放。这个时候已经完成了数据从开发系统到VISA驱动的写入。
由于在异步模式下,调用线程会被释放以执行其他的程序,用于轮询以查看程序是否执行完毕的viWaitOnEvent 函数会在结束前出现超时的错误。这个超时错误会在NI I/O Trace中出现。这个超时错误并不会影响您的LabVIWE程序的执行。但是这也是一个值得关注的问题。
为了避免这样的问题,您可以按照下面的方式进行设定。右键点击VI,依次选择Synchronous I/O Mode » Synchronous 。
对于更多的信息,请参考名为《异步与同步模式下VISA读写函数的影响》的知识库。
为了在NI I/O Trace中查看到这个信息,您可以依次点击Tools -> Options,在View Slection标签中,取消LabVIEW的复选框来禁用掉LabVIEW API。
|