Why Do I Get Error -10920 When Doing Buffered Counter Operations?
Hardware: Counter/Timers (TIO)
Problem: I'm doing buffered period measurements with a Pentium III computer, but I constantly get error -10920 telling me that some samples could not be read due to speed limitations of my computer. Why do I get this error, even with a low frequency signal, and how can I avoid this error?
Solution: Error -10920 is generated when some samples are lost due to speed limitations of the system. This means that the data acquisition (DAQ) board was generating more samples than the computer could read. Potential reasons for these problems could be noise in the signal, incorrect board configuration or a slow system. Here is a brief explanation of each case.
- Noise in The Signal: Digital signals can also be affected by noise. If there is a glitch in the signal that can be detected by the DAQ board, this will be counted as a pulse, usually generating millions of pulses per second causing samples to be lost. Usually this problem can be identified by looking at the first counts that the board delivers. If these counts are very small, then the DAQ board is counting unwanted glitches. To reduce the noise in the line use a shielded cable, an analog low pass filter, or a digital filter on the counter, if available.
- Incorrect Board Configuration:
Another possible reason for this problem is an incorrect configuration on the DAQ board. The card may not be using DMA transfers to put data into the computer. To make sure that DMA transfers are used, it is necessary to call the appropriate function to configure it. If you are using NI-DAQmx, you can use the DAQmx Channel Property Node to change the data transfer mechanism. You can reference Knowledge Base 34FGAFVM: How do I Configure the Data Transfer Mechanism (Interrupt or DMA) in DAQmx and Traditional DAQ? to configure the operation to use DMA channels.
- System Not Fast Enough: It could be that the computer is not fast enough to read the data coming from the DAQ board. This could happen if the PCI/ISA bus is busy with other hardware or the operating system is busy with other tasks. To solve this, close other applications that are running and limit access to other hardware on the same bus.
For more information on how to improve performance of counters please follow the links below.
Related Links: Knowledge Base 34FGAFVM: How do I Configure the Data Transfer Mechanism (Interrupt or DMA) in DAQmx and Traditional DAQ?
KnowledgeBase 27RCTJEV: DMA Performance Improvements for TIO-based Devices.
KnowledgeBase 2JCD04EW: How are Buffers Read in Finite vs. Continuous Buffer Mode for Counter Operations?
Knowledge Base 1I8A1NYJ: I Get Error -10920 When Counting Square Waves without an Adequate Rise Time
Attachments:
Report Date: 01/15/1997
Last Updated: 09/28/2006
Document ID: 0TE9GNU3