Example programs for the 33220A may be downloaded below. They are organized into different zip files, depending upon the programming environment:

  • Microsoft ® Visual Basic 6.0
  • ANSI-C / Microsoft ® Visual C 6.0
  • Keysight Technologies VEE
  • Microsoft ® Excel 97 (limited examples)
  • National Instruments LabView

There is also a separate zip file for those programs that are published in the 33220A User's Guide. These same programs are also included in the Visual Basic download.

The example programs are provided solely for the purpose of illustrating a subset of the SCPI (Standard Commands for Programmable Instruments) commands used with the 33220A. They are not to demonstrate the development environment or the IO.

Overview of Example Programs

There are nine (9) example programs included in the 33220A User's Guide Example Programs file. The topics of the example programs have been repeated to illustrate the same functionality with a different development environment and/or IO.

  • SimpleSine: A basic program that selects the waveshape and sets its frequency, amplitude, and offset.
  • Haversine: Uses burst to trigger sinewaves with a phase offset of 270 degrees. Trigger source for this example is the bus.
  • AMLowLevel: Configures a waveform with amplitude modulation using lower-level SCPI commands. Also shows how to use the *SAV command to store the instrument configuration in memory.
  • ASCIIarb: Downloads an arbitrary waveform to the generator as ASCII data. Data values range from -1 to +1. For faster downloads, use BinaryArb.
  • BinaryArb: Downloads an arbitrary waveform to the generator as binary data. Values range from -2047 to +2047. For ASCII data, use ASCIIArb.
  • LinearSweep: Creates a linear sweep for a sinusoid. Sets start and stop frequency, as well as sweep time.
  • Pulse: Configures a pulse waveshape with pulse width, period, and high/low levels. The edge time is incremented.
  • SquareBurst: Modifies the parameters for a square wave, including duty cycle, and outputs a set of three cycles upon receipt of each trigger. Also shows how to enable and disable the SYNC output.
  • PulseWidth: Configures a pulse with duty cycle which is then slowly modulated by a triangle waveform.


You will need to acquire the environment and the IO independent of this download.