LibTiePie
0.5
Library for interfacing TiePie engineering instruments
|
Functions for controlling the arbitrary waveform buffer of a generator.
A generator has a buffer in which arbitrary waveform patterns can be loaded, after which the loaded pattern can be generated, when the signal type is set to ST_ARBITRARY. Waveform patterns must have a length in samples between a minimum and maximum value. Use GenGetDataLengthMin() and GenGetDataLengthMax() to get the buffer length limits in samples.
When the frequency mode is set to "signal frequency", the loaded pattern is treated as one period of the signal to generate. When the frequency mode is set to "sample frequency", the samples of the loaded pattern are generated at the set sample frequency.
The samples in the waveform pattern buffer represent the voltage values of the signal to generate. These sample values are unitless floating point values. Positive values represent the positive part of the signal. Negative values represent the negative part of the signal. When loading the buffer, the values in the buffer are normalized:
0
(zero) will equal the set offset value.Example pattern:
Sample number | Buffer value | Generated voltage Amplitude = 7 V Offset = 0 V | Generated voltage Amplitude = 4V Offset = -1 V |
---|---|---|---|
0 | 0.0 | 0.0 V | -1.0 V |
1 | 0.5 | 3.5 V | 1.0 V |
2 | 1.0 | 7.0 V | 3.0 V |
3 | 0.5 | 3.5 V | 1.0 V |
4 | 0.0 | 0.0 V | -1.0 V |
5 | -0.5 | -3.5 V | -3.0 V |
6 | -1.0 | -7.0 V | -5.0 V |
7 | -0.5 | -3.5 V | -3.0 V |
Functions | |
uint64_t | GenGetDataLengthMin (TpDeviceHandle_t hDevice) |
Get the minimum length of the waveform buffer of a specified generator. More... | |
uint64_t | GenGetDataLengthMax (TpDeviceHandle_t hDevice) |
Get the maximum length of the waveform buffer of a specified generator. More... | |
uint64_t | GenGetDataLength (TpDeviceHandle_t hDevice) |
Get the length of the currently loaded waveform pattern of a specified generator. More... | |
void | GenSetData (TpDeviceHandle_t hDevice, const float *pBuffer, uint64_t qwSampleCount) |
Load a waveform pattern into the waveform buffer of a specified generator. More... | |
uint64_t GenGetDataLengthMin | ( | TpDeviceHandle_t | hDevice | ) |
Get the minimum length of the waveform buffer of a specified generator.
[in] | hDevice | A device handle identifying the generator. |
NOT_SUPPORTED | The generator does not support getting the data length for the current signal type. |
INVALID_HANDLE | The handle is not a valid generator handle. |
DEVICE_GONE | The device indicated by the device handle is no longer available. |
LIBRARY_NOT_INITIALIZED | The library is not initialized, see LibInit(). |
SUCCESS | The function executed successfully. |
uint64_t GenGetDataLengthMax | ( | TpDeviceHandle_t | hDevice | ) |
Get the maximum length of the waveform buffer of a specified generator.
[in] | hDevice | A device handle identifying the generator. |
NOT_SUPPORTED | The generator does not support getting the data length for the current signal type. |
INVALID_HANDLE | The handle is not a valid generator handle. |
DEVICE_GONE | The device indicated by the device handle is no longer available. |
LIBRARY_NOT_INITIALIZED | The library is not initialized, see LibInit(). |
SUCCESS | The function executed successfully. |
uint64_t GenGetDataLength | ( | TpDeviceHandle_t | hDevice | ) |
Get the length of the currently loaded waveform pattern of a specified generator.
[in] | hDevice | A device handle identifying the generator. |
NOT_SUPPORTED | The generator does not support getting the data length for the current signal type. |
INVALID_HANDLE | The handle is not a valid generator handle. |
DEVICE_GONE | The device indicated by the device handle is no longer available. |
LIBRARY_NOT_INITIALIZED | The library is not initialized, see LibInit(). |
SUCCESS | The function executed successfully. |
void GenSetData | ( | TpDeviceHandle_t | hDevice, |
const float * | pBuffer, | ||
uint64_t | qwSampleCount | ||
) |
Load a waveform pattern into the waveform buffer of a specified generator.
[in] | hDevice | A device handle identifying the generator. |
[in] | pBuffer | A pointer to a buffer with the waveform data. |
[in] | qwSampleCount | The number of samples in the pattern. |
VALUE_MODIFIED | The requested data length is not available. The data is resampled to the closest valid length. |
INVALID_VALUE | The buffer pointer is NULL or the requested waveform pattern length is 0 . |
NOT_SUPPORTED | The generator does not support uploading pattern data for the current signal type. |
UNSUCCESSFUL | An error occurred during execution of the last called function. |
NOT_CONTROLLABLE | The generator is currently not controllable, see GenIsControllable. |
INVALID_HANDLE | The handle is not a valid generator handle. |
DEVICE_GONE | The device indicated by the device handle is no longer available. |
LIBRARY_NOT_INITIALIZED | The library is not initialized, see LibInit(). |
SUCCESS | The function executed successfully. |
NULL
and qwSampleCount = 0
.