Prog ramming the 3000A Series oscilloscopes82
Copyright © 2011-2013 Pico Technology Limited. All rights reserved.ps3000abpg.en r9
2.12.49.1 PS3000A_PWQ_CONDITIONS_V2 structure
A structure of this type is passed to ps3000aSetPulseWidthQualifierV2 in the
conditions argument to specify the trigger conditions. It is defined as follows:
typedef struct tPS3000APwqConditionsV2
{
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 digital;
} PS3000A_PWQ_CONDITIONS_V2
Each structure is the logical AND of the states of the scope's inputs. The
ps3000aSetPulseWidthQualifierV2 function can OR together a number of these
structures to produce the final pulse width qualifier, which can therefore 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.
channelA, channelB, channelC*, channelD*, external,
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 PS3000A_CONDITION_TRUE or
PS3000A_CONDITION_FALSE must all meet their conditions
simultaneously to produce a trigger. Channels set to
PS3000A_CONDITION_DONT_CARE are ignored.
aux, not used
*Note: applicable to 4-channel analog devices only.