I just want the data when the signal is high so I think pulse width trigger with rapid block mode will do the job, because I do not know the time that is going to be high and I need to capture multiple signals. I am not sure about this so I am open to other suggestions. The high state of the signal in A will have a duration no more than 5s and it will repeat for 5-10 times.
Here is the trigger code
Code: Select all
triggerConditions = ps.PS5000A_CONDITION(ps.PS5000A_CHANNEL["PS5000A_CHANNEL_A"], ps.PS5000A_TRIGGER_STATE["PS5000A_CONDITION_TRUE"]) clear = 1 add = 2 self._status["setTriggerChannelConditions"] = ps.ps5000aSetPulseWidthQualifierConditions(self._chandle, ctypes.byref(triggerConditions), 1, (clear + add)) assert_pico_ok(self._status["setTriggerChannelConditions"]) triggerDirections = ps.PS5000A_DIRECTION(ps.PS5000A_CHANNEL["PS5000A_CHANNEL_A"], ps.PS5000A_THRESHOLD_DIRECTION["PS5000A_INSIDE"], ps.PS5000A_THRESHOLD_MODE["PS5000A_WINDOW"]) self._status["setTriggerChannelDirections"] = ps.ps5000aSetPulseWidthQualifierDirections(self._chandle, ctypes.byref(triggerDirections), 1) assert_pico_ok(self._status["setTriggerChannelDirections"]) upper = 2000 lower = 2000 self._status["setPulseWidthQualifierProperties"] = ps.ps5000aSetPulseWidthQualifierProperties(self._chandle, lower, upper, ps.PS5000A_PULSE_WIDTH_TYPE["PSXXXX_PW_TYPE_GREATER_THAN"]) assert_pico_ok(self._status["setPulseWidthQualifierProperties"])
I have an error in ps.PS5000A_PULSE_WIDTH_TYPE["PSXXXX_PW_TYPE_GREATER_THAN"] and I try multiple things but it did not work.