GtDio6xTimingSetEdgeGet

Applies To

GX5296, File

Purpose

Returns an array with the specified number of timing sets edges.

Syntax

GtDio6xTimingSetEdgeGet (nHandle, nEdgeCount, panEdgeList, padEdgeVaules, 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.

nEdgeCount
SHORT
Used to specify the number of edges are in the panEdgeList array list .
panEdgeList
PSHORT
Array containing the edges numbers that will be get by this function. Edges numbers are:
0. GTDIO6X_TIMING_SET_EDGE_0: Edge 0 (not programmable edge, always 0.0 nSec).
1. GTDIO6X_TIMING_SET_EDGE_1: Edge 1.
2. GTDIO6X_TIMING_SET_EDGE_2: Edge 2.
3. GTDIO6X_TIMING_SET_EDGE_3: Edge 3.
4. GTDIO6X_TIMING_SET_EDGE_4: Edge 4.
5. GTDIO6X_TIMING_SET_EDGE_5: Edge 5.
6. GTDIO6X_TIMING_SET_EDGE_6: Edge 6.
7. GTDIO6X_TIMING_SET_EDGE_7: Edge 7.
8. GTDIO6X_TIMING_SET_EDGE_8: Edge 8.
9. GTDIO6X_TIMING_SET_EDGE_9: Edge 9.
10. GTDIO6X_TIMING_SET_EDGE_10: Edge 10 (GX5296 Firmware version > 0xAA03).
11. GTDIO6X_TIMING_SET_EDGE_11: Edge 11 (GX5296 Firmware version > 0xAA03).
12. GTDIO6X_TIMING_SET_EDGE_12: Edge 12 (GX5296 Firmware version > 0xAA03).
padEdgeVaules
PDOUBLE
Array containing the edges values as specified by the panEdgeList.
pnStatus
PSHORT
Returned status: 0 on success, negative value on failure.

Comments

The timing set engine generates programmable edges that can be set from 0nSec to the current programmable system clock period, e.g. If the system clock was programmed to 100nSec, then each of the edges can be programmed to any value between 0 to 100nSec with 0.25 nSec resolution. The user only needs to set those global values once, as the phase assert/return and window open/close are then associated with any of these edge values.

Example

The following example sets all 10 timing sets edges and returns their values:

 

SHORT nStatus, nMode;

LONG anEdgeList[10];

DOUBLE adEdge[10];

DOUBLE adEdgeReadback[10];

 

LONG i;

for (i=0; i<10; i++)

{   adEdge[i]=i*0.25; // increments of 0.25nSec

    anEdgeList[i]=i;

}

GtDio6xTimingSetEdgeSet(nHandle, 10, anEdgeList, adEdge, &nStatus);

GtDio6xTimingSetEdgeGet(nHandle, 10, anEdgeList, adEdgeReadback, &nStatus);

 

See Also

GtDio6xStepSetPauseResumeTrigger, GtDio6xTimingSetEdgeReset, GtDio6xSequencerRun, GtDio6xSequencerRunEx, GtDio6xSequencerStop, GtDio6xSequencerHalt, GtDio6xGetErrorString