302 Keysight Signal Generators Programming Guide
Creating and Downloading Waveform Files 
Programming Examples 
On Error GoTo file_error
 
    For index = 0 To (numPoints)
        data = iq_data(index)
        Put #FileHandle, index + 1, data 'Write the I/Q data to the file
    Next index
 
Close #FileHandle
Call MsgBox("Data written to file " & strFilename, vbOKOnly, "Download")
Exit Sub
file_error:
    MsgBox Err.Description
    Close #FileHandle
End Sub
Downloading I/Q Data
On the signal generator’s documentation CD, this programming example’s name is 
“Download_File_vb.txt.” 
This Visual Basic programming example, using Microsoft Visual Basic 6.0, downloads the file created 
in  “Creating I/Q Data—Little Endian Order” on page 300 into non–volatile memory using a LAN 
connection. To use GPIB, replace the instOpenString object declaration with “GPIB::19::INSTR”. To 
download the data into volatile memory, change the instDestfile declaration to 
“USER/BBG1/WAVEFORM/”.
NOTE The example program listed here uses the VISA COM IO API, which includes the 
WriteIEEEBlock method. This method eliminates the need to format the download command 
with arbitrary block information such as defining number of bytes and byte numbers. Refer 
to  “SCPI Command Line Structure” on page 236 for more information.
This program also includes some error checking to alert you when problems arise while trying to 
download files. This includes checking to see if the file exists.
'*******************************************************************************
' Program Name: Download_File
' Program Description: This program uses Microsoft Visual Basic 6.0 and the Keysight
' VISA COM I/O Library to download a waveform file to the signal generator.
'
' The program downloads a file (the previously created ‘IQ_DataVB’ file) to the signal
' generator. Refer to the Programming Guide for information on binary