EasyManua.ls Logo

Keysight Technologies InfiniiVision MSO-X 4022A

Keysight Technologies InfiniiVision MSO-X 4022A
1580 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
1516 Keysight InfiniiVision 4000 X-Series Oscilloscopes Programmer's Guide
42 Programming Examples
def do_query_values(query):
if debug:
print "Qyv = '%s'" % query
results = InfiniiVision.ask_for_values("%s\n" % query)
check_instrument_errors(query)
return results
# =========================================================
# Check for instrument errors:
# =========================================================
def check_instrument_errors(command):
while True:
error_string = InfiniiVision.ask(":SYSTem:ERRor?\n")
if error_string: # If there is an error string value.
if error_string.find("+0,", 0, 3) == -1: # Not "No error".
print "ERROR: %s, command: '%s'" % (error_string, command)
print "Exited because of error."
sys.exit(1)
else: # "No error"
break
else: # :SYSTem:ERRor? should always return string.
print "ERROR: :SYSTem:ERRor? returned nothing, command: '%s'" % comma
nd
print "Exited because of error."
sys.exit(1)
# =========================================================
# Returns data from definite-length block.
# =========================================================
def get_definite_length_block_data(sBlock):
# First character should be "#".
pound = sBlock[0:1]
if pound != "#":
print "PROBLEM: Invalid binary block format, pound char is '%s'." % po
und
print "Exited because of problem."
sys.exit(1)
# Second character is number of following digits for length value.
digits = sBlock[1:2]
# Get the data out of the block and return it.
sData = sBlock[int(digits) + 2:]
return sData
# =========================================================
# Main program:

Table of Contents

Related product manuals