10-28-2009 01:14 PM
I use PCIe-6251 to acquire 16-channel data. The acquisition need to be retriggerable. I use counter0 to generate finite pulse train, and the analog input use this pulse train as external clock. The counter0 is retriggered by my external trigger signal. In this way, I can get retriggerable data acquisition. But I have a few questions about my LabView code.
1. PCIe-6251 only has one A/D converter and use Mux to switch between channels. In my application, for each trigger, I need to get 10 samples from each of these 16 channels. So how many pulses I need to generate from Counter0? 10 pulses or 160 pulses?
2. The counter generates pulses at 1MHz. Should I have to set the data acquisition at the same rate? If I set the data acquisition at much lower rate, for example 1KHz, what is the time interval between two samples I get? 1us or 1000us?
3. I want to have highest sampling rate. The manual says the maximum sampling rate for multiple channel acquistion is 1MSamples/s. But I can only get about 150KHz, looks like equals to 1MHz/16. How can I get 1MHz sampling rate?
Thank you,
YPan
10-29-2009 01:46 PM
YPan,
To answer your questions:
1. If you are using the finite pulse train as the sample clock, then each edge of this will cause one sample to be taken from each channel. So, you will need 10 pulses. (There is a separate clock called the AI Convert Clock, which determines how fast the mux switches through the channels, and the driver will take care of this.)
2. You should set the sample clock rate to the same value and the counter output rate.
3. The 1 MHz rate is aggregate, so you are correct to say that this will be divided by the number of channels to get the sampling rate for each channel.
Let me know if you have further questions,
-Christina