LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Can I take data simultaneously from a PCI-GPIB card and an IMAQ PCI-1409 card?

I have a PCI-GPIB card and an IMAQ PCI-1409 card in the same computer. The IMAQ card is triggered by an external trigger. I want to take data from both cards at the same time when the IMAQ card receives its trigger. This data needs to be taken in as close to real time as possible because each sample from the two is to be compared. I was thinking of some sort of threaded solution, in which I would read from both cards at the same time when I saw the trigger. Is what I want to do feasible? Could someone suggest a better solution to the problem? Thanks in advance to all that answer.
0 Kudos
Message 1 of 2
(2,646 Views)
GPIB doesn't have any hardware triggering so the closest you could get is by reading from GPIB in software when the hardware trigger is received from the IMAQ board. This will probably get you withing a few milliseconds, but not less than that. If that is good enough for your needs, then you would architect the program something like this. Create one thread (CmtScheduleThreadPoolFunction) and have it start by waiting for a ThreadLock that is held by the main thread or have it polling a flag. Then when you receive the trigger from IMAQ in the main thread, release the thread lock or set the flag which will allow your other thread to do the GPIB acquisition. The functions for creating and using thread locks are in the Utility library under Multithreading.


If a few milliseconds is NOT close enough for you, you will most likely have to find a way of hardware triggering your GPIB device.

Best Regards,

Chris Matthews
National Instruments
0 Kudos
Message 2 of 2
(2,646 Views)