GtDio6xChannelSetAuxiliaryOutputSignal

Applies To

GX5296, GX5961

Purpose

Programs the output signal routing of an auxiliary channel.

Syntax

GtDio6xChannelSetAuxiliaryOutputSignal (nHandle, lChannelListArraySize, palChannelListArray, nSource, nState, pnStatus)

Parameters

Name
Type
Comments
nHandle
SHORT
Session identifier:

     Board handle is used when communicating with the hardware. The Board handle session identifier is returned by calling GtDio6xInitialize or GtDio6xSetupInitialization.

     File handle is used when communicating with a file. The File handle session identifier is  returned by calling GtDio6xFileOpen.

lChannelListArraySize
LONG
Used to specify the number of channels to set. This parameter should not be greater than the size of palChannelListArray.
palChannelListArray
PLONG
Array containing channels numbers that will be set by this function,  channels numbers are 0-based and refers to any channel in the Domain. Auxiliary channel numbers begin with 1000.
GX5296: Each GX5296 board has 4 auxiliary channels that support all the Pin Electronics API functions. Only the Master board can use any of the 4 auxiliary channels to with GtDio6xChannelSetAuxiliaryOutputSignal API.
GX5961: Each GX5961 board has 4 fully programmable auxiliary channels, and 8 TTL I/O channels. First 4 auxiliary channels may use all the Pin Electronics API. All an auxiliary channel may use GtDio6xChannelSetAuxiliaryOutputSignal API.
GX5964: Does not have Auxiliary channels.
nSource
SHORT

Specifies the Auxiliary Output Signal nSource Parameter of the auxiliary channels  selected with the palChanneListArray parameter. See comments section below for details.

0.   GTDIO6X_AUX_SOURCE_PHASE_0.

1.   GTDIO6X_AUX_SOURCE_PHASE_1.

2.   GTDIO6X_AUX_SOURCE_PHASE_2.

3.   GTDIO6X_AUX_SOURCE_PHASE_3.

4.   GTDIO6X_AUX_SOURCE_WINDOW_0.

5.   GTDIO6X_AUX_SOURCE_WINDOW_1.

6.   GTDIO6X_AUX_SOURCE_WINDOW_2.

7.   GTDIO6X_AUX_SOURCE_WINDOW_3.

12. GTDIO6X_AUX_SOURCE_SYNC_PULSE_0.

13. GTDIO6X_AUX_SOURCE_SYNC_PULSE_1.

14. GTDIO6X_AUX_SOURCE_IDLE_ACTIVE.

15. GTDIO6X_AUX_SOURCE_BURST_ACTIVE.

18. GTDIO6X_AUX_SOURCE_CHANNEL31_GOOD1.

19. GTDIO6X_AUX_SOURCE_CHANNEL31_GOOD0.

20. GTDIO6X_AUX_SOURCE_AUX0_INPUT.

21. GTDIO6X_AUX_SOURCE_AUX1_INPUT.

22. GTDIO6X_AUX_SOURCE_AUX2_INPUT.

23. GTDIO6X_AUX_SOURCE_AUX3_INPUT.

24. GTDIO6X_AUX_SOURCE_STEP_FLAG_0.

25. GTDIO6X_AUX_SOURCE_STEP_FLAG_1.

26. GTDIO6X_AUX_SOURCE_STEP_CLOCK.

27. GTDIO6X_AUX_SOURCE_VECTOR_CLOCK.

28. GTDIO6X_AUX_SOURCE_SEQCLKI.

29. GTDIO6X_AUX_SOURCE_JUMPIN.

30. GTDIO6X_AUX_SOURCE_ERRIN.

31. GTDIO6X_AUX_SOURCE_SEQCLKDI.

32. GTDIO6X_AUX_SOURCE_T0CLKO.

33. GTDIO6X_AUX_SOURCE_SEQCLKO.

34. GTDIO6X_AUX_SOURCE_JUMPO.

35. GTDIO6X_AUX_SOURCE_SEQCLKDO.

37. GTDIO6X_AUX_SOURCE_RECACT.

38. GTDIO6X_AUX_SOURCE_PXICLK10.

39. GTDIO6X_AUX_SOURCE_FREQ_SYNTHESIZER.

40. GTDIO6X_AUX_SOURCE_JUMP_STROBE.

43. GTDIO6X_AUX_SOURCE_HIGH.

44. GTDIO6X_AUX_SOURCE_PASS.

45. GTDIO6X_AUX_SOURCE_FAIL.

46. GTDIO6X_AUX_SOURCE_CONDITION_ENABLE.

47. GTDIO6X_AUX_SOURCE_BURST_ERROR_ENABLE.

48. GTDIO6X_AUX_SOURCE_LOAD_SEQUENCE_REG.

49. GTDIO6X_AUX_SOURCE_LOAD_LOOP_COUNT.

50. GTDIO6X_AUX_SOURCE_COUNTER_ACTIVE.

51. GTDIO6X_AUX_SOURCE_CPP_DONE.

52. GTDIO6X_AUX_SOURCE_LAST_WORD.

53. GTDIO6X_AUX_SOURCE_BURST_COUNT_DONE.

55. GTDIO6X_AUX_SOURCE_GO_SUB_ACTIVE.

56. GTDIO6X_AUX_SOURCE_COUNTED_LOOP.

57. GTDIO6X_AUX_SOURCE_SUIBROUTINE_RETURN.

58. GTDIO6X_AUX_SOURCE_RETURN_FLAG.

59. GTDIO6X_AUX_SOURCE_LAST_STEP.

60. GTDIO6X_AUX_SOURCE_JUMP_TRIGGER_0.

61. GTDIO6X_AUX_SOURCE_JUMP_TRIGGER_1.

62. GTDIO6X_AUX_SOURCE_JUMP_TRIGGER_2.

63. GTDIO6X_AUX_SOURCE_JUMP_TRIGGER_3.

64. GTDIO6X_AUX_OUTPUT_DISABLED.

65. GTDIO6X_AUX_OUTPUT_LOW_VOLTAGE.

66. GTDIO6X_AUX_OUTPUT_HIGH_VOLTAGE.

67. GTDIO6X_AUX_OUTPUT_PMU_FORCE_CURRENT.

68. GTDIO6X_AUX_OUTPUT_PMU_FORCE_VOLTAGE.

nState
SHORT
Specifies the signal state:

0.   GTDIO6X_AUX_INPUT: Output Signal is disabled.

1.   GTDIO6X_AUX_OUTPUT: Output Signal is enabled.

2.   GTDIO6X_AUX_OUTPUT_INVERTED: Output Signal is inverted.

pnStatus
PSHORT
Returned status: 0 on success, negative value on failure.

Comments

Each GX5960 has twelve auxiliary signals that can be programmed to output a variety of signals.

Auxiliary Output Signal Source Constant
Description
GTDIO6X_AUX_OUTPUT_PHASE_0
GX5960 Only: Phase 0.
GTDIO6X_AUX_OUTPUT_PHASE_1
GX5960 Only: Phase 1.
GTDIO6X_AUX_OUTPUT_PHASE_2
GX5960 Only: Phase 2.
GTDIO6X_AUX_OUTPUT_PHASE_3
GX5960 Only: Phase 3.
GTDIO6X_AUX_OUTPUT_WINDOW_0
GX5960 Only: Window 0.
GTDIO6X_AUX_OUTPUT_WINDOW_1
GX5960 Only: Window 1.
GTDIO6X_AUX_OUTPUT_WINDOW_2
GX5960 Only: Window 2.
GTDIO6X_AUX_OUTPUT_WINDOW_3
GX5960 Only: Window 3.
GTDIO6X_AUX_OUTPUT_SYNC_PULSE_0
GX5960 & GX5296: Sync 0.
GTDIO6X_AUX_OUTPUT_SYNC_PULSE_1
GX5960: Sync 1.
GTDIO6X_AUX_OUTPUT_IDLE_ACTIVE
GX5960 & GX5296: Idle Active.
GTDIO6X_AUX_OUTPUT_BURST_ACTIVE
GX5960 & GX5296: Sequence Active.
GTDIO6X_AUX_OUTPUT_CHANNEL31_GOOD1
GX5960 Only: CH32 Good 1.
GTDIO6X_AUX_OUTPUT_CHANNEL31_GOOD0
GX5960 Only: CH32 Good 0.
GTDIO6X_AUX_OUTPUT_AUX0_INPUT_HI_THRES
GX5960 Only: AUX0 Echo of input received (uses high threshold).
GTDIO6X_AUX_OUTPUT_AUX1_INPUT_HI_THRES
GX5960 Only: AUX1 Echo of input received (uses high threshold).
GTDIO6X_AUX_OUTPUT_AUX2_INPUT_HI_THRES
GX5960 Only: AUX2 Echo of input received (uses high threshold).
GTDIO6X_AUX_OUTPUT_AUX3_INPUT_HI_THRES
GX5960 Only: AUX3 Echo of input received (uses high threshold).
GTDIO6X_AUX_OUTPUT_STEP_FLAG_0
GX5960 & GX5296: Sequence Flag 1 (Available on each sequencer).
GTDIO6X_AUX_OUTPUT_STEP_FLAG_1
GX5960 & GX5296: Sequence Flag 2 (Available on each sequencer).
GTDIO6X_AUX_OUTPUT_STEP_CLOCK
GX5960 & GX5296: T0 CLK.
GTDIO6X_AUX_OUTPUT_VECTOR_CLOCK
GX5960 & GX5296: Pattern Clock.
GTDIO6X_AUX_OUTPUT_SEQCLKI
GX5960: Primary Sequencer Clock Input.
GTDIO6X_AUX_OUTPUT_JUMPI
GX5960 & GX5296: Sequencer jump input.
GTDIO6X_AUX_OUTPUT_ERRIN
GX5960 & GX5296: Raw Error from the input channel comparators.
GTDIO6X_AUX_OUTPUT_SEQCLKDI
GX5960 & GX5296: delayed Primary Sequencer Clock Input which is used for offset recording.
GTDIO6X_AUX_OUTPUT_T0CLKO
GX5960 & GX5296: T0 CLK out.
GTDIO6X_AUX_OUTPUT_SEQCLKO
GX5960 & GX5296: SEQ CLK Out.
GTDIO6X_AUX_OUTPUT_JUMPO
GX5960 & GX5296: Jump Out.
GTDIO6X_AUX_OUTPUT_SEQCLKDO
GX5960 & GX5296: SEQ CLK Data Out.
GTDIO6X_AUX_OUTPUT_RECORD_ACTIVE
GX5960 & GX5296: Record Active, delayed Sequencer Active which shows the duration of recording.
GTDIO6X_AUX_OUTPUT_PXI_CLK_10MHZ
GX5960 & GX5296: PXI 10MHZ CLK.
GTDIO6X_AUX_OUTPUT_FREQ_SYNTHESIZER
GX5960 Only: Frequency Synthesizer.
GTDIO6X_AUX_OUTPUT_JUMP_STROBE
GX5960 & GX5296: Jump Strobe.
GTDIO6X_AUX_OUTPUT_HIGH
GX5960 Only: A static level, can be made a LOW using Invert.
GTDIO6X_AUX_OUTPUT_PASS
GX5960: The accumulated PASS condition occurring during the execution of the Seq. Step.
GTDIO6X_AUX_OUTPUT_FAIL
GX5960: The accumulated FAIL condition occurring during the execution of the Seq. Step.
GTDIO6X_AUX_OUTPUT_CONDITION_ENABLE
GX5960: Condition Enable.
GTDIO6X_AUX_OUTPUT_BURST_ERROR_ENABLE
GX5960: Burst Error Enable.
GTDIO6X_AUX_OUTPUT_LOAD_SEQUENCE_REG
GX5960 & GX5296: Load Sequence Register.
GTDIO6X_AUX_OUTPUT_LOAD_LOOP_COUNT
GX5960 & GX5296: Load Loop Count.
GTDIO6X_AUX_OUTPUT_COUNTER_ACTIVE
GX5960 & GX5296: Counter Active.
GTDIO6X_AUX_OUTPUT_CPP_DONE
GX5960 & GX5296: Clocks Per Pattern Done.
GTDIO6X_AUX_OUTPUT_LAST_WORD
GX5960 & GX5296: Last Word.
GTDIO6X_AUX_OUTPUT_BURST_COUNT_DONE
GX5960: Burst Count Done.
GTDIO6X_AUX_OUTPUT_GO_SUB_ACTIVE
GX5960 & GX5296: Gosub Active.
GTDIO6X_AUX_OUTPUT_COUNTED_LOOP
GX5960 & GX5296: Counted Loop.
GTDIO6X_AUX_OUTPUT_SUBROUTINE_RETURN
GX5960 & GX5296: Subroutine Return.
GTDIO6X_AUX_OUTPUT_RETURN_FLAG
GX5960: Return Flag.
GTDIO6X_AUX_OUTPUT_LAST_STEP
GX5960 & GX5296: Last Sequence.
GTDIO6X_AUX_OUTPUT_JUMP_TRIGGER_0
GX5960 & GX5296: Jump Trigger 0, test input signal that will be strobed by Jump Strobe.
GTDIO6X_AUX_OUTPUT_JUMP_TRIGGER_1
GX5960 & GX5296: Jump Trigger 1, test input signal that will be strobed by Jump Strobe.
GTDIO6X_AUX_OUTPUT_JUMP_TRIGGER_2
GX5960 & GX5296: Jump Trigger 2, test input signal that will be strobed by Jump Strobe.
GTDIO6X_AUX_OUTPUT_JUMP_TRIGGER_3
GX5960 & GX5296: Jump Trigger 3, test input signal that will be strobed by Jump Strobe.
GTDIO6X_AUX_OUTPUT_DISABLED
GX5960 & GX5296: Output disabled.
GTDIO6X_AUX_OUTPUT_LOW_VOLTAGE
GX5960 & GX5296: Low voltage, set by GtDio6xChannelSetSourceLevels API. Applicable to the first 4 Aux channels in each card.
GTDIO6X_AUX_OUTPUT_HIGH_VOLTAGE
GX5960 & GX5296: High voltage, set by GtDio6xChannelSetSourceLevels API. Applicable to the first 4 Aux channels in each card.
GTDIO6X_AUX_OUTPUT_PMU_FORCE_CURRENT
GX5960 & GX5296: PMU Force current mode, set by GtDio6xChannelSetPmuForcedCurrent API. Applicable to the first 4 Aux channels in each card.
GTDIO6X_AUX_OUTPUT_PMU_FORCE_VOLTAGE
GX5960 & GX5296: PMU Force voltage mode, set by GtDio6xChannelSetPmuForcedVoltage API. Applicable to the first 4 Aux channels in each card.

 

Note: If the auxiliary signal is assigned as an input then pnState needs to be set as GTDIO6X_AUX_INPUT.

The AUX channels are a set of 12 multi-purpose signals that can be used for any of the following resources;

1.    Trigger Source Input.

2.    Frequency Synthesizer Reference Clock Input.

3.    System Clock Input.

4.    Vector Jump Address Input.

5.    Waveform Output.

6.    Pulse Generator Output.

7.    Sync Output.

8.    Sequence Flag Output.

9.    Frequency Synthesizer Output.

10.  Timing Set Output Signals:

     Phase.

     Window.

     T0_CLK.

     Vector Clock.

11. Sequencer Status Outputs:

     Idle Active.

     Sequencer Active.

     Step Flag.

12. Numerous Factory Test Outputs.

The twelve AUX signals are defined in two logic groups:

     AUX0 – AUX3 use pin electronic driver and receivers. The source and sense voltages can be programmed using GtDio6xChannelSetSenseLevels, and GtDio6xChannelSetSourceLevels.

     AUX4 – AUX11 uses fixed low voltage TTL driver/receivers (LVTTL).

Example

The following example does the following:

1.       Sets Auxiliary channels 1 and 2 to output the Phase 3 signal.

2.       Returns Auxiliary channel 2 signal.

3.       Sets Auxiliary channel 3 to output the Window 0 signal.

4.       Returns Auxiliary channel 3 signal.

 

SHORT nStatus, nSource, nState;

LONG   alChannelListArray[2];

 

alChannelListArray[0]=1001;

alChannelListArray[1]=1002;

 

GtDio6xChannelSetAuxiliaryOutputSignal (nHandle, 2, alChannelListArray,

GTDIO6X_AUX_OUTPUT_PHASE_3, GTDIO6X_AUX_OUTPUT, &nStatus);

GtDio6xChannelGetAuxiliaryOutputSignal (nHandle, 2, alChannelListArray,

GTDIO6X_AUX_OUTPUT_PHASE_3, GTDIO6X_AUX_OUTPUT, &nStatus);

GtDio6xChannelGetAuxiliaryOutputSignal (nHandle, 1002, &nSource, &nState, &nStatus);

 

alChannelListArray[0]=1003;

GtDio6xChannelSetAuxiliaryOutputSignal (nHandle, 1, alChannelListArray,

GTDIO6X GTDIO6X_AUX_OUTPUT_WINDOW_0, GTDIO6X_AUX_OUTPUT, &nStatus);

GtDio6xChannelGetAuxiliaryOutputSignal (nHandle, 1003, &nSource, &nState, &nStatus);

 

See Also

GtDio6xChannelGetConnect, GtDio6xChannelSetConnect, GtDio6xChannelGetSenseLevels,  GtDio6xChannelSetSenseLevels, GtDio6xChannelGetSourceLevels, GtDio6xChannelSetSourceLevels, GtDio6xGetErrorString