03-16-2012 01:00 AM - edited 03-16-2012 01:05 AM
Using a USB-6343 for digital IO, I want to write a continuous stream of precisely timed digital data. The attached VI accomplishes this by writing a finite number of samples to the output. The loop monitors how many samples have been written.
The VI works fine, but the problem I am having is figuring out how to add more samples to the buffer before all the samples have been written. I need to be able to add more samples to the buffer at any time but without disturbing the timing of the samples that have yet to be written. Is this even possible? Any thoughts? Thanks for any help on this.
03-20-2012 04:59 PM
Hello Andy,
What you are trying to do seems achievable by setting the property of DAQmx Write "RegenMode" to "Do not Allow Regeneration". You can go to the LabVIEW Examples.
Hardware Input and Output >> DAQmx >> Digital Generation >> Cont Write Dig Port-Ext Clk-Non Regeneration.vi
Maybe this will help.
regards,
03-20-2012 05:07 PM
Hello Andy,
You may take a look into this community example, I think that using the non regeneration mode could be good approach, but the new data should be add before the buffer is empty, as show in the example or it will generate an error. Just change the timing options to adapt to your timing needs.
Continuous Write Digital Port - External Clock - Non Regeneration
Regards
Mart G.