Chapter 4 Analog Input
NI 6232/6233 User Manual 4-10 ni.com
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
(ai/SampleClock) controls the rate of the acquisition. This signal can be
generated internally on your device 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 can be buffered or non-buffered. A buffer is a
temporary storage in computer memory for to-be-generated samples.

Buffered

In a buffered acquisition, data is moved from the onboard FIFO memory of
a DAQ device to a PC buffer using DMA or interrupts 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 acquisition refers to the acquisition of a specific,
predetermined number of data samples. When the specified number of
samples has been written out, the generation stops. If you use a reference
trigger, you must use finite sample mode.
Continuous acquisition refers to the acquisition of 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. Continuous
acquisition is also referred to as double-buffered or circular-buffered
acquisition.
If data cannot be transferred across the bus fast enough, the FIFO will
become full. New acquisitions will overwrite data in the FIFO before it can