
Prog ramming the 3000A Series oscilloscopes
94
Copyright © 2011-2013 Pico Technology Limited. All rights reserved.
ps3000abpg.en r9
2.12.54.1 PS3000A_TRIGGER_CONDITIONS_V2 structure
A structure of this type is passed to
ps3000aSetTriggerChannelConditionsV2
conditions
argument to specify the trigger conditions, and is defined as follows: -
typedef struct tPS3000ATriggerConditionsV2
{
PS3000A_TRIGGER_STATE channelA;
PS3000A_TRIGGER_STATE channelB;
PS3000A_TRIGGER_STATE channelC;
PS3000A_TRIGGER_STATE channelD;
PS3000A_TRIGGER_STATE external;
PS3000A_TRIGGER_STATE aux;
PS3000A_TRIGGER_STATE pulseWidthQualifier;
PS3000A_TRIGGER_STATE digital;
} PS3000A_TRIGGER_CONDITIONS_V2;
Each structure is the logical AND of the states of the scope's inputs. The
ps3000aSetTriggerChannelConditionsV2
function can OR together a number of these
structures to produce the final trigger condition, which can be any possible Boolean
function of the scope's inputs.
The structure is byte-aligned. In C++, for example, you should specify this using the
#pragma pack()
instruction.
Elements
channelA, channelB, channelC, channelD, external,
pulseWidthQualifier,
the type of condition that should be
applied to each channel. Use these constants:
PS3000A_CONDITION_DONT_CARE
PS3000A_CONDITION_TRUE
PS3000A_CONDITION_FALSE
The channels that are set to
or
must all meet their conditions
simultaneously to produce a trigger. Channels set to
are ignored.
aux,
not used