User Manual
Table Of Contents
- In This Book
- Contents
- What's New
- Setting Up
- Getting Started
- Basic Oscilloscope Program Structure
- Programming the Oscilloscope
- Referencing the IO Library
- Opening the Oscilloscope Connection via the IO Library
- Initializing the Interface and the Oscilloscope
- Using :AUToscale to Automate Oscilloscope Setup
- Using Other Oscilloscope Setup Commands
- Capturing Data with the :DIGitize Command
- Reading Query Responses from the Oscilloscope
- Reading Query Results into String Variables
- Reading Query Results into Numeric Variables
- Reading Definite-Length Block Query Response Data
- Sending Multiple Queries and Reading Results
- Checking Instrument Status
- Commands Quick Reference
- Common (*) Commands
- *CLS (Clear Status)
- *ESE (Standard Event Status Enable)
- *ESR (Standard Event Status Register)
- *IDN (Identification Number)
- *LRN (Learn Device Setup)
- *OPC (Operation Complete)
- *OPT (Option Identification)
- *RCL (Recall)
- *RST (Reset)
- *SAV (Save)
- *SRE (Service Request Enable)
- *STB (Read Status Byte)
- *TRG (Trigger)
- *TST (Self Test)
- *WAI (Wait To Continue)
- Root (:) Commands
- :AER (Arm Event Register)
- :AUToscale
- :AUToscale:AMODE
- :AUToscale:CHANnels
- :AUToscale:FDEBug
- :BLANk
- :DIGitize
- :MTEenable (Mask Test Event Enable Register)
- :MTERegister[:EVENt] (Mask Test Event Event Register)
- :OPEE (Operation Status Enable Register)
- :OPERegister:CONDition (Operation Status Condition Register)
- :OPERegister[:EVENt] (Operation Status Event Register)
- :OVLenable (Overload Event Enable Register)
- :OVLRegister (Overload Event Register)
- :RUN
- :SERial
- :SINGle
- :STATus
- :STOP
- :TER (Trigger Event Register)
- :VIEW
- :ABUS Commands
- :ACQuire Commands
- :CALibrate Commands
- :CHANnel
Commands - :CHANnel
:BANDwidth - :CHANnel
:BWLimit - :CHANnel
:COUPling - :CHANnel
:DISPlay - :CHANnel
:IMPedance - :CHANnel
:INVert - :CHANnel
:LABel - :CHANnel
:OFFSet - :CHANnel
:PROBe - :CHANnel
:PROBe:HEAD[:TYPE] - :CHANnel
:PROBe:ID - :CHANnel
:PROBe:SKEW - :CHANnel
:PROBe:STYPe - :CHANnel
:PROTection - :CHANnel
:RANGe - :CHANnel
:SCALe - :CHANnel
:UNITs - :CHANnel
:VERNier
- :CHANnel
- :DEMO Commands
- :DISPlay Commands
- :DVM Commands
- :EXTernal Trigger Commands
- :FFT Commands
- :FRANalysis Commands
- :FUNCtion Commands
- :FUNCtion:DISPlay
- :FUNCtion[:FFT]:CENTer
- :FUNCtion[:FFT]:PHASe:REFerence
- :FUNCtion[:FFT]:SPAN
- :FUNCtion[:FFT]:VTYPe
- :FUNCtion[:FFT]:WINDow
- :FUNCtion:FREQuency:LOWPass
- :FUNCtion:GOFT:OPERation
- :FUNCtion:GOFT:SOURce1
- :FUNCtion:GOFT:SOURce2
- :FUNCtion:OFFSet
- :FUNCtion:OPERation
- :FUNCtion:RANGe
- :FUNCtion:REFerence
- :FUNCtion:SCALe
- :FUNCtion:SOURce1
- :FUNCtion:SOURce2
- :HARDcopy Commands
- :MARKer Commands
- :MEASure Commands
- :MEASure:ALL
- :MEASure:BRATe
- :MEASure:CLEar
- :MEASure:COUNter
- :MEASure:DEFine
- :MEASure:DELay
- :MEASure:DUTYcycle
- :MEASure:FALLtime
- :MEASure:FREQuency
- :MEASure:NDUTy
- :MEASure:NWIDth
- :MEASure:OVERshoot
- :MEASure:PERiod
- :MEASure:PHASe
- :MEASure:PREShoot
- :MEASure:PWIDth
- :MEASure:RESults
- :MEASure:RISetime
- :MEASure:SDEViation
- :MEASure:SHOW
- :MEASure:SOURce
- :MEASure:TEDGe
- :MEASure:TVALue
- :MEASure:VAMPlitude
- :MEASure:VAVerage
- :MEASure:VBASe
- :MEASure:VMAX
- :MEASure:VMIN
- :MEASure:VPP
- :MEASure:VRMS
- :MEASure:VTIMe
- :MEASure:VTOP
- :MEASure:WINDow
- :MEASure:XMAX
- :MEASure:XMIN
- :MTESt Commands
- :MTESt:ALL
- :MTESt:AMASk:CREate
- :MTESt:AMASk:SOURce
- :MTESt:AMASk:UNITs
- :MTESt:AMASk:XDELta
- :MTESt:AMASk:YDELta
- :MTESt:COUNt:FWAVeforms
- :MTESt:COUNt:RESet
- :MTESt:COUNt:TIME
- :MTESt:COUNt:WAVeforms
- :MTESt:DATA
- :MTESt:DELete
- :MTESt:ENABle
- :MTESt:LOCK
- :MTESt:RMODe
- :MTESt:RMODe:FACTion:MEASure
- :MTESt:RMODe:FACTion:PRINt
- :MTESt:RMODe:FACTion:SAVE
- :MTESt:RMODe:FACTion:STOP
- :MTESt:RMODe:SIGMa
- :MTESt:RMODe:TIME
- :MTESt:RMODe:WAVeforms
- :MTESt:SCALe:BIND
- :MTESt:SCALe:X1
- :MTESt:SCALe:XDELta
- :MTESt:SCALe:Y1
- :MTESt:SCALe:Y2
- :MTESt:SOURce
- :MTESt:TITLe
- :RECall Commands
- :SAVE Commands
- :SAVE:FILename
- :SAVE:IMAGe[:STARt]
- :SAVE:IMAGe:FACTors
- :SAVE:IMAGe:FORMat
- :SAVE:IMAGe:INKSaver
- :SAVE:IMAGe:PALette
- :SAVE:MASK[:STARt]
- :SAVE:MULTi[:STARt]
- :SAVE:PWD
- :SAVE:SETup[:STARt]
- :SAVE:WAVeform[:STARt]
- :SAVE:WAVeform:FORMat
- :SAVE:WAVeform:LENGth
- :SAVE:WAVeform:LENGth:MAX
- :SAVE:WAVeform:SEGMented
- :SAVE:WMEMory:SOURce
- :SAVE:WMEMory[:STARt]
- :SBUS
Commands - General :SBUS
Commands - :SBUS
:CAN Commands - :SBUS
:CAN:COUNt:ERRor - :SBUS
:CAN:COUNt:OVERload - :SBUS
:CAN:COUNt:RESet - :SBUS
:CAN:COUNt:TOTal - :SBUS
:CAN:COUNt:UTILization - :SBUS
:CAN:SAMPlepoint - :SBUS
:CAN:SIGNal:BAUDrate - :SBUS
:CAN:SIGNal:DEFinition - :SBUS
:CAN:SOURce - :SBUS
:CAN:TRIGger - :SBUS
:CAN:TRIGger:PATTern:DATA - :SBUS
:CAN:TRIGger:PATTern:DATA:LENGth - :SBUS
:CAN:TRIGger:PATTern:ID - :SBUS
:CAN:TRIGger:PATTern:ID:MODE
- :SBUS
- :SBUS
:IIC Commands - :SBUS
:LIN Commands - :SBUS
:SPI Commands - :SBUS
:SPI:BITorder - :SBUS
:SPI:CLOCk:SLOPe - :SBUS
:SPI:CLOCk:TIMeout - :SBUS
:SPI:FRAMing - :SBUS
:SPI:SOURce:CLOCk - :SBUS
:SPI:SOURce:FRAMe - :SBUS
:SPI:SOURce:MISO - :SBUS
:SPI:SOURce:MOSI - :SBUS
:SPI:TRIGger:PATTern:MISO:DATA - :SBUS
:SPI:TRIGger:PATTern:MISO:WIDTh - :SBUS
:SPI:TRIGger:PATTern:MOSI:DATA - :SBUS
:SPI:TRIGger:PATTern:MOSI:WIDTh - :SBUS
:SPI:TRIGger:TYPE - :SBUS
:SPI:WIDTh
- :SBUS
- :SBUS
:UART Commands - :SBUS
:UART:BASE - :SBUS
:UART:BAUDrate - :SBUS
:UART:BITorder - :SBUS
:UART:COUNt:ERRor - :SBUS
:UART:COUNt:RESet - :SBUS
:UART:COUNt:RXFRames - :SBUS
:UART:COUNt:TXFRames - :SBUS
:UART:FRAMing - :SBUS
:UART:PARity - :SBUS
:UART:POLarity - :SBUS
:UART:SOURce:RX - :SBUS
:UART:SOURce:TX - :SBUS
:UART:TRIGger:BASE - :SBUS
:UART:TRIGger:BURSt - :SBUS
:UART:TRIGger:DATA - :SBUS
:UART:TRIGger:IDLE - :SBUS
:UART:TRIGger:QUALifier - :SBUS
:UART:TRIGger:TYPE - :SBUS
:UART:WIDTh
- :SBUS
- General :SBUS
- :SYSTem Commands
- :SYSTem:DATE
- :SYSTem:DSP
- :SYSTem:ERRor
- :SYSTem:LOCK
- :SYSTem:MENU
- :SYSTem:PERSona[:MANufacturer]
- :SYSTem:PERSona[:MANufacturer]:DEFault
- :SYSTem:PRESet
- :SYSTem:PROTection:LOCK
- :SYSTem:RLOGger
- :SYSTem:RLOGger:DESTination
- :SYSTem:RLOGger:DISPlay
- :SYSTem:RLOGger:FNAMe
- :SYSTem:RLOGger:STATe
- :SYSTem:RLOGger:TRANsparent
- :SYSTem:RLOGger:WMODe
- :SYSTem:SETup
- :SYSTem:TIME
- :TIMebase Commands
- :TRIGger Commands
- :WAVeform Commands
- :WAVeform:BYTeorder
- :WAVeform:COUNt
- :WAVeform:DATA
- :WAVeform:FORMat
- :WAVeform:POINts
- :WAVeform:POINts:MODE
- :WAVeform:PREamble
- :WAVeform:SEGMented:COUNt
- :WAVeform:SEGMented:TTAG
- :WAVeform:SOURce
- :WAVeform:SOURce:SUBSource
- :WAVeform:TYPE
- :WAVeform:UNSigned
- :WAVeform:VIEW
- :WAVeform:XINCrement
- :WAVeform:XORigin
- :WAVeform:XREFerence
- :WAVeform:YINCrement
- :WAVeform:YORigin
- :WAVeform:YREFerence
- :WGEN Commands
- :WGEN:FREQuency
- :WGEN:FUNCtion
- :WGEN:FUNCtion:PULSe:WIDTh
- :WGEN:FUNCtion:RAMP:SYMMetry
- :WGEN:FUNCtion:SQUare:DCYCle
- :WGEN:MODulation:AM:DEPTh
- :WGEN:MODulation:AM:FREQuency
- :WGEN:MODulation:FM:DEViation
- :WGEN:MODulation:FM:FREQuency
- :WGEN:MODulation:FSKey:FREQuency
- :WGEN:MODulation:FSKey:RATE
- :WGEN:MODulation:FUNCtion
- :WGEN:MODulation:FUNCtion:RAMP:SYMMetry
- :WGEN:MODulation:NOISe
- :WGEN:MODulation:STATe
- :WGEN:MODulation:TYPE
- :WGEN:OUTPut
- :WGEN:OUTPut:LOAD
- :WGEN:OUTPut:POLarity
- :WGEN:PERiod
- :WGEN:RST
- :WGEN:VOLTage
- :WGEN:VOLTage:HIGH
- :WGEN:VOLTage:LOW
- :WGEN:VOLTage:OFFSet
- :WMEMory
Commands - Obsolete and Discontinued Commands
- :CHANnel:LABel
- :CHANnel2:SKEW
- :CHANnel
:INPut - :CHANnel
:PMODe - :DISPlay:CONNect
- :ERASe
- :EXTernal:PMODe
- :FUNCtion:SOURce
- :FUNCtion:VIEW
- :HARDcopy:DESTination
- :HARDcopy:FILename
- :HARDcopy:GRAYscale
- :HARDcopy:IGColors
- :HARDcopy:PDRiver
- :MEASure:LOWer
- :MEASure:SCRatch
- :MEASure:TDELta
- :MEASure:THResholds
- :MEASure:TMAX
- :MEASure:TMIN
- :MEASure:TSTArt
- :MEASure:TSTOp
- :MEASure:TVOLt
- :MEASure:UPPer
- :MEASure:VDELta
- :MEASure:VSTArt
- :MEASure:VSTOp
- :MTESt:AMASk:{SAVE | STORe}
- :MTESt:AVERage
- :MTESt:AVERage:COUNt
- :MTESt:LOAD
- :MTESt:RUMode
- :MTESt:RUMode:SOFailure
- :MTESt:{STARt | STOP}
- :MTESt:TRIGger:SOURce
- :PRINt?
- :SAVE:IMAGe:AREA
- :TIMebase:DELay
- :TRIGger:TV:TVMode
- Error Messages
- Status Reporting
- Status Reporting Data Structures
- Status Byte Register (STB)
- Service Request Enable Register (SRE)
- Trigger Event Register (TER)
- Output Queue
- Message Queue
- (Standard) Event Status Register (ESR)
- (Standard) Event Status Enable Register (ESE)
- Error Queue
- Operation Status Event Register (:OPERegister[:EVENt])
- Operation Status Condition Register (:OPERegister:CONDition)
- Arm Event Register (AER)
- Overload Event Register (:OVLRegister)
- Mask Test Event Event Register (:MTERegister[:EVENt])
- Clearing Registers and Queues
- Status Reporting Decision Chart
- Synchronizing Acquisitions
- More About Oscilloscope Commands
- Programming Examples
- Index
Programming Examples 36
Keysight InfiniiVision 1000 X-Series Oscilloscopes Programmer's Guide 871
# =========================================================
InfiniiVision = visa.instrument("USB0::0x2A8D::0x1797::CN56240004::0::IN
STR")
InfiniiVision.timeout = 15
InfiniiVision.term_chars = ""
InfiniiVision.clear()
# Initialize the oscilloscope, capture data, and analyze.
initialize()
capture()
analyze()
print "End of program."
VISA Example in Python (PyVISA 1.6 and newer)
You can use the Python programming language with the PyVISA package to
control Keysight Infiniium Series oscilloscopes.
The Python language and PyVISA package can be downloaded from the web at
http://www.python.org/ and http://pyvisa.readthedocs.org/, respectively.
To run this example with Python and PyVISA:
1 Cut-and-paste the code that follows into a file named "example.py".
2 Edit the program to use the VISA address of your oscilloscope.
3 If "python.exe" can be found via your PATH environment variable, open a
Command Prompt window; then, change to the folder that contains the
"example.py" file, and enter:
python example.py
# *********************************************************
# This program illustrates a few commonly-used programming
# features of your Keysight oscilloscope.
# *********************************************************
# Import modules.
# ---------------------------------------------------------
import visa
import string
import struct
import sys
# Global variables (booleans:0=False, 1 = True).
# ---------------------------------------------------------
debug = 0
# =========================================================
# Initialize:
# =========================================================
def initialize():










