|
为了让您能够在波形输出的同时程序地更改DAQ设备输出的波形,您需要设置您设备的regeneration mode属性。为Do Not Allow Regeneration。这时通过 DAQmx Write 属性节点完成的。 设置这个属性为 Do Not Allow Regeneration 强制板卡的板载FIFO在输出旧的数据的同时向PC机的缓存请求新的数据。
当 regeneration mode 被禁止了,您需要在循环当中放置一个 DAQmxWrite VI 来持续更新缓存。
注意: 为了这个属性能够正常工作,您必须在开始一个AO任务(Start Task.vi)之前下载一个波形。(Analog Write.vi)。
当您设置这个属性为Do Not Allow Regeneration 您也可以配置Data Transfer Request Condition 属性。这个属性可以在 DAQmx Channel 属性节点中的 Analog Output » General Properties » Advanced » Data Transfer and Memory » Data Transfer Request Condition中找到。设置这个属性决定改变的波形经过多久时间能够出现在输出端。下面描述了这个属性节点能够设置的三个不同值。
Onboard Memory Less than Full
当 Regeneration Mode 设置为 Onboard Memory Less than Full,每次板卡板载FIFO不是满的,板卡就会请求新的数据。这意味着如果您要改变波形的输出,这种改变需要几秒钟的时间才能反映到输出端,因为新的波形数据需要传过整个板载的FIFO。用这个设置,板载FIFO总是保持满载。
Onboard Memory Empty
当这个属性被设置为 Onboard Memory Empty,板卡会在板载FIFO为空的时候请求新的数据。这意味着当您需要改变波形输出,新波形能够马上在输出端被观察到。由于新的数据传送过去的时候板载的FIFO几乎是空的了,新数据在输出前不需要经过整个FIFO。新的数据在到达DAQ板卡的时候已经在FIFO的末端,能够立即出现在输出端。
Onboard Memory Half Full or Less
当使用 Onboard Memory Half Full or Less,您需要设置您的缓存大小不小于您设备的板载FIFO。设置这个属性意味着您的板卡正在使用其FIFO中的很小一部分。所以您可以设置更小的缓存大小。建议您先设置缓存大小为500,然后增加或者减少这个数字以达到最佳的性能。
|