Measurement Computing Data Acquisition Systems rev.10.4 User Manual
Page 120

DatmUpdateSingle
– This value specifies the update mode as a single sample. This setting allows the
acquisition transfer buffer to be updated for each sample collected during the acquisition. Compared to the
block mode, this setting provides a higher degree of real-time transfer buffer updating at the expense of slower
aggregate data throughput rates.
DatmUpdateBlock(default)
– This value specifies the update mode as block. This mode allows the
acquisition transfer buffer to be updated in blocks of acquired data. The size of the data block depends upon
the product in use (see the table below). The block update setting allows faster transfer rates than
DatmUpdateSingle
mode and therefore should be used when aggregate throughput performance is
paramount.
Product
Block Size
DaqBooks
2048 Samples (older versions of these products had a block size of 256)
TempBooks
2048 Samples (older versions of these products had a block size of 256)
DaqBoard (ISA)
2048 Samples (older versions of these products had a block size of 256)
Daq PC Cards
256 Samples
WaveBooks 2048
Samples
DaqBoard/500 Series
DaqBoard/1000 Series
DaqBook/2000 Series
DaqLab/2000 Series
DaqScan/2000 Series
DaqBoard/2000 Series
cPCI DaqBoard/2000c Series
Variable
DatmDriverBuf
– This parameter value specifies that the driver allocate and manage the acquisition
transfer buffer as a circular buffer whose length is determined by the scanCount parameter (in the current
scan group configuration). In this case, the driver will allocate the buffer as a circular buffer so that the
application need not set the DatmCycleOff option. Also, since the driver is allocating the buffer, the buf
parameter will be ignored with this setting. This option allows the driver to allocate and manage the circular
acquisition transfer buffer rather than placing the burden of buffer management on the application. This mode
requires the use of the daqAdcTransferBufData function to access and retrieve the acquired data from
the driver-allocated acquisition transfer buffer. The scanCount parameter should set to a large enough value
to prevent the driver-allocated transfer buffer from over-running. The appropriate setting for scanCount
parameter is highly dependent upon the nature of the application and the frequency at which the data will be
retrieved (using daqAdcTransferBufData) from the driver allocated transfer buffer. If the interval
between data retrievals is large, the scanCount parameter may need to be increased accordingly. If a buffer
overrun condition occurs, the error will be posted and returned by the next invocation of the
daqAdcTransferBufData
function.
DatmUserBuf(default)
- The DatmUserBuf option specifies a user-allocated and managed
acquisition transfer buffer. Here, the driver will write acquired data to the user-allocated buffer, but the
management of the buffer must be performed by the application. If using this mode, there are a few things to
keep in mind:
The specified buf parameter must point to memory which has been allocated by the application prior to
calling this function.
The allocated buffer must be large enough to hold the number of acquisition scans as determined by the current
scan group configuration (as described earlier).
The total amount of data (in scans) written to the user-allocated transfer buffer during the acquisition is
determined by the retCount parameter (which is returned by the daqAdcTransferGetStat function).
The current data write position within the buffer is:
retCount
mod scanCount
4.2-64 Daq API Command Reference
988594
Programmer’s Manual