Commit 7d9fd5e7 authored by Peter Jansweijer's avatar Peter Jansweijer

Merge branch 'peter_insitu_alpha' into proposed_master

Conflicts:
	sw/insitu_alpha/analyze_sellmeier.py
parents a6f79c6f 29db66a2
......@@ -46,8 +46,8 @@ lib_path = os.path.join(lib_path,"..")
sys.path.insert(0,lib_path)
# private imports:
import lib.LeCroy8254 as DSO
#import lib.Keysight_DSO_S_254A as DSO
#import lib.LeCroy8254 as DSO
import lib.Keysight_DSO_S_254A as DSO
#import lib.Agilent_DSO6104A as DSO
import lib.pat_gen as pat_gen
import lib.delay_determination as dd
......@@ -195,7 +195,18 @@ if __name__ == "__main__":
# Initialize oscilloscope
# Use Channel 1 pulse input
# use Channel 3-4 Ethernet Frame input
DSO.osc_init(scope, args.timebase)
init = { \
'channel' : [ 1 , 0 , 1 , 1 ], \
'offset' : [ 0.0 , 0.0, 0.0 , 0.0 ], \
'volt_div' : [ 0.1 , 1.0, 0.25, 0.25 ], \
'50ohm' : [ 1 , 0 , 1 , 1 ], \
'trig' : [ 1 ], \
'trig_level' : [ 0.15 ], \
'timebase' : [ float(args.timebase) ], \
'refclk' : [ 'ext' ], \
}
DSO.osc_init(scope, init)
meas, samples, sample_period, first_filename, last_filename = average_edge_to_edge(scope, num_meas=args.m, expect_max=args.peak, estimate=args.delay, tolerance=args.tol)
......
......@@ -80,8 +80,8 @@ lib_path = os.path.join(lib_path,"..")
sys.path.insert(0,lib_path)
# private imports:
import lib.LeCroy8254 as DSO
#import lib.Keysight_DSO_S_254A as DSO
#import lib.LeCroy8254 as DSO
import lib.Keysight_DSO_S_254A as DSO
#import lib.Agilent_DSO6104A as DSO
import lib.pat_gen as pat_gen
import lib.delay_determination as dd
......@@ -313,7 +313,17 @@ if __name__ == "__main__":
# Initialize oscilloscope
# Use Channel 1 pulse input
# use Channel 3-4 Ethernet Frame input
DSO.osc_init(scope, args.timebase)
init = { \
'channel' : [ 1 , 0 , 1 , 1 ], \
'offset' : [ 0.0 , 0.0, 0.0 , 0.0 ], \
'volt_div' : [ 0.25, 1.0, 0.1 , 0.1 ], \
'50ohm' : [ 1 , 0 , 1 , 1 ], \
'trig' : [ 1 ], \
'trig_level' : [ 0.15 ], \
'timebase' : [ float(args.timebase) ], \
'refclk' : [ 'ext' ], \
}
DSO.osc_init(scope, init)
edge_to_sfd, samples, sample_period, first_filename, last_filename = average_edge_to_sfd(scope, num_meas=args.m, bit_width=args.bitwidth, expect_max_edge=args.edge, expect_max_sfd=args.sfd, estimate=args.delay, tolerance=args.tol)
print("Samples:",samples)
......
This diff is collapsed.
This diff is collapsed.
electrical to optical and vice versa scripts
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
......@@ -21,8 +21,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>
-------------------------------------------------------------------------------
Usage:
calc_difff.py -name DeltaDelay_meas -nameref DeltaDelay_meas_ref [-o <dir>]
calc_difff.py -h | --help
calc_diff.py -name DeltaDelay_meas -nameref DeltaDelay_meas_ref [-o <dir>]
calc_diff.py -h | --help
Options:
-h --help Show this screen.
......@@ -48,7 +48,7 @@ import pdb
def save_plot(out_file, name, nameref, measurement_str, measurement_lst, outliers):
"""
outfile <file> handle to outfput file
outfile <file> handle to output file
name <str> name of the input file (with fiber spool PPS skew measurements)
nameref <str> name of the input file (with reference setup PPS skew measurements)
measurement_str <str> processed measurement
......@@ -112,7 +112,7 @@ Options:
"""
if __name__ == "__main__":
#arguments = docopt(__doc__,version='White Rabbit controled via serial port')
#arguments = docopt(__doc__,version='White Rabbit controlled via serial port')
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("name", help="file containing DeltaDelay_measurement results")
......
This diff is collapsed.
This diff is collapsed.
......@@ -108,15 +108,15 @@ def timeout(func, args=(), kwargs={}, timeout_duration=1, default=None):
###############################################
def wr2wrpc(ser, cmd, prompt="slv=>"):
ser.write("\r")
ser.write(bytes("\r", 'utf-8'))
time.sleep (0.1)
ser.flushInput()
for i in range(len(cmd)):
ser.write(cmd[i])
ser.write(bytes(cmd[i], 'utf-8'))
time.sleep (0.1)
time.sleep (0.5)
ser.readline() # Readback command
ser.readline().decode('utf-8') # Readback command
print(prompt + cmd)
......@@ -172,7 +172,7 @@ def wait_for_track_phase(ser_slave):
crtt = 0
while not sync_phase: # First wait for "SYNC_PHASE" state
stat = ser_slave.readline() # Readback status line
stat = ser_slave.readline().decode('utf-8') # Readback status line
stat_lst = stat.split(' ') # split on spaces
#print("Waiting for SYNC_PHASE:")
......@@ -186,7 +186,7 @@ def wait_for_track_phase(ser_slave):
err_cnt = 0
while not track_phase: # then wait for "SYNC_PHASE" state
stat = ser_slave.readline() # Readback status line
stat = ser_slave.readline().decode('utf-8') # Readback status line
stat_lst = stat.split(' ') # split on spaces
#print("Waiting for TRACK_PHASE:")
......@@ -208,10 +208,10 @@ def wait_for_track_phase(ser_slave):
print("### retry ptp stop, start...")
# stop any pending ptp and restart
wr2wrpc(ser_slave,"ptp stop\r","slv=>")
print(ser_slave.readline())
print(ser_slave.readline().decode('utf-8'))
wr2wrpc(ser_slave,"ptp start\r","slv=>")
print(ser_slave.readline())
print(ser_slave.readline())
print(ser_slave.readline().decode('utf-8'))
print(ser_slave.readline().decode('utf-8'))
err_cnt = 0 # new attempt re-start counting errors
#break # break if not in "stat" output modus
else:
......@@ -234,7 +234,7 @@ def get_statusline(ser_slave):
stat_lst = []
while len(stat_lst) < 27: # Keep reading until
stat = ser_slave.readline() # Readback valid status line
stat = ser_slave.readline().decode('utf-8') # Readback valid status line
stat_lst = stat.split(' ') # split on spaces
return(stat_lst)
......@@ -369,24 +369,24 @@ if __name__ == "__main__":
# stop any pending ptp and or statistics output
wr2wrpc(ser_master,"stat off\r","mst=>")
print(ser_master.readline())
print(ser_master.readline().decode('utf-8'))
wr2wrpc(ser_slave,"stat off\r","slv=>")
print(ser_slave.readline())
print(ser_slave.readline().decode('utf-8'))
wr2wrpc(ser_slave,"ptp stop\r","slv=>")
# Set Master dTx = fixed delay (dTx+dRx), dRx = 0, alpha = 0
wr2wrpc(ser_tunable,"sfp erase\r",ser_tunable_str)
wr2wrpc(ser_tunable,"sfp add "+sfp_module_vendor_id+" "+str(fixed_delay_mst)+" 0 0\r",ser_tunable_str)
print(ser_tunable.readline())
print(ser_tunable.readline().decode('utf-8'))
wr2wrpc(ser_tunable,"sfp match\r",ser_tunable_str)
print(ser_tunable.readline())
print(ser_tunable.readline().decode('utf-8'))
# Set Slave dTx = fixed delay (dTx+dRx), dRx = 0, alpha = 0
wr2wrpc(ser_slave,"sfp erase\r","slv=>")
wr2wrpc(ser_slave,"sfp add "+vendor_id_slv+" "+str(fixed_delay_slv)+" 0 0\r","slv=>")
print(ser_slave.readline())
print(ser_slave.readline().decode('utf-8'))
wr2wrpc(ser_slave,"sfp match\r","slv=>")
print(ser_slave.readline())
print(ser_slave.readline().decode('utf-8'))
wr2wrpc(ser_tunable,"sfp sel_page2\r",ser_tunable_str)
......@@ -399,12 +399,12 @@ if __name__ == "__main__":
filename=output_dir+time.strftime(format("%y%m%d_%H_%M_%S"),timestamp)+"_insitu_alpha_scan"
print("save insitu_alpha_scan into file:",filename)
data_file = open(filename,"w")
data_file = open(filename,"wb")
data_file.write("#In Situ Alpha measurements\n")
data_file.write("#date:"+time.strftime(format("%d %b %Y"),timestamp)+"\n")
data_file.write("#time:"+time.strftime(format("%H:%M:%S"),timestamp)+"\n")
data_file.write("#sfp_channel, ITU channel, ITU wavelength, crtt [ps], drxm, drxs, fiber-spool-temp, wr-slave-temp\n")
data_file.write(("#In Situ Alpha measurements\n").encode())
data_file.write(("#date:"+time.strftime(format("%d %b %Y"),timestamp)+"\n").encode())
data_file.write(("#time:"+time.strftime(format("%H:%M:%S"),timestamp)+"\n").encode())
data_file.write(("#sfp_channel, ITU channel, ITU wavelength, crtt [ps], drxm, drxs, fiber-spool-temp, wr-slave-temp\n").encode())
# scan through selected wavelengths
for ch in numpy.arange(itu_channel_start,itu_channel_stop+0.5, itu_channel_increment):
......@@ -419,9 +419,10 @@ if __name__ == "__main__":
# select a wavelength
wr2wrpc(ser_tunable,"sfp wr_ch " + str(sfp_ch) + "\r",ser_tunable_str)
print(ser_tunable.readline())
print(ser_tunable.readline().decode('utf-8'))
wr2wrpc(ser_tunable,"sfp rd_ch\r",ser_tunable_str)
print(ser_tunable.readline())
print(ser_tunable.readline().decode('utf-8'))
restart = 0
while restart < restarts:
......@@ -454,7 +455,7 @@ if __name__ == "__main__":
else:
#stat_lst = []
#while len(stat_lst) < 27: # Keep reading until
# stat = ser_slave.readline() # Readback valid status line
# stat = ser_slave.readline().decode('utf-8') # Readback valid status line
# stat_lst = stat.split(' ') # split on spaces
#pdb.set_trace()
......@@ -472,7 +473,7 @@ if __name__ == "__main__":
curr_temp = float(stat_lst[stat_lst.index('temp:')+1])
crtt.append(curr_crtt)
if meas_number == 0: # first measurment loads bitslide check valiables
if meas_number == 0: # first measurement loads bitslide check valiables
check_drxm = curr_drxm
check_drxs = curr_drxs
meas_number = meas_number + 1
......@@ -501,8 +502,8 @@ if __name__ == "__main__":
if args.t != None: # open and configure Digital Multimeter with attached PT100
spool_temp =float(dmm.ask("MEAS:TEMP? FRTD"))
print("sfp_channel: ", sfp_ch ,"itu_channel: ", ch ,"crtt avarage over "+str(crtt_measurement)+" measurments: "+str(crtt_mean)+" fiber-spool temp: "+str(spool_temp))
data_file.write(str(sfp_ch)+", "+str(ch)+", "+str(wavelength)+", "+str(crtt_mean)+", "+str(curr_drxm)+", "+str(curr_drxs)+", "+str(spool_temp)+", "+str(curr_temp)+"\n")
print("sfp_channel: ", sfp_ch ,"itu_channel: ", ch ,"crtt average over "+str(crtt_measurement)+" measurements: "+str(crtt_mean)+" fiber-spool temp: "+str(spool_temp))
data_file.write((str(sfp_ch)+", "+str(ch)+", "+str(wavelength)+", "+str(crtt_mean)+", "+str(curr_drxm)+", "+str(curr_drxs)+", "+str(spool_temp)+", "+str(curr_temp)+"\n").encode())
except:
print ("### exception during crtt_measurements.")
......
This diff is collapsed.
......@@ -136,19 +136,10 @@ def get_waveforms(scope, channels=[1,2,3,4], num_avg=1, output_dir="data"):
file_header += str(chan)+","
file_header += "\n"
# Windows filenames cannot handle the datetime "micro second timing" format.
micro_second_timing = False
if micro_second_timing:
timestamp = datetime.datetime.now() #micro seconds timing
filename = output_dir+timestamp.strftime("%y%m%dT%H:%M:%S.%f")+"_scope_keysight_dso_s_254A_bin"
file_header += "#date:"+timestamp.strftime("%d %b %Y")+"\n"
file_header += "#time:"+timestamp.strftime("%H:%M:%S")+"\n"
else:
timestamp = time.localtime()
filename=output_dir+time.strftime(format("%y%m%d_%H_%M_%S"),timestamp)+"_scope_keysight_dso_s_254A_bin"
file_header += "#date:"+time.strftime(format("%d %b %Y"),timestamp)+"\n"
file_header += "#time:"+time.strftime(format("%H:%M:%S"),timestamp)+"\n"
timestamp = datetime.datetime.now() #micro seconds timing
filename = output_dir+timestamp.strftime("%y%m%dT%H%M%S_%f")+"_scope_keysight_dso_s_254A_bin"
file_header += "#date:"+timestamp.strftime("%d %b %Y")+"\n"
file_header += "#time:"+timestamp.strftime("%H:%M:%S")+"\n"
print("save waveform into file:",filename)
......@@ -526,56 +517,87 @@ def file_to_waveform(filename):
return waveform_data
############################################################################
def osc_init(scope, time_base = 50.0e-9):
def osc_init(scope, init):
"""
Initialize the Oscilloscope for the timestamp edge to SFD measurement.
Initialize the KEYSIGHT TECHNOLOGIES,DSO
scope -- instance of python-vxi connected to the oscilloscope
time_base -- <float> time base, default 50 ns/div
init -- <dict> for example:
init = { \
'channel' : [ 1 , 0 , 1 , 0 ], \
'offset' : [ 0.0, 0.0, 0.0 , 0.0 ], \
'volt_div' : [ 0.5, 1.0, 0.125, 1.0 ], \
'50ohm' : [ 1 , 0 , 1 , 0 ], \
#'sinxx' : [ 0 , 0 , 0 , 0 ], \
'trig' : [ 1 ], \
'trig_level' : [ 0.14 ], \
'timebase' : [ 50e-9 ], \
'refclk' : [ 'ext' ], \
"""
#scope = vxi11.Instrument("192.168.32.248")
print(scope.ask("*IDN?"))
# Returns 'KEYSIGHT TECHNOLOGIES,DSOS254A,MY55160101,05.50.0004'
# Use Channel 1 pulse input
# use Channel 3 Ethernet Frame input
# A fixed trigger level is important for proper timing measurement
# Choose 1.4 Volt for a direct signal but 0.8 Volt when the signal
# is split by a power splitter
scope.write(":TRIGger:EDGE:SOURce CHANnel1")
# Initialize the oscilloscope trigger
scope.write(":TRIGger:SWEep TRIGgered")
trig = str(init['trig'][0])
triglevel = str(float(init['trig_level'][0]))
scope.write(":TRIGger:EDGE:SOURce CHANnel"+ trig)
scope.write(":TRIGger:LEVel CHANnel"+ trig + ", " + triglevel)
use_power_splitter = True
if use_power_splitter:
scope.write(":TRIGger:LEVel CHANnel1, 0.4")
scope.write(":CHANnel1:RANGe 4.0") # 500 mV/div
else:
scope.write(":TRIGger:LEVel CHANnel1, 0.7")
scope.write(":CHANnel1:RANGe 6.0") # 750 mV/div
scope.write(":CHANnel1:INPut DCFifty")
scope.write(":CHANnel1:OFFSet 0.0")
"""
# For Keysight sinxx interpolation is a "Horizontal" setting that
# applies to all enabled channels! Default = False
sinxx = False
"""
scope.write(":CHANnel3:INPut DCFifty")
scope.write(":CHANnel3:OFFSet 0.0")
scope.write(":CHANnel3:RANGe 1.0") # 125 mV/div
scope.write(":CHANnel4:INPut DCFifty")
scope.write(":CHANnel4:OFFSet 0.0")
scope.write(":CHANnel4:RANGe 1.0") # 125 mV/div
for ch in range(4):
# Set channel ON/OFF
if init['channel'][ch] == 1:
scope.write(":CHANnel" + str(ch+1) + ":DISPlay ON")
else:
scope.write(":CHANnel" + str(ch+1) + ":DISPlay OFF")
# Set channel Offset
scope.write(":CHANnel" + str(ch+1) + ":OFFSet " + str(float(init['offset'][ch])))
# Set channel Volt/Div
volt_div = float(init['volt_div'][ch]/0.125) # Volt/Div is per 125 mV
scope.write(":CHANnel" + str(ch+1) + ":RANGe " + str(volt_div))
# Set channel Coupling
#'50ohm' : [ 1 , 0 , 1 , 0 ], \
if init['50ohm'][ch] == 1:
scope.write(":CHANnel" + str(ch+1) + ":INPut DCFifty")
else:
scope.write(":CHANnel" + str(ch+1) + ":INPut DC")
"""
# Set Interpolation for all used channels to "16 point Sin(x)/x"
#'sinxx' : [ 1 , 0 , 1 , 0 ], \
# Check if one of the channels is set to sinxx then enable sinxx for all
if init['sinxx'][ch] == 1:
sinxx = True
if sinxx:
scope.write(":ACQuire:INTerpolate INT16")
else:
scope.write(":ACQuire:INTerpolate OFF")
"""
# Trigger in the centre of the screen; important for maximum estimations
# forwarded to function average_edge_to_sfd
# Trigger in the centre of the screen and set timebase
scope.write(":TIMebase:DELay 0")
scope.write(":TIMebase:RANGe "+str(10*time_base)) # set 50 ns/div
scope.write(":TIMebase:REFClock ON") # set external refrence clock
scope.write(":TIMebase:RANGe "+str(10*float(init['timebase'][0]))) # set 50 ns/div
return
# Set internal/external 10 MHz timebase
if init['refclk'][0] == 'ext':
scope.write(":TIMebase:REFClock ON")
else:
scope.write(":TIMebase:REFClock OFF")
return
############################################################################
##
## If run from commandline, we can test the library
......
......@@ -41,6 +41,7 @@ import sys
import time
import scipy
import struct
import datetime
import pdb
#TJP: installed from web python-vxi Alex
......@@ -135,16 +136,20 @@ def get_waveforms(scope, channels=[1,2,3,4],num_avg=1,output_dir="data"):
os.mkdir(output_dir)
print("Output directory does not exist => created: "+output_dir)
timestamp = time.localtime()
filename = output_dir+time.strftime(format("%y%m%d_%H_%M_%S"),timestamp)+"_LeCroy8254_bin"
print("save LeCroy8254 Waveform into file:",filename)
file_header = "#WaveformData:LeCroy8254\n"
file_header += "#version:0.2\n"
file_header += "#type:RAW\n"
file_header += "#channel:"+str(channels)+"\n"
file_header += "#date:"+time.strftime(format("%d %b %Y"),timestamp)+"\n"
file_header += "#time:"+time.strftime(format("%H:%M:%S"),timestamp)+"\n"
#file_header += "#date:"+time.strftime(format("%d %b %Y"),timestamp)+"\n"
#file_header += "#time:"+time.strftime(format("%H:%M:%S"),timestamp)+"\n"
timestamp = datetime.datetime.now() #micro seconds timing
filename = output_dir+timestamp.strftime("%y%m%dT%H%M%S_%f")+"_LeCroy8254_bin"
file_header += "#date:"+timestamp.strftime("%d %b %Y")+"\n"
file_header += "#time:"+timestamp.strftime("%H:%M:%S")+"\n"
print("save LeCroy8254 Waveform into file:",filename)
file_header += "#byteorder:LSBFIRST\n"
channel_preamble = []
channel_descriptor = []
......@@ -700,55 +705,74 @@ def file_to_waveform(filename):
return waveform_data
############################################################################
def osc_init(scope, time_base = 50.0e-9):
def osc_init(scope, init):
"""
Initialize the Oscilloscope for the timestamp edge to SFD measurement.
Initialize the LeCroy,DSO
scope -- instance of python-vxi connected to the oscilloscope
time_base -- <float> time base, default 50 ns/div
init -- <dict> for example:
init = { \
'channel' : [ 1 , 0 , 1 , 0 ], \
'offset' : [ 0.0, 0.0, 0.0 , 0.0 ], \
'volt_div' : [ 0.5, 1.0, 0.125, 1.0 ], \
'50ohm' : [ 1 , 0 , 1 , 0 ], \
#'sinxx' : [ 0 , 0 , 0 , 0 ], \
'trig' : [ 1 ], \
'trig_level' : [ 0.14 ], \
'timebase' : [ 50e-9 ], \
'refclk' : [ 'ext' ], \
"""
#scope = vxi11.Instrument("192.168.32.243")
#scope = vxi11.Instrument("192.168.32.248")
print(scope.ask("*IDN?"))
# Returns '*IDN LECROY,HDO4034-MS,LCRY-HDO,7.9.0'
# Use Channel 1 pulse input
# use Channel 3 Ethernet Frame input
# A fixed trigger level is important for proper timing measurement
# MiniCircuits Splitters ZFRSC-123+ have ~ 6 + 3,75 dB attenuation (~ factor 3).
# A 2,4 V signal split once results in 0,8 V, slit twice in 260 mV.
scope.write("TRIG_SELECT EDGE,SR,C1")
use_power_splitter = True
if use_power_splitter:
scope.write("C1:TRIG_LEVEL 0.15")
scope.write("C1:Volt_DIV 0.25")
else:
scope.write("C1:TRIG_LEVEL 0.3")
scope.write("C1:Volt_DIV 0.5")
scope.write("C1:COUPLING D50")
scope.write("C1:OFFSET 0.0")
scope.write("VBS 'app.Acquisition.C1.InterpolateType = \"sinxx\"'")
scope.write("C3:COUPLING D50")
scope.write("C3:OFFSET 0.0")
scope.write("C3:Volt_DIV 0.25")
scope.write("VBS 'app.Acquisition.C3.InterpolateType = \"sinxx\"'")
scope.write("C4:COUPLING D50")
scope.write("C4:OFFSET 0.0")
scope.write("C4:Volt_DIV 0.25")
scope.write("VBS 'app.Acquisition.C4.InterpolateType = \"sinxx\"'")
# Returns 'LECROY,WAVERUNNER8254M-MS,LCRY4253N20398,8.4.1'
# Initialize the oscilloscope trigger
trig = str(init['trig'][0])
triglevel = str(float(init['trig_level'][0]))
scope.write("TRIG_SELECT EDGE,SR,C" + trig)
scope.write("C" + trig + ":TRIG_LEVEL " + triglevel)
for ch in range(4):
# Set channel ON/OFF
if init['channel'][ch] == 1:
scope.write("C" + str(ch+1) + ":TRACE ON")
else:
scope.write("C" + str(ch+1) + ":TRACE OFF")
# Set channel Offset
scope.write("C" + str(ch+1) + ":OFFSET " + str(float(init['offset'][ch])))
# Set channel Volt/Div
volt_div = float(init['volt_div'][ch])
scope.write("C" + str(ch+1) + ":Volt_DIV " + str(volt_div))
# Set channel Coupling
#'50ohm' : [ 1 , 0 , 1 , 0 ], \
if init['50ohm'][ch] == 1:
scope.write("C" + str(ch+1) + ":COUPLING D50")
else:
scope.write("C" + str(ch+1) + ":COUPLING D1M")
"""
# Set Interpolation for all used channels to "Compatible Mode 10"
#'sinxx' : [ 1 , 0 , 1 , 0 ], \
if init['sinxx'][ch] == 1:
scope.write("VBS 'app.Acquisition.C" + str(ch+1) + ".InterpolateType = \"sinxx\"'")
else:
scope.write("VBS 'app.Acquisition.C" + str(ch+1) + ".InterpolateType = \"linear\"'")
"""
# Trigger in the centre of the screen; important for maximum estimations
# forwarded to function average_edge_to_sfd
# Trigger in the centre of the screen and set timebase
scope.write("TRIG_DELAY 0 ns")
scope.write("TIME_DIV "+str(time_base)) # set 50 ns/div
scope.write("REFERENCE_CLOCK EXTERNAL") # set external refrence clock
scope.write("TIME_DIV "+str(float(init['timebase'][0])))
# Set internal/external 10 MHz timebase
if init['refclk'][0] == 'ext':
scope.write("REFERENCE_CLOCK EXTERNAL")
else:
scope.write("REFERENCE_CLOCK INTERNAL")
return
......@@ -789,7 +813,8 @@ if __name__ == "__main__":
# Set Interpolation for all used channels to "Compatible Mode 10"
for chan in args.channels:
scope.write("VBS 'app.Acquisition.C" + str(chan) + ".InterpolateType = \"sinxx\"'")
#scope.write("VBS 'app.Acquisition.C" + str(chan) + ".InterpolateType = \"sinxx\"'")
pass
#print("VBS 'app.Acquisition.C" + str(chan) + ".InterpolateType = \"sinxx\"'")
# Use Channel 1 pulse input
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment