Hi Debora,
Mark is totally right,
niDMM_Read_Multipoint is a blocking function in that once it is called, the function will not return control to your program until it finishes executing. This is appropriate for many applications but in your case (as you have already seen) your program is "blocked" for 120 seconds until all your points are available.
So the niDMM_Read_Multipoint function initiates acquisition, waits until all data is acquired, returns the data to your program, and then returns control to your program. The
niDMM_Initiate and
niDMM_FetchMultiPoint functions give you some more flexibility with program control. You can "initiate" or start your data acquisition and then as your hardware is taking data your processor can perform other tasks.
Now the niDMM_Fetch_Multipoint is also a blocking function so it would not be advisable to call that function unless you knew that your data was ready (otherwise program control would be "blocked" until all your data was available and you might as well have called the niDMM_Read_Multipoint function). That is why Mark recommended that you also use
niDMM_ReadStatus to check how many points you have available and tell the Fetch function to just read that many points. There is a great CVI example called "
Cont Acq & Chart Multiple Samples.prj" that uses the same structure that Mark used in his second segment of code. This is a shipping example that should be stored in the following directory:
C:\Program Files\National Instruments\CVI80\samples\niDMM\Multi Point\Cont Acq & ChartNow as far as using two SCXI chassis in the same system, there should be absolutely no problem doing that. The SCXI-1600 has less accuracy than the 4060 and the SCXI-1102 offers signal conditioning benefits that the SCXI-1127 does not, but there will be no conflicts in using them in the same system. Please feel free to ask us any further questions that you might have as you develop this application.
Best Regards,
Jeff Tipps
Applications Engineer
National Instruments