This document contains proprietary information that is
protected by copyright. All rights are reserved.
No part of this document may reproduced in (including
electronic storage and retrieval or translation into a
foreign language) without prior agreement and written
consent from Agilent Technologies Deutschland GmbH as
governed by United States and international copywright
laws.
Copyright 1999 - 2001 by:
Agilent Technologies Deutschland GmbH
Herrenberger Str. 130
71034 Böblingen
Germany
Subject Matter
The material in this document is subject to change without
notice.
Agilent Technologies makes no warranty of any kind
with regard to this printed material, including, but not
limited to, the implied warranties of merchantability
and fitness for a particular purpose.
Agilent Technologies shall not be liable for errors
contained herein or for incidental or consequential
damages in connection with the furnishing, performance,
or use of this material.
Printing History
New editions are complete revisions of the guide
reflecting alterations in the functionality of the instrument.
Updates are occasionally made to the guide between
editions. The date on the title page changes when an
updated guide is published. To find out the current
revision of the guide, or to purchase an updated guide,
contact your Agilent Technologies representative.
Control Serial Number: First Edition applies directly to all
instruments.
Exclusive Remedies
The remedies provided herein are Buyer’s sole and
exclusive remedies. Agilent Technologies shall not be
liable for any direct, indirect, special, incidental, or
consequential damages whether based on contract, tort, or
any other legal theory.
Assistance
Product maintenance agreements and other customer
assistance agreements are available for Agilent
Technologies products. For any assistance contact your
nearest Agilent Technologies Sales and Service Office.
Certification
Agilent Technologies Inc. certifies that this product met its
published specifications at the time of shipment from the
factory.
Agilent Technologies further certifies that its calibration
measurements are traceable to the United States National
Institute of Standards and Technology, NIST (formerly the
United States National Bureau of Standards, NBS) to the
extent allowed by the Institutes’s calibration facility, and
to the calibration facilities of other International
Standards Organization members.
ISO 9001 Certification
Produced to ISO 9001 international quality system
standard as part of our objective of continually increasing
customer satisfaction through improved process control.
Second Edition
08164-90B62
First Edition:
08164-90B61: July 2001
Second Edition:
08164-90B62 October 2001
Warranty
This Agilent Technologies instrument product is
warranted against defects in material and workmanship
for a period of one year from date of shipment. During the
warranty period, Agilent will, at its option, either repair or
replace products that prove to be defective.
For warranty service or repair, this product must be
returned to a service facility designated by Agilent. Buyer
shall prepay shipping charges to Agilent and Agilent shall
pay shipping charges to return the product to Buyer.
However, Buyer shall pay all shipping charges, duties, and
taxes for products returned to Agilent from another
country.
Agilent warrants that its software and firmware designated
by Agilent for use with an instrument will execute its
programming instructions when properly installed on that
instrument. Agilent does not warrant that the operation of
the instrument, software, or firmware will be
uninterrupted or error free.
Limitation of Warranty
The foregoing warranty shall not apply to defects resulting
from improper or inadequate maintenance by Buyer,
Buyer-supplied software or interfacing, unauthorized
modification or misuse, operation outside of the
environmental specifications for the product, or improper
site preparation or maintenance.
No other warranty is expressed or implied. Agilent
Technologies specifically disclaims the implied warranties
of Merchantability and Fitness for a Particular Purpose.
2Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
In this Manual
This manual contains information about SCPI commands which can be
used to program the following instruments:
• Agilent 8163A/B Lightwave Multimeter
• Agilent 8164A/B Lightwave Measurement System
• Agilent 8166A/B Lightwave Multichannel System
The Structure of this Manual
This manual is divided into 5 parts:
• “Introduction to Programming” on page 13 gives a general
introduction to SCPI programming with the Agilent 8163A/B
Lightwave Multimeter, the Agilent 8164A/B Lightwave
Measurement System, and the Agilent 8166A/B Lightwave
Multichannel System.
• “Specific Commands” on page 35 lists all instrument specific
commands.
• “Instrument Setup and Status” on page 47, “Measurement
Operations & Settings” on page 71, and “Mass Storage, Display,
and Print Functions” on page 163 give fuller explanations of all
instrument specific commands.
• “VISA Programming Examples” on page 167 gives some example
programs showing how the SCPI commands can be used with the
Agilent 8163A/B Lightwave Multimeter, the Agilent 8164A/B
Lightwave Measurement System, and the Agilent 8166A/B
Lightwave Multichannel System.
• “The Agilent 816x VXIplug&play Instrument Driver” on page 191,
“GPIB Command Compatibility List” on page 223, and “Error
Codes” on page 237 give information about the Agilent 816x
VXIplug&play Instrument Driver, compatibility issues, and error
codes.
Conventions used in this Manual
• All commands and typed text is written in Courier font, for example
INIT[:IMM].
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition3
• SCPI commands are written in mixed case: text that you MUST print
is written in capitals; text which is helpful but nor necessary is
written in lower case.
So, the command INITiate[:IMMediate] can be entered either
as init[:imm], or as initiate[:immediate]. It does not
matter whether you enter text using capitals or lower-case letters.
• SCPI commands often contain extra arguments in square brackets.
These arguments may be helpful, but they need not be entered.
So, the command INITiate[:IMMediate] can be entered as
init or initiate:imm.
• A SCPI command which can be either a command or a query is
appended with the text /?.
So, DISPlay:ENABle/? refers to both the command
DISPlay:ENABle and the query DISPlay:ENABle?.
Related Manuals
You can find more information about the instruments covered by this
manual in the following manuals:
Lightwave Measurement System, & Agilent 8166A/B Lightwave
Multichannel System User’s Guide (Agilent Product Number 08164-
90B13).
NOTEPlease note that User Guides no longer contain programming
information, and must now be used in conjunction with this manual.
Refer to the books listed on page 15 for additional information about
the General Purpose Interface Bus, GPIB.
4Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Table of Contents
Introduction to Programming13
Table of Contents
In this Manual3
The Structure of this Manual3
Conventions used in this Manual3
Related Manuals4
GPIB Interface15
Setting the GPIB Address16
Returning the Instrument to Local Control17
Message Queues18
How the Input Queue Works18
Clearing the Input Queue18
The Output Queue18
The Error Queue19
Programming and Syntax Diagram Conventions20
Short Form and Long Form20
Command and Query Syntax21
Units21
Data Types22
Slot and Channel Numbers22
Laser Selection Numbers23
Common Commands24
Common Command Summary24
Common Status Information24
The Status Model26
Status Registers26
Status System for 8163A/B & 8164A/B29
Status System for 8166A/B29
Annotations31
Status Byte Register31
Standard Event Status Register31
Operation/Questionable Status Summary31
Operation/Questionable Status Summary Register32
Operation/Questionable Slot Status32
Operation Slot Status Register32
Questionable Slot Status Register32
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition5
Table of Contents
Specific Commands35
Instrument Setup and Status47
Status Command Summary33
Other Commands33
Specific Command Summary37
IEEE-Common Commands49
Status Reporting – The STATus Subsystem57
Interface/Instrument Behaviour Settings – The SYSTem
Subsystem
67
Measurement Operations & Settings71
Root Layer Command73
Measurement Functions – The SENSe Subsystem77
Agilent 81635A and Agilent 81619A- Master and Slave Channels
77
Signal Generation – The SOURce Subsystem103
Signal Conditioning131
The INPut and OUTput commands131
The table of wavelength-dependent offsets141
Compatibility of the 81560A/1A/6A/7A modular attenuator
family to the 8156A attenuator146
Slot Numbers146
Command Semantic147
Display and System Commands148
IEEE Commands148
Status Commands148
User Calibration Data149
Triggering - The TRIGger Subsystem150
Extended Trigger Configuration157
Extended Trigger Configuration Example161
Mass Storage, Display, and Print Functions163
Display Operations – The DISPlay Subsystem165
6Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Table of Contents
VISA Programming Examples167
How to Use VISA Calls169
How to Set up a Fixed Laser Source172
How to Measure Power using FETCh and READ175
How to Co-ordinate Two Modules179
How Power Varies with Wavelength183
How to Log Results187
The Agilent 816x VXIplug&play Instrument Driver191
Installing the Agilent 816x Instrument Driver193
Using Visual Programming Environments197
Getting Started with HP VEE197
GPIB Interfacing in HP VEE197
Getting Started with LabView199
Getting Started with LabWindows202
Features of the Agilent 816x Instrument Driver203
Directory Structure204
Opening an Instrument Session205
Closing an Instrument Session206
VISA Data Types and Selected Constant Definitions207
Error Handling208
Introduction to Programming210
Example Programs210
VISA-Specific Information210
Instrument Addresses210
Callbacks210
Development Environments210
Microsoft Visual C++ 4.0 (or higher) and Borland C++ 4.5 (or higher)
210
Microsoft Visual Basic 4.0 (or higher)210
HP VEE 5.01 (or higher)211
LabWindows CVI/ (R) 4.0 (or higher)211
Online Information212
Lambda Scan Applications213
Equally Spaced Datapoints214
How to Perform a Lambda Scan Application215
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition7
Table of Contents
GPIB Command Compatibility List223
The Prepare Lambda Scan Function215
The Get Lambda Scan Parameters Function216
The Execute Lambda Scan Function216
How to Perform a Multi-Frame Lambda Scan Application217
The Equally Spaced Datapoints Function218
The Register Mainframe Function218
The Unregister Mainframe Function218
The Prepare Multi Frame Lambda Scan Function219
The Get MF Lambda Scan Parameters Function220
The Execute Multi Frame Lambda Scan Function220
The Get Lambda Scan Result Function220
The Get Number of PWM Channels Function221
The Get Channel Location Function221
Compatibility Issues225
GPIB Bus Compatibility225
Status Model226
Preset Defaults227
Removed Command228
Obsolete Commands229
Changed Parameter Syntax and Semantics230
Changed Query Result Values231
Timing Behavior232
Error Handling233
Command Order234
Instrument Status Settings235
Error Codes237
GPIB Error Strings239
8Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Table 5Commands that can only be configured using the master channel . . . 77
Table 6Commands that are independent for both master and slave channels . . 78
Table 7Comparison of command semantics beween 8156A attenuator and
8156xA modular attenuator family.147
Table 8Triggering and Power Measurements . . . . . . . . . 150
Table 9Generating Output Triggers from Power Measurements . . . . . 150
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition11
List of Tables
12Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Introduction to Programming
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition13
Introduction to Programming
This chapter gives general information on how to control your
instrument remotely.
Descriptions for the actual commands for the instruments are given in
the following chapters. The information in these chapters is specific to
the Agilent 8163A/B Lightwave Multimeter, Agilent 8164A/B
Lightwave Measurement System, and Agilent 8166A/B Lightwave
Multichannel System and assumes that you are already familiar with
programming the GPIB.
14Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
GPIB InterfaceIntroduction to Programming
GPIB Interface
The interface used by your instrument is the GPIB (General Purpose
Interface Bus).
GPIB is the interface used for communication between a controller
and an external device, such as the tunable laser source. The GPIB
conforms to IEEE standard 488-1978, ANSI standard MC 1.1 and IEC
recommendation 625-1.
If you are not familiar with the GPIB, then refer to the following books:
• The International Institute of Electrical and Electronics Engineers.
IEEE Standard 488.1-1987, IEEE Standard Digital Interface for
Programmable Instrumentation. New York, NY, 1987
• The International Institute of Electrical and Electronics Engineers.
IEEE Standard 488.2-1987, IEEE Standard Codes, Formats,
Protocols and Common Commands For Use with ANSI/IEEE Std
488.1-1987. New York, NY, 1987
To obtain a copy of either of these last two documents, write to:
The Institute of Electrical and Electronics Engineers, Inc.
345 East 47th Street
New York, NY 10017
USA.
In addition, the commands not from the IEEE-488.2 standard, are
defined according to the Standard Commands for Programmable
Instruments (SCPI).
For information about SCPI, and SCPI programming techniques,
please refer to:
• The SCPI Consortium: Standard Commands for Programmable Instruments. To obtain a copy of this manual, contact the following
address:
SCPI Consortium Office
Bode Enterprise
2515 Camino del Rio South, Suite 340
San Diego, CA, 92108
USA
Web: http://www.scpiconsortium.org
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition15
Introduction to ProgrammingGPIB Interface
The interface of the Agilent 8163A/B Lightwave Multimeter,
Agilent 8164A/B Lightwave Measurement System, and
Agilent 8166A/B Lightwave Multichannel System to the GPIB is
defined by the IEEE Standards 488.1 and 488.2.
Table 1 shows the interface functional subset that the instruments
implement.
Table 1GPIB Capabilities
MnemonicFunction
SH1Complete source handshake capability
AH1Complete acceptor handshake capability
T6Basic talker; serial poll; no talk only mode; unaddressed to talk
if addressed to listen
L4Basic listener; no listen only mode; unaddressed to listen if ad-
• You can set the GPIB address by using the command
“:SYSTem:COMMunicate:GPIB[:SELF]:ADDRess” on page 69.
• You can set the GPIB address from the front panel. See your
instrument’s User’s Guide for more information.
The default GPIB address is 20.
NOTEGPIB address 21 is often applied to the GPIB controller. If so, 21
cannot be used as an instrument address.
16Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
GPIB InterfaceIntroduction to Programming
Returning the Instrument to Local Control
If the instrument is in remote control, a screen resembling
Figure 1 will appear. Press [Local] if you wish to return the instrument
to local control.
Figure 1Remote Control
NOTEIf your Agilent 8163A/B, 8164A/B or 8166A/B is in local lockout mode
(refer to DISPlay:LOCKout on page 142) the Local softkey is not
available.
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition17
Introduction to ProgrammingMessage Queues
Message Queues
The instrument exchanges messages using an input and an output
queue. Error messages are kept in a separate error queue.
How the Input Queue Works
The input queue is a FIFO queue (first-in first-out). Incoming bytes are
stored in the input queue as follows:
1 Receiving a byte:
– Clears the output queue.
– Clears Bit 7 (MSB).
2 No modification is made inside strings or binary blocks. Outside
strings and binary blocks, the following modifications are made:
– Lower-case characters are converted to upper-case.
– The characters 00
).
(20
16
– Two or more blanks are truncated to one.
3 An EOI (End Or Identify) sent with any character is put into the input
queue as the character followed by a line feed (LF, 0A
with a LF, only one LF is put into the input queue.
4 The parser starts if the LF character is received or if the input queue is
full.
to 0916 and 0B16 to 1F16 are converted to spaces
16
). If EOI is sent
16
Clearing the Input Queue
Switching the power off, or sending a Device Interface Clear signal,
causes commands that are in the input queue, but have not been
executed to be lost.
The Output Queue
The output queue contains responses to query messages. The
instrument transmits any data from the output queue when a
controller addresses the instrument as a talker.
18Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Message QueuesIntroduction to Programming
Each response message ends with a carriage return (CR, 0D16) and a
LF (0A
an error, the output queue remains empty.
The Message Available bit (MAV, bit 4) is set in the Status Byte register
whenever there is data in the output queue.
), with EOI=TRUE. If no query is received, or if the query has
16
The Error Queue
The error queue is 30 errors long. It is a FIFO queue (first-in first-out).
That is, the first error read is the oldest error to have occurred. For
example:
1If no error has occurred, the error queue contains:
+ 0, "No error"
2After a command such as wav:pow, the error queue now contains:
+ 0, "No error"
-113, "Undefined header"
3If the command is immediately repeated, the error queue now contains:
+ 0, "No error"
-113, "Undefined header"
-113, "Undefined header"
If more than 29 errors are put into the queue, the message:
-350, "Queue overflow"
is placed as the last message in the queue.
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition19
Introduction to ProgrammingProgramming and Syntax Diagram Conventions
Programming and Syntax Diagram
Conventions
A program message is a message containing commands or queries that
you send to the instruments. The following are a few points about
program messages:
• You can use either upper-case or lower-case characters.
• You can send several commands in a single message. Each command
must be separated from the next one by a semicolon (;).
• A command message is ended by a line feed character (LF) or
<CR><LF>.
• You can use any valid number/unit combination.
In other words, 1500NM,1.5UM and 1.5E-6M are all equivalent.
If you do not specify a unit, then the default unit is assumed. The
default unit for the commands are given with command description
in the next chapter.
Short Form and Long Form
The instrument accepts messages in short or long forms.
For example, the message
:STATUS:OPERATION:ENABLE 768
is in long form.
The short form of this message is
:STAT:OPER:ENAB 768
In this manual, the messages are written in a combination of upper
and lower case. Upper case characters are used for the short form of
the message.
For example, the above command would be written
:STATus:OPERation:ENABle
The first colon can be left out for the first command or query in your
message. That is, the example given above could also be sent as
STAT:OPER:ENAB 768
20Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Programming and Syntax Diagram ConventionsIntroduction to Programming
Command and Query Syntax
All characters not between angled brackets must be sent exactly as
shown.
The characters between angled brackets (<...>) indicate the kind of
data that you should send, or that you get in a response. You do not
type the angled brackets in the actual message.
Descriptions of these items follow the syntax description. The
following types of data are most commonly used:
stringis ascii data. A string is contained between double
quotes ("...") or single quotes (‘...’).
value is numeric data in integer (12), decimal (34.5) or ex-
ponential format (67.8E-9).
wspis a white space.
Other kinds of data are described as required.
The characters between square brackets ([...]) show optional
information that you can include with the message.
The bar (|) shows an either-or choice of data, for example, a|b means
either a or b, but not both simultaneously.
Extra spaces are ignored, so spaces can be inserted to improve
readability.
Units
Where units are given with a command, usually only the base units are
specified. The full sets of units are given in the table below.
Table 2Units and allowed Mnemonics
UnitDefaultAllowed Mnemonics
metersMPM, NM, UM, MM, M
decibelDBMDB, DB
secondSNS, US, MS, S
decibel/1mWDBMMDBM, DBM
HertzHZHZ, KHZ, MHZ, GHZ, THZ
WattWattPW, NW, UW, MW, Watt
meters per secondM/SNM/S, UM/S, MM/S, M/S
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition21
Introduction to ProgrammingProgramming and Syntax Diagram Conventions
Data Types
With the commands you give parameters to the instrument and receive
response values from the instrument. Unless explicitly specified these
data are given in ASCII format. The following types of data are used:
• Boolean data may only have the values 0 or 1.
• Integer range is given for each individual command.
• Float variables may be given in decimal or exponential writing
(0.123 or 123E-3).
All Float values conform to the 32 bit IEEE Standard, that is, all
Float values are returned as 32-bit real values.
•A string is contained between double quotes ("...") or single quotes
(‘...’). When the instrument returns a string, it is always included
in " " and terminated by <END>.
• When a register value is given or returned (for example *ESE), the
decimal values for the single bits are added. For example, a value of
nine means that bit 0 and bit 3 are set.
• Larger blocks of data are given as Binary Blocks, preceded by
“#<H><Len><Block>”, terminated by <END>; <H> represents the
number of digits, <Len> represents the number of bytes, and
<Block> is the data block. For example, for a Binary Block with 1
digit and 6 bytes this is: #16TRACES<END>.
Slot and Channel Numbers
Each module is identified by a slot number and a channel number. For
commands that require you to specify a channel, the slot number is
represented by [n] in a command and the channel number is
represented by [m].
The slot number represents the module’s position in the mainframe.
These are:
• from one to two for the Agilent 8163A/B,
• from zero to four for the Agilent 8164A/B, and
• from one to seventeen for the Agilent 8166A/B.
These numbers are displayed on the front panel beside each module
slot.
NOTEThe Agilent 8164A/B slot for a back-loadable tunable laser module is
numbered zero.
22Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Programming and Syntax Diagram ConventionsIntroduction to Programming
Channel numbers apply to modules that have two inputs/outputs, for
example, the Agilent 81635A Dual Power Sensor.
Modules with two channels, for example, the Agilent 81635A Dual
Power Sensor, use the channel number to distinguish between these
channels.
NOTEThe channel number of single channel modules is always one.
For example, if you want to query slot 1, channel 2 with the command,
“:SENSe[n]:[CHANnel[m]]:POWer:WAVelength?” on page 99, you
should send the command:
• :sens1:chan2:pow:wav?
NOTEIf you do not specify a slot or channel number, the lowest possible
number is used as the default value. This means:
•Slot 1 for the Agilent 8163A/B and Agilent 8166A/B mainframes.
•Slot 0 for the Agilent 8164A/B mainframe.
•Channel 1 for all channels.
Laser Selection Numbers
The laser selection number, [l], identifies the upper or lower
wavelength laser source for dual wavelength Laser Source modules
and Return Loss modules with two internal laser sources. The lower
wavelength source is denoted by 1. The upper wavelength source is
denoted by 2.
NOTEFor Return Loss modules, 0 denotes the use of an external laser source
as the input to your Return Loss module for the following commands:
• “:SENSe[n]:[CHANnel[m]]:RETurnloss:CORRection:FPDelta[l]” on
page 101,
• “:SENSe[n]:[CHANnel[m]]:RETurnloss:CORRection:FPDelta[l]?” on
page 101,
• “:SENSe[n]:[CHANnel[m]]:RETurnloss:CORRection:REFLectance[l]”
on page 101, and
• “:SENSe[n]:[CHANnel[m]]:RETurnloss:CORRection:REFLectance[l]?
” on page 102.
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition23
Introduction to ProgrammingCommon Commands
Common Commands
The IEEE 488.2 standard has a list of reserved commands, called
common commands. Some of these commands must be implemented
by any instrument using the standard, others are optional.
Your instrument implements all the necessary commands, and some
optional ones. This section describes the implemented commands.
Common Command Summary
Table 3 gives a summary of the common commands.
Table 3Common Command Summary
Command Parameter FunctionPage
*CLS Clear Status Commandpage 49
*ESE Standard Event Status Enable Commandpage 50
*ESE? Standard Event Status Enable Querypage 50
*ESR? Standard Event Status Register Querypage 51
*IDN? Identification Querypage 51
*OPCOperation Complete Commandpage 52
*OPC? Operation Complete Querypage 52
*OPT? Options Querypage 53
*RST Reset Commandpage 53
*STB? Read Status Byte Querypage 54
*TST? Self Test Querypage 55
*WAI Wait Commandpage 56
NOTEThese commands are described in more detail in “IEEE-Common
Commands” on page 49.
Common Status Information
There are three registers for the status information. Two of these are
status-registers and one is an enable-registers. These registers
conform to the IEEE Standard 488.2-1987. You can find further
descriptions of these registers under *ESE, *ESR?, and *STB?.
24Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Common CommandsIntroduction to Programming
Figure 2 shows how the Standard Event Status Enable Mask (SESEM)
and the Standard Event Status Register (SESR) determine the Event
Status Bit (ESB) of the Status Byte.
*ESE
sets the Standard Ev ent Status Enable Mask
*STB?
retu rn s th e S tatu s Byte R e g iste r
OSB ESBQSB
Status
Byte
001
All bits shown as are unused
Figure 2The Event Status Bit
MAV
0
The SESR contains the information about events that are not slot
specific. For details of the function of each bit of the SESR, see
“Standard Event Status Register” on page 31.
01234567
*ESR?
Event
Status
Enable
Mask
&
&
&
&
OR
Event
Status
Register
returns the Stan d ard E v en t Statu s R eg ister
&
&
01234567
111111
&
&
01234567
100000
The SESEM allows you to choose the event that may affect the ESB of
the Status Byte. If you set a bit of the SESEM to zero, the
corresponding event cannot affect the ESB. The default is for all the
bits of the SESEM to be set to 0.
The questionable and operation status systems set the Operational
Status Bit (OSB) and the Questionable Status Bit (QSB). These status
systems are described in “The Status Model” on page 26 and “Status Reporting – The STATus Subsystem” on page 57.
NOTEUnused bits in any of the registers change to 0 when you read them.
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition25
Introduction to ProgrammingThe Status Model
The Status Model
Status Registers
Each node of the status circuitry has three registers:
• A condition register (CONDition), which contains the current
status. This register is updated continuously. It is not changed by
having its contents read.
• The event register (EVENt), which contains details of any positive
transitions in the corresponding condition register, that is, when a
bit changes from 0 →1. The contents of this register are cleared
when it is read. The contents of any higher-level registers are
affected with regard to the appropriate bit.
• The enable register (ENABle), which enables changes in the event
register to affect the next stage of registers.
NOTEThe event register is the only kind of register that can affect the next
stage of registers.
26Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
The Status ModelIntroduction to Programming
The structures of the Operational and Questionable Status Systems
are similar. Figure 4 describe how the Questionable Status Bit (QSB)
and the Operational Status Bit (OSB) of the Status Byte Register are
determined.
Enable Registers
To the
OR
Event R egisters
Condition Reg ist e r
of the Next Node
A positive transition in the condition
11111
Figure 3The Registers and Filters for a Node
The Operational/Questionable Slot Status Event Register
(OSSER/QSSER) contains the status of a particular module slot. A bit
changes from 0→1 when an event occurs, for example, when a laser is
switched on. For details of the function of each bit of these registers,
see “Operation/Questionable Status Summary Register” on page 32
and “Operation/Questionable Status Summary Register” on page 32.
The Operational/Questionable Slot Enable Status Mask
(OSESM/QSESM) allows you to choose the events for each module slot
that may affect the Operational/Questionable Status Event Register
(see below). If you set a bit of the OSESM/QSESM to zero, the
occurence of the corresponding event for this particular module slot
cannot affect the Operational/Questionable Status Event Register. The
default is for all the bits of the OSESM/QSESM to be set to 0.
register, when a bit changes from 0 →1,
causes the corresponding bit of the
correspon ding event register
to change from 0 →1.
Condition Reg ist e rs
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition27
Introduction to ProgrammingThe Status Model
The Operational/Questionable Status Event Summary Register
(OSESR/QSESR) summarizes the status of every module slot of your
instrument. If, for any slot, any bit of the QSSER goes from 0→1 AND
the corresponding bit of the QSSEM is 1at the same time, the QSESR
bit representing that slot is set to 1.
The Operational/Questionable Status Enable Summary Mask
(OSESM/QSESM) allows you to choose the module slots that may
affect the OSB/QSB of the Status Byte. If any bit of the QSESR goes
from 0→1 AND the corresponding bit of the QSESM is 1at the same
time, the QSB of the Status Byte is set to 1. If you set a bit of the
OSESM/QSESM to zero, the corresponding module slot cannot affect
the OSB/QSB. The default is for all the bits of the OSESM/QSESM to be
set to 0.
The Operational/Questionable Status Enable Summary Mask for the
Agilent 8163A/B Lightwave Multimeter and the Agilent 8164A/B
Lightwave Measurement System consists of one level. These are
described in “Status System for 8163A/B & 8164A/B” on page 29.
As the Agilent 8166A/B Lightwave Multichannel System has 17
module slots, the Operational/Questionable Status Enable Summary
Mask consists of two levels. This is described in “Status System for 8166A/B” on page 29.
28Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
The Status ModelIntroduction to Programming
Status System for 8163A/B & 8164A/B
The status system for the Agilent 8163A/B Lightwave Multimeter and
the Agilent 8164A/B Lightwave Measurement System returns the
status of 2 and 5 module slots respectively. The
Operational/Questionable Status Summary Registers consist of one
level and are described by Figure 4. Any commands that require
LEVel1 do not apply to these mainframes.
Status Byte Register
Status Summary
Slot 1
Operational/Questionable Status
Enable Summary Mask
Register
Operational/Questionable Status
Event Summary Register
Operational/Questionable Status
Condition Summary Register
Operational/Questionable
Slot Status Enable Mask
Register
Operational/Questionable
Slot Status Event
Register
Operational/Questionable
Slot Status Condition
Register
Status Byte
to next
&
&
&
&
&
&
OR
for a positive
transition
&
&
for a positive
to next
level
OR
transition
level
Figure 4The Operational/Questionable Status System for 8163A/B & 8164A/B
Status System for 8166A/B
The status system for the Agilent 8166A/B Lightwave Multichannel
System returns the status of 17 module slots. The
Operational/Questionable Status Summary Registers consists of two
levels, as described by Figure 5.
Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition29
Introduction to ProgrammingThe Status Model
Module slots 1 to 14 affect the Level 0 summary register as described
in Figure 4. Bit 0 of the Level 0 summary registers represents the
summary of the status of module slots 15, 16, and 17. The Level 1
summary registers contain an individual summary for each of these
module slots.
Status Byte Register
Status
Summary
for Level 0
Status
Summary
for Level 1
Slot 15
Operational/Questionable Status
Enable Summary Mask
Register (Level 1)
Operational/Questionable Status
Event Summary Register (Level 1)
Operational/Questionable Status
Condition Summary Register (Level 1)
Operational/Questionable
Slot Status Enable Mask
Register
Operational/Questionable
Slot Status Event
Register
Operational/Questionable
Slot Status Condition
Register
Status Byte
Operational/Questionable Status
Enable Summary Mask
Register (Level 0)
Operational/Questionable Status
Event Summary Register (Level 0)
Operational/Questionable Status
Condition Summary Register (Level 0)
&
&
&
&
to next
&
&
&
&
OR
for a positive
transition
&
&
&
OR
for a positive
transition
level
to next
level
OR
&
for a positive
transition
to next
level
Figure 5The Operational/Questionable Status System for 8166A/B
30Agilent 8163A/B, 8164A/B, & 8166A/B Programming Guide, Second Edition
Loading...
+ 224 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.