05-22-2008 04:32 PM
05-23-2008 05:26 PM
05-27-2008 08:15 AM
05-27-2008 01:24 PM
05-27-2008 02:34 PM
05-27-2008 05:40 PM
Hi John,
How are your two processes synched up? I still don’t understand why it would be a problem to buffer your acquisition and have it read from your second process at 1 kHz. It seems that this threshold you’re reaching is not as simple as a limitation of the DAQmx driver. I tried an example program using the same callback function on my machine, and I did not receive the error when acquiring at 1 kHz. However, when increasing the sample rate to 5 kHz, I received the error after a few seconds. At some point, the CPU cannot process the callback function and DAQmx Read fast enough to keep up with the acquisition (thus data is being overwritten). You could try decreasing your sample rate if you absolutely need to fire the callback function at every sample acquired. However, this is an inefficient use of the DAQmx driver. I would strongly suggest to take advantage of the built in hardware buffering included in the DAQmx driver.
05-28-2008 08:11 AM
05-29-2008 05:59 PM - edited 05-29-2008 06:03 PM
06-06-2008 12:06 PM
06-11-2008 11:24 AM
Hi John,
I’ve modified the Cont Acq-Int Clk.c example to use hardware timed single point. I was able to run this program at 40 kHz before receiving errors. Take a look at the attached code.