736 Agilent InfiniiVision 5000 Series Oscilloscopes Programmer's Guide
12 Programming Examples
' data is saved to a file in the local file system.
Console.WriteLine("Transferring screen image to " _
+ "c:\scope\data\screen.png")
If File.Exists("c:\scope\data\screen.png") Then
File.Delete("c:\scope\data\screen.png")
End If
' Increase I/O timeout to fifteen seconds.
oscp.SetTimeoutSeconds(15)
' Get the screen data in PNG format.
nLength = _
oscp.DoQueryIEEEBlock(":DISPlay:DATA? PNG, SCReen, COLor", _
ResultsArray)
Console.WriteLine("Read screen image ({0} bytes).", nLength)
' Store the screen data in a file.
File.WriteAllBytes("c:\scope\data\screen.png", ResultsArray)
Console.WriteLine("Wrote screen image ({0} bytes) to file.", _
nLength)
' Return I/O timeout to five seconds.
oscp.SetTimeoutSeconds(5)
' MEASURE - The commands in the MEASURE subsystem are used to
' make measurements on displayed waveforms.
' Set source to measure.
oscp.DoCommand(":MEASure:SOURce CHANnel1")
' Query for frequency.
Dim fResults As Double
fResults = oscp.DoQueryValue(":MEASure:FREQuency?")
Console.WriteLine("The frequency is: {0:F4} kHz", _
fResults / 1000)
' Query for peak to peak voltage.
fResults = oscp.DoQueryValue(":MEASure:VPP?")
Console.WriteLine("The peak to peak voltage is: {0:F2} V", _
fResults)
' WAVEFORM_DATA - Get waveform data from oscilloscope. To
' obtain waveform data, you must specify the WAVEFORM
' parameters for the waveform data prior to sending the
' ":WAVEFORM:DATA?" query.
'
' Once these parameters have been sent, the
' ":WAVEFORM:PREAMBLE?" query provides information concerning
' the vertical and horizontal scaling of the waveform data.
'
' With the preamble information you can then use the
' ":WAVEFORM:DATA?" query and read the data block in the
' correct format.
' WAVE_FORMAT - Sets the data transmission mode for waveform
' data output. This command controls how the data is
' formatted when sent from the oscilloscope and can be set