AlazarConfigureSampleSkipping#

Function Syntax#

RETURN_CODE AlazarConfigureSampleSkipping(HANDLE handle, U32 mode, U32 sampleClocksPerRecord, U16 *sampleSkipBitmap)#

Makes the digitizer sub-sample post trigger data in arbitrary, non-uniform intervals.

The application specifies which sample clock edges after a trigger event the digitizer should use to generate sample points, and which sample clock edges the digitizer should ignore.

To enable data skipping, first create a bitmap in memory that specifies which sample clock edges should generate a sample point, and which sample clock edges should be ignored.

  • 1’s in the bitmap specify the clock edges that should generate a sample point. The total number of 1’s in the bitmap must be equal to the number of post-trigger samples per record specified in the call to AlazarSetRecordSize().

  • 0’s in the bitmap specify the clock edges that should not be used to generate a sample point.

  • The total total number of bits in the bitmap is equal to the number of sample clocks in one record.

For example, to receive 16 samples from 32 sample clocks where every other sample clock is ignored, create a bitmap of 32 bits with values { 1 0 1 0 1 0 ... 1 0 }, or { 0x5555, 0x5555 }. Note that 16 of the 32 bits are 1’s.

And to receive 24 samples from 96 sample clocks where data from every 3 of 4 samples clocks is ignored, create a bitmap of 96 bits with values { 1 0 0 0 1 0 0 0 1 0 0 0 ... 1 0 0 0 }, or in { 0x1111, 0x1111, 0x1111, 0x1111, 0x1111, 0x1111 }. Note that 24 of the 96 bits are 1’s.

After creating a bitmap, call AlazarConfigureSampleSkipping() with:

  • Mode equal to SSM_ENABLE

  • SampleClocksPerRecord equal to the total number of sample clocks per record.

  • pSampleSkipBitmap with the address of the U16 array.

To disable data skipping, call AlazarConfigureSampleSkipping with Mode equal to SSM_DISABLE. The SampleClocksPerRecord and pSampleSkipBitmap parameters are ignored.

Note that data skipping currently is supported by the ATS9371, ATS9373, ATS9360 and ATS9440. For ATS9440, data skipping only works with post-trigger data acquired at 125 MSPS or 100 MSPS.

Parameters
  • handle[in] Handle to board

  • mode[in] The data skipping mode. 0 means disable sample skipping and 1 means enable sample skipping.

  • sampleClocksPerRecord[in] The number of sample clocks per record. This value cannot exceed 65536.

  • sampleSkipBitmap[in] An array of bits that specify which sample clock edges should be used to capture a sample point (value = 1) and which should be ignored (value = 0).

Returns

ApiSuccess upon success, or an error code. See RETURN_CODE for more detailed information.

LabVIEW Block Diagram#

../_images/AlazarConfigureSampleSkipping.vi.png