Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add marker configuration capabilities #99

Merged
merged 5 commits into from
Dec 7, 2021
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions qcodes_contrib_drivers/drivers/Keysight/SD_common/SD_AWG.py
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,35 @@ def set_trigger_io(self, value: int, verbose: bool = False) -> Any:
result = self.awg.triggerIOwrite(value)
value_name = f'set io trigger output to {value}'
return result_parser(result, value_name, verbose)

def set_marker_config(self, channel_number: int, markerMode: int,
trgPXImask: int, trgIOmask: int, markerValue: int, syncMode: int ,length: int,
delay:int, verbose: bool) -> Any:
"""
Configures the marker output from the trigger port

Args:
channel_number : trigger channel number
markerMode : 0 disabled, 1 on start event, 2 On first sample of waveform (after starting delay), 3 on every cycle
trgPXImask : Mask to select PXI triggers to use
trgIOmask : Mask to select front panel triggers to use
markerValue : 0 = marker signal is default low, pulses high. 1 = marker signal is default high, pulses low
syncMode : 0 = syncronized to CLKsys. 1 = syncronized to 10MHz clock
length : Marker pulse length (length * clock period * 5)
delay : Delay to add before pulse (delay * clock period * 5)
verbose: boolean indicating verbose mode
"""
result = self.awg.AWGqueueMarkerConfig(
nAWG=channel_number,
markerMode=markerMode,
trgPXImask=trgPXImask,
trgIOmask=trgIOmask,
value=markerValue,
syncMode=syncMode,
length=length,
delay=delay
)
return result_parser(result, verbose)
astafan8 marked this conversation as resolved.
Show resolved Hide resolved

#
# The methods below are useful for controlling the device, but are not
Expand Down