在不使用板上序列重复发生的情况下,通过M系些数据采集设备实现连续的,相关的数字输出



主要软件:
主要软件版本: 7.5
主要软件修正版本: N/A
次要软件: N/A
硬件: Multifunction DAQ (MIO)>>M Series

问题: 我正在准备实现连续的,相关的数字输出。但是我得到了"Error -50400 occurred at DAQmx Start Task.vi."的提示。我应该如何连续地更新我的数字输出呢?

解答: 默认的话,板上的序列重复发生这个功能在M系列数据采集设备上是可用的。这意味着一个连续输出的任务会把缓冲区(buffer)里面的数据重复输出。如果数据随着写操作(write)更新,那么输出将会最终变化,但是不能保证这个变化何时会发生。把DAQmx Write RegenMode属性设置为“不允许重复产生”(Do Not Allow Regeneration)使数据只会被输出一次,而且新的数据在输出指针第二次到达缓冲区位置之前将会被写入缓冲区。这个对于数字波形输出来说是很有用的。

对于在DAQmx驱动(7.5)上实现这样的应用有个警告就是输出缓冲区的大小必须和板上的物理内存一样。对于M系列设备来说,DIO的FIFO大小是2046个采样点。如果缓冲区的大小比这个小的话, DAQmx Start Task.vi将会出现error 50400的错误,并且出现"The transfer did not complete within the timeout period or within the specified number of retries."的提示。附带例子描述了在一个while循环中创建缓冲区,开始任务和连续更新数据过程。

相关链接:

附件:


Cont Gen Dig Pattern-Ext Clk-Non Regeneration.vi


报告日期: 06/19/2006
最近更新: 07/10/2006
文档编号: 3OI9MBZA