If you have or can get the NI-DAQmx 7.2 .NET API, there is an example included of how to synchronize multiple cards in VB .NET installed at Program Files\National Instruments\MeasurementStudio70\DotNET\Examples\DAQmx\Synchronization\Multi-Device\MultiDeviceSync_AISharedTimebaseAndTrig_DSA\Vb.
If you are using an older NI-DAQmx API such as the one that came with Measurement Studio 7.0, here is a summary of what you need to do:
(1) The board which will serve as the master for timing should be installed in slot 2 of your PXI system. This is the board that will be receiving the trigger, if any, to start your acquisition, and that will provide a clock and synchronization pulse to the other board.
(2) Create a master NationalInstruments.DAQmx.Task object, add t
he channels you wish to read on the master device to the Task, configure the Triggers and Timing that you want to share across both devices.
(3) Create one or more slave Task objects, add the channels you wish to read on the slave device to the slave Task. Configure the Timing on the slave Task(s) in the same way you did for the master.
(4) Configure a digital rising edge start trigger on the slave Task(s) to be the StartTrigger on the master device (if the master device is "Dev1", then the start trigger source should be "/Dev1/ai/StartTrigger").
(5) Set the Timing.SampleClockTimebaseSource property on the slave Task(s) to be (again assuming "Dev1" is the master device) "/Dev1/SampleClockTimebase".
(6) Set the Timing.SynchronizationPulseSource property on the slave Task(s) to be (if "Dev1" is the master) "/Dev1/SyncPulse".
(7) Start the slave Task(s) first.
(8) Start the master Task.
(9) Read the data from the Tasks as normal.
Let me know if you have any questi
ons about this.
Tony H.
Measurement Studio