GX5296, GX5961, GX5964, File
Returns Clock period and Clocks per Vector settings of the specified Step.
GtDio6xStepGetClock (nHandle, lStep, pdPeriodInNanoSec, plClocksPerVector, pnStatus)
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. |
lStep |
LONG |
Step Number to access 0-4095. |
pdPeriodInNanoSec |
PDOUBLE |
GX5961/GX5964:Used to return the period in nano seconds that the currently selected sequence step is using. By default, when the Master Clock Source is set to the internal 500 MHz, the resolution of the Period is 1ns. Only even values are supported. Range is 20nSec to 65536nSec.GX5296:Used to return the period in nano seconds. All assigned steps will have the same period. By default, the period is 100ns (10MHz clock). Range is between 1000.0 nSec to 8.0 nSec. |
plClocksPerVector |
PLONG |
Used to return the Clocks per Vector that the currently selected sequence step is using. Range is 1-255. |
pnStatus |
PSHORT |
Returned status: 0 on success, negative value on failure. |
GX5961/GX5964:
This function returns the clock data for the selected sequence step (in GX5296 all steps have the same period).
The clock data consist of the following:
pdPeriodInNanoSec - The clock period specifies the internal system clock period in nano seconds (T0CLK). The vector period is programmed.
plClocksPerVector - Two clocks are available for triggering the timing phases and windows to begin their programmed definition, System Clock and Pattern Clock. The plClocksPerVector determine the number of System Clocks will be generated for each vector Clock. When plClocksPerVector = 1, then vector Clock is equal to System Clock. When plClocksPerVector = 2, then vector Clock is two times the System Clock. The phase timing logic can be triggered by either the System Clock or the vector Clock. The window timing logic is only triggered with System Clock. See the GtDio6xStepSetPhaseTriggerSource API for details.
Notes:
● Step 0 Clocks per Vector must be equal to 1, violating this could result in unpredictable behavior.
● Phases and Windows are allowed to extend past the initial vector period if multiple clocks per pattern ( i.e. clocks per pattern >1) are programmed.
GX5296:
This function returns the clock data period which is common to all steps and the number of Clocks Per Vector that can be set on a per step basis.
The clock data consist of the following:
pdPeriodInNanoSec - The clock period specifies the internal system clock period in nano seconds (T0CLK). The vector period is programmed.
plClocksPerVector - Two clocks are available for triggering the timing phases and windows to begin their programmed definition, System Clock and Pattern Clock. The plClocksPerVector determine the number of System Clocks will be generated for each vector Clock. When plClocksPerVector = 1, then vector Clock is equal to System Clock. When plClocksPerVector >1, then vector Clock is equal to the number of Clocks Per Vector times the System Clock. The phase timing logic can be triggered by either the System Clock or the vector Clock. The window timing logic is only triggered with System Clock. See the GtDio6xStepSetPhaseTriggerSource API for details.
The following example sets step number 3 period clock to 100nSec and Clocks per Vector to 5, and then reruns settings and number of for sequence step 5:
DOUBLE dPeriod;
LONG lClocksPerVector;
SHORT nStatus;
GtDio6xStepSetClock(nHandle, 3, 100, 5, &nStatus);
GtDio6xStepGetClock(nHandle, &dPeriod, &lClocksPerVector, &nStatus);
GtDio6xStepSetClock, GtDio6xStepSetTimingSetIndex, GtDio6xStepGetTimingSetIndex, GtDio6xGetErrorString