PicoScope 3000A Series Prog rammer's Guide 79
Copyright © 2011-2013 Pico Technology Limited. All rights reserved. ps3000abpg.en r9
2.12.48.1 PS3000A_PWQ_CONDITIONS structure
A structure of this type is passed to ps3000aSetPulseWidthQualifier in the
conditions argument to specify the trigger conditions. It is defined as follows:
typedef struct tPS3000APwqConditions
{
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_PWQ_CONDITIONS
Each structure is the logical AND of the states of the scope's inputs. The
ps3000aSetPulseWidthQualifier 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: using this function the driver will convert the PS3000A_PWQ_CONDITIONS into
a PS3000A_PWQ_CONDITIONS_V2 and will set the condition for digital to
PS3000A_DIGITAL_DONT_CARE.
**Note: applicable to 4-channel oscilloscopes only.