
3-28
Programming
Example Programs
Example Programs
The following example programs are provided in this section:
Example 1. Measure a DFB laser 3-30
Example 2. Measure WDM channels 3-32
Example 3. Measure WDM channel drift 3-34
Example 4. Measure WDM channel separation 3- 37
Example 5. Measure signal- to-noise ratio of each WDM channel 3-39
Example 6. Increase a source’s wavelength accuracy 3-41
These programs are provided to give you examples of using
Agilent 86120C remote programming commands in typical applications.
They are not meant to teach general programming techniques or pro-
vide ready-to-use solutions. They should allow you to see how mea-
surements are performed and how to return data to the computer.
All of the examples are written in the HP BASIC programming lan-
guage.
Many subroutines are repeated in the examples
The first five example programs contain several common subroutines.
These routines, along with one function, are described in the rest of
this introduction. The descriptions are listed in the general order that
the subroutines are called in the programs.
Error_msg subroutine
This function is found in examples 2, 3, 4, and 5. It displays an error
message on the computer’s screen explaining the reason that the pro-
gram’s execution stopped.
Set_ese subroutine
The subroutine sets the enable mask for the event status register to a
value of 52. This allows bits 2, 4, and 5 to be set whenever a query
error (QYE), execution error (EXE), or command error (CME) respec-
tively occurs. All this is accomplished using the *ESE common com-
mand.