Analog Input Data Acquisition Methods

When performing analog input measurements, you either can perform software-timed or hardware-timed acquisitions.

Software-Timed Acquisitions

With a software-timed acquisition, software controls the rate of the acquisition.

Software sends a separate command to the hardware to initiate each ADC conversion. In NI-DAQmx, software-timed acquisitions are referred to as having on-demand timing. Software-timed acquisitions are also referred to as immediate or static acquisitions and are typically used for reading a single sample of data.

Hardware-Timed Acquisitions

With hardware-timed acquisitions, a digital hardware signal controls the rate of the acquisition. This signal can be generated internally on the USB-6423 or provided externally.

Hardware-timed acquisitions have several advantages over software-timed acquisitions:

  • The time between samples can be much shorter.
  • The timing between samples is deterministic.
  • Hardware-timed acquisitions can use hardware triggering.

Hardware-timed operations are buffered. In a buffered acquisition, data is moved efficiently from the onboard FIFO memory of the USB-6423 to a PC buffer using USB signal streaming before it is transferred to application memory. Buffered acquisitions typically allow for much faster transfer rates than non-buffered acquisitions because data is moved in large blocks, rather than one point at a time.

One property of buffered I/O operations is the sample mode. The sample mode can be either finite or continuous.

  • Finite sample mode—Acquires a specific, predetermined number of data samples. After the specified number of samples has been read in, the acquisition stops. If you use a reference trigger, you must use finite sample mode.
  • Continuous sample mode—Acquires an unspecified number of samples. Instead of acquiring a set number of data samples and stopping, a continuous acquisition continues until you stop the operation.
  • If data cannot be transferred across the bus fast enough, or if the user program does not read data out of the PC buffer fast enough to keep up with the data transfer, the buffer could reach an overflow condition, causing an error to be generated.

    Note The USB-6423 does not support hardware-timed single-point mode.