Sets the group channels used for arbitrary waveform generation and the waveform size.
GX1649, GX1649-1, GX1632e
GxAoArbSetGroupChannels (nHandle, nGroup, wChannels, dwWaveformSize, pnStatus)
Name |
Type |
Description |
nHandle |
SHORT |
Handle to a GX1649 or GX1632e board. |
nGroup |
SHORT |
Group number:0. GXAO_GROUPA1. GXAO_GROUPB2. GXAO_GROUPC3. GXAO_GROUPD |
wChannels |
WORD |
A bit mask where each bit corresponds to a channel (bit 0 is channel 0, bit 15 channel 15). Bits that are set to 1 indicate that the corresponding channels are set to generate waveform. Bits that are set to 0 indicate a static output channel. Available channels are board dependent. |
dwWaveformSize |
DWORD |
GX1649/GX1649-1: Sets the waveform size (number of samples) when in non-streaming mode. This parameter is ignored when in streaming mode.GX1632e: Sets the number of buckets allocated to the specified group where 1 bucket equals 16 kSamples. Valid range is 0 to 7, allowing an allocation of 1, 2, 4, 8, 16, 32, 64, and 128 buckets. |
pnStatus |
PSHORT |
Returned status: 0 on success, negative number on failure. |
All channels configured to generate waveform have the size waveform length. The waveform maximum size depends on the number of channels that are configured to generate waveform. Total group memory is 256K elements. If all channels are configured to generate waveforms (wChannels=0xFFFF) than the maximum waveform length is 16K or 16,384 (256K/16).
The GX1632e board only has 8 channels per group. Only the lower byte of wChannels is used when determining which channels are active for the specified group.
The following example sets channel 1, 3 and 15 (0x800A) in group B to generate waveform with the length to 16K or 16,384:
SHORT nStatus;
GxAoArbSetGroupChannels(nHandle, GXAO_GROUPB, 0x800A, 16384, &nStatus);
GxAoArbGetGroupChannels, GxAoArbWriteWaveform, GxAoGetErrorString