From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



当我停止程序之后我的计数器会继续输出脉冲么?



主要软件:
主要软件版本: 7.0
主要软件修正版本: N/A
次要软件: N/A

问题: 当我停止我的应用程序后,脉冲序列会停止发送么?DAQmx和传统DAQ两种驱动在清除计数器输出的时候是如何处理脉冲序列的?有什么差别么?

解答:

根据您使用来控制计数器的驱动的不同,可能存在以下几种情况:

  1. 您可以使用DAQmx Stop Task来停止您的计数器的任务。在这种情况下,当数据流到达DAQmx Stop Task的时候,您的计数器的将会停止脉冲序列的输出。然而您的计数器的参数不会从计数器的寄存器中清除掉。也就是说,在下一次启动您的脉冲序列的时候,您不需要重新进行配置。您可以直接采用DAQmx Start Task来重新启动您的脉冲序列。

  2. 您采用了DAQmx Clear Task来停止了您的计数器任务。
    在这种情况下,数据流经过DAQmx Clear Task的时候,您的计数器将会停止脉冲序列的输出并且您的计数器将会被重置。
  3. 在LabVIEW中,您可以使用中止运行按钮来强制停止您的程序。在这种情况下,LabVIEW自动的清除了您的计数器的任务并且停止了您的脉冲输出。

  4. 您定义了一个计数器的任务,关闭了自动清除功能(Auto Cleanup),并且没有停止/清除任务。在这种情况下,计数器的资源会一直被保留到定义好的任务被停止或者清除。因此,脉冲将会一直输出。请注意,您需要定义好这个计数器的任务,因为您最后还是需要将它停止。并且,任务的自动清除属性必须要被设置为假。在这篇文章的最后附上了这种应用的一个范例。.

传统DAQ
有两种不同的情况决定脉冲序列是否能够持续产生:

  1. 您的计数器任务停止的时候Counter Control VI被设置成Reset。在这种情况下,当数据流经过Counter Control VI的时候,您的计数器将停止输出脉冲序列并且您的计数器将被重置。

  2. 您点击了中止运行按钮来停止您的LabVIEW程序。在这种情况下,LabVIEW不会停止您的计数器任务。您的LabVIEW程序将会停止,但是您的DAQ设备将会继续产生脉冲序列。在这种情况下,若您想要使用这个计数器而没有正确的重设您的计数器或者板卡的话就很容易发生计数器被占用的错误。 


相关链接:

附件:


DAQmx Scenario 4 Counter Example.llb - DAQmx Scenario 4 Counter Example.llb



报告日期: 05/08/2003
最近更新: 01/08/2008
文档编号: 2X7BQA6I