Skip to content

Commit 1f51f10

Browse files
author
neil.hamilton
committed
Add pwq trigger functions
1 parent ce5fb2e commit 1f51f10

File tree

1 file changed

+23
-2
lines changed

1 file changed

+23
-2
lines changed

ps4000aExamples/ps4000aBlockDropoutTriggerExample.py

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,13 @@
5656

5757
# Set up dropout trigger
5858
# set trigger condtions for channel A and pulse width qualifier
59-
conditions[1] = ps.PS4000A_CONDITION(ps.PS4000A_CHANNEL["PS4000A_CHANNEL_A"], ps.PS4000A_TRIGGER_STATE["PS4000A_TRUE"])
60-
conditions[2] = ps.PS4000A_CONDITION(ps.PS4000A_CHANNEL["PS4000A__PULSE_WIDTH_SOURCE"],ps.PS4000A_TRIGGER_STATE["PS4000A_TRUE"])
59+
conditions =[ps.PS4000A_CONDITION() for i in range (2)]
60+
print(conditions)
61+
conditions[0].source = ps.PS4000A_CHANNEL["PS4000A_CHANNEL_A"]
62+
conditions[0].condition = ps.PS4000A_TRIGGER_STATE["PS4000A_TRUE"]
63+
conditions[1].source = ps.PS4000A_CHANNEL["PS4000A_PULSE_WIDTH_SOURCE"]
64+
conditions[1].condition = ps.PS4000A_TRIGGER_STATE["PS4000A_TRUE"]
65+
6166
nConditions = 2
6267
info = ps.PS4000A_CONDITIONS_INFO["PS4000A_ADD"]
6368
status["setTriggerChannelConditions"] = ps.ps4000aSetTriggerChannelConditions(chandle, ctypes.byref(conditions), nConditions, info)
@@ -67,6 +72,7 @@
6772
directions = ps.PS4000A_DIRECTION(ps.PS4000A_CHANNEL["PS4000A_CHANNEL_A"], ps.PS4000A_THRESHOLD_DIRECTION["PS4000A_ENTER"])
6873
nDirections = 1
6974
status["setTriggerChannelDirections"] = ps.ps4000aSetTriggerChannelDirections(chandle, ctypes.byref(directions), nDirections)
75+
assert_pico_ok(status["setTriggerChannelDirections"])
7076

7177
# find maximum ADC count value
7278
# handle = chandle
@@ -79,6 +85,21 @@
7985
nChannelProperties = 1
8086
autoTriggerms = 10000
8187
status["setTriggerChannelProperties"] = ps.ps4000aSetTriggerChannelProperties(chandle, ctypes.byref(channelProperties), nChannelProperties, 0, autoTriggerms)
88+
assert_pico_ok(status["setTriggerChannelProperties"])
89+
90+
# set pulse width qualifier conditions
91+
pwqConditions = conditions[1]
92+
pwqNConditions = 1
93+
status["setPulseWidthQualifierConditions"] = ps.ps4000aSetPulseWidthQualifierConditions(chandle, ctypes.byref(pwqConditions), pwqNConditions, info)
94+
assert_pico_ok(status["setPulseWidthQualifierConditions"])
95+
96+
# set pulse width qualifier properties
97+
direction = ps.PS4000A_DIRECTION[""]
98+
lower = 15
99+
upper = 100
100+
type = ps.PS4000A_PULSE_WIDTH_TYPE["PW_TYPE_IN_RANGE"]
101+
status["setPulseWidthQualifierProperties"] = ps.ps4000aSetPulseWidthQualifierProperties(chandle, direction, lower, upper, type)
102+
assert_pico_ok(status["setPulseWidthQualifierProperties"])
82103

83104
# Set number of pre and post trigger samples to be collected
84105
preTriggerSamples = 2500

0 commit comments

Comments
 (0)