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.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Digital waveform write to DAQ

HI Marius,

 

I have seperated the DAQ creation from DAQ write. On my system it takes about 7ms to write data ( Write a digital waveform with 4200 lines ( number of samples ) and write data to 16DAQ lines in parallel)

I still don't understand why it takes 7ms or even 2ms. I have 4200 samples and I write at 10MHz so it should take about 420us top write the data. Is there a difference between digital waveform and normal numeric array in terms of size?

 

Thanks

 

0 Kudos
Message 11 of 17
(603 Views)
Why don't you lookin at the output waveform with a scope? I'm certain that the actual time between samples will be exactly what you expect. The time to load the samples and start the task is NOT the same thing as your sample rate.
0 Kudos
Message 12 of 17
(600 Views)

Dennis

 

yes I measured it . It is exactly what I expected

 

I need to write multiple times. Is there anyway to load samples all at once ( maybe buffer them ) and then write multiple times? How much usually is the start time?

0 Kudos
Message 13 of 17
(595 Views)
How many samples? Are you using continuous generation?
0 Kudos
Message 14 of 17
(592 Views)

It is finite number of samples. Let's say I want to write 4200 samples 10 times .

Can I craete the task, set timing, buffer 42000 samples and then write 4200 samples 10 times and after each write I close the task

finally clear the task?

 

 

 

0 Kudos
Message 15 of 17
(587 Views)

I tried that actually. Not multiple times but just 1 time

 

It didn't help. I completely removed the timing VI+buffer the sample VI and just left DAQ start+write to DAQ+ stop DAQ

 

It still takes 7ms to complete and write 4200 samples 

 

 

0 Kudos
Message 16 of 17
(586 Views)
If you want to write without delay, I believe you need to use continuous update. You can terminate a loop after x iterations and you don't want to clear the task after each write.
0 Kudos
Message 17 of 17
(577 Views)