Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

USB-6343 hardware timed digital output: how to add samples on the fly?

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.

0 Kudos
Message 1 of 3
(5,623 Views)

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,

Miriam
Field Applications Engineer
NI Colombia
CLD
0 Kudos
Message 2 of 3
(5,589 Views)

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.

 

0 Kudos
Message 3 of 3
(5,588 Views)