Measurement Studio for VC++

cancel
Showing results for 
Search instead for 
Did you mean: 

I'm using PCI-DIO-32HS card in Pattern Generation mode and Double-Buffering

I'm using PCI-DIO-32HS card in Pattern Generation mode and Double-Buffering I/O with external REQ and ACK Trigger to read continous digital data on group 1
(Port A and B). After setup as usual, DIG_Block_In is called to start reading and it takes around 1 min to return my application if I pass it large buffer(2Mb). Please help. Thanks in advance. OS: W2k with 512Mb RAM
and NIDAQ V6.9.2
0 Kudos
Message 1 of 3
(3,094 Views)
What is your external clock rate that you are using? It is possible that it might take a minute if your clock is around 2 kHz ((2 Mb/16 bits)/60 = 2k). 2MB is a lot of data. Have you tried to change the REQ to the internal clock, just to see how fast the program runs with out the external clock.

Also, if you are trying to display all of the data at the same time it can cause problems. In many cases the input or writing to a file takes the most time.

I would even recommend trying the shipping examples and modify them to read a 2Mb to see how long they take. My computer can read 1M samples at 100 kHz in about a 10 second using the DIdoubleBufPatternGen653x.c example.

I hope this helps.

Joshua
0 Kudos
Message 2 of 3
(3,094 Views)
Ext. REQ clock rate is about 2MHz.

But the main thing is without these ext. signals, it is still taking a min to return. That means App starts and waits for ACK signal to trigger reading and REQ signal for data latching in.

Neither display or writing to a file I/O are performed in my App. I will try that example to see how this NI card works with different internal clock settings and buffer sizes. Let you guy know later.

Thanks for your answer and fast response.

Rsp
0 Kudos
Message 3 of 3
(3,094 Views)