02-06-2013 01:29 PM
daq analog input, what is polling rate from "locked buffer" ?
As you know, when daq analog input configured, data is transferred with dma technology and then reads by the analog read vi. But how often analog read polls locked buffer wheather data is ready or not?
02-07-2013 06:49 PM
Hi Mavi,
I just want to clarify your question. Are you wondering, when the Read VI is called, how often the Read VI will check the buffer to see if there is data to be read? If that is the case, I believe the Read VI will just wait and check the buffer until the timeout has elapsed. Is this information important to know for your application?
02-13-2013 11:19 AM - edited 02-13-2013 11:26 AM
Thank for your reply,
This information is important for my application. With serial communication, as you know it is checked with bytes at port vi, and then read. In analog acquisition, could it be read after an interrupt from DAQ module ?
02-14-2013 02:21 PM
Hi Mavi,
You can configure a DAQ channel to use interrupts as the data transfer mechanism according to this KnowledgeBase article. There are also DAQmx property nodes that can be used to check the number of samples on the buffer. Is this helpful? Maybe I'm still misunderstanding you.
02-15-2013 06:53 AM
Thanks for you interrest.
I think, this mechanism is for transferring the data from internal device buffer to "locked buffer" (DMA's reserved buffers on the host ). For example, i want to read 100 Analog input from the "locked buffer" to Labview's buffer. How(When) is it detected. Is it detected by an interrupt or polled to check?
In serial communication, bytes at port vi polls the locked buffer to check is it ready to transfer (Transfer from locked buffer to labview's buffer).
02-18-2013 05:24 PM
Hi Mavi,
Each time the DAQmx Read VI is called, it checks the buffer for the number of samples it was instructed to read. If you set up your Read VI to read 100 samples, it will check the buffer when it is called for those 100 samples. If less than the specified number of samples is available, it will wait for the timeout period you've specified, and after the timeout period, it will produce an error telling you that it was unable to read the specified number of samples.
I also found this property node that allows you to set the way that the Read VI checks the buffer. This should allow you to set up a polling or interrupt based method. I hope this helps!