Index ...............................................................................................................................95
5
Notes:
6
Certification
Agilent Technologie s, Inc. certifies that this product met its published specifications at the time of shipment from the factory. Agile nt
Technol ogies furthe r certifie s that its calibration measurements are traceable to the United St ates National Institute of Standards and
Technology (formerly National Bureau of Standards), to the extent allowed by that organization's calibration facility, and to the
calibration facilities of other Internati onal Standards Organization members.
AGILENT TECHNOLOGIES WARRANTY STATEMENT
PRODUCT: E1463A DURATION OF WARRANTY: 1 year
1. Agilent warrants Agilen t hardware, accessories and supplies against defects in materials and workmanship for the period spec ified
above ( one year). If Aglent receives notice of such defects during the w arranty period, Agilent wi ll, at its option, either repair or replace
product s wh ich prove to be defectiv e. Replacement products may be either new or like-new.
2. Agile nt warrants that Agilent software wi ll not fail to execute its pr ogramming instruct ions, for the period spec ified above, due to
defect s in material and workmans hip when properly installed and used. If Agilent receives notice of such defects during the warranty
period , Ag ilent will replace software media w hich does not execute its programming i n structions due to such defects.
3. Agile nt does not warran t that th e opera tion of A gilent pr oducts w ill be i nterrup ted or e rror fre e. If Agi lent is unable , with in a rea sonabl e
time, to rep ai r or repla ce an y pro duct to a cond iti on as warr anted , cu st omer will be en ti tled to a r efund of the purc hase pr ic e upo n prompt
return of the product.
4. Agilen t products may contain remanufactur ed parts equivalent to ne w in performance or may have been subject to incidental use.
5. The war ranty per iod be gin s on the dat e of de li very o r on the dat e of inst al lati on if ins tall ed by Agile nt . If c ust omer sc hedule s or de la ys
Agilent installation more tha n 30 days after delivery, wa rranty begins on the 31st da y from delivery.
6. Warran ty does not apply t o defec ts resul ting fr om (a) imp roper or inad equate ma intenan ce or ca librat ion, (b) s oftwar e, inte rfacing, pa rts
or suppl ies not suppli ed by Agilent Technologies, (c) unauthorized modificatio n or m isuse, (d) operation outside of the published
enviro nm ental specifications for the product, or (e) improper site preparation or maintenance.
7. TO THE EXTENT ALLOWED BY LOCAL LAW, THE ABOVE WARRANTIES ARE EXCLUSIVE AND NO OTHER
WARRANTY OR CONDITION, WHETHER WRITTEN OR ORAL, IS EXPRESSED OR IMPLIED AND AGILENT
SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY
QUALITY, AND FITNESS FOR A PARTICULAR PURPOSE.
8. Agil ent will b e liabl e for da mage to tangibl e prope rty per i ncident u p to th e grea ter of $30 0,000 o r the act ual amou nt paid for t he pro duct
that is the subject of the claim, and for damages for bodily inj ury or death, to the extent that all such damages are determined by a court
of competent jurisdiction to hav e been directly caused by a defective Agilent product.
9. TO THE EXTENT ALLOWED BY LOCAL LAW, THE REMEDIES IN THIS WARRANTY STATEMENT ARE CUSTOMER’S
SOLE AND EXLUSIVE REMEDIES. EXCEPT AS INDICATED ABOVE, IN NO EVENT WILL AGILENT OR ITS SUPPLIERS BE
LIABLE FOR LOSS OF DATA OR FOR DIRECT, SPE CIAL, I NCIDENTAL, CONSEQUE NTIAL (INCL UDING LOST PROFI T OR
DATA), OR OTHER DAMAGE, WHETHER BASED IN CONTRACT, TORT, OR OTHERWISE.
FOR CONSUMER TRANSACTIONS IN AUS TRALIA AND NEW ZEALAND: THE WARRANTY T ERMS CONTAINED I N THIS
STATEMENT, EXCEPT TO THE EXTENT LAWFULLY PERMITTED, DO NOT EXCLUDE, RESTRICT OR MODIFY AND ARE
IN ADDITION TO THE MANDATORY STATUTORY RIGHTS APPLICABLE TO THE SALE OF THIS PRODUCT TO YOU.
U.S. Government Restricted Rights
The Software and Docume ntation have been deve loped entirely at private expense. They are del ivered and licensed as "commercial
computer software" as defined in DF A R S 252.227- 7013 (Oct 1988), DFARS 252. 211-7015 (May 1991) or DFAR S 252.227-7014 (Jun
1995), as a "commercial item" as defined in FAR 2.101(a ), or as "Restr icted computer softwar e" as defined in FA R 52.227-19 (Jun
1987)(o r any equivalent agency regulation or contract cl ause), whichever is appl icable. You have only those rights provi ded for such
Software and Documentation by the applicable FAR or DFARS clause or the Agilent standard software agreement for the product
involved.
This is a mea surement Category II product designe d for measurements at voltages up to 300V from earth, including measurements o f
voltages at typical mains socket outlets. The product should not be used to make voltage measurements on a fixed electrical installation
includ ing building wiring, ci rcuit breakers, or ser vice panels.
IEC Measurement Category II Overvoltage Protection
E1463A 32-Channel, 5 Amp, Form C Switch Module User's Manual
All Ed ition s and Upd ates o f this m a nual and their crea tion date are listed bel o w. The first Edition of the manual is E dition 1. The Edi tion
number increments by 1 whenever the manual is revised. Updates, which are issued betw een Editions, contain replacemen t pages to
correc t or add additional information to the cu rrent Editi on of the manual. Whenever a new Edition is created, it will contain all of the
Update in formatio n for the previous Edi tion. Eac h new Editi on or Update al so incl udes a revi sed copy of this docum entati on histor y page.
Instruction manual symbol affixed to
product . Ind ica te s t hat t he u ser must r efer t o
product . Ind ica te s t hat t he u ser must r efer t o
the manu a l fo r sp ec ific WAR N IN G or
the manu a l fo r sp ec ific WAR N IN G or
CAUTION information to avoid personal
CAUTION information to avoid personal
injury or dam age to the product.
injury or dam age to the product.
Indicates the field wiring terminal that mu st
be connect ed to earth ground befo re
operating the equipment—protects against
electrical shock in case of fault.
WARNING
Alternating current (AC)
Direct current (DC).
Indicates hazardous voltages .
Calls attention to a procedure, pra ctice, or
condition that could cause bodily inju ry or
death.
or
Frame or c hassis grou nd termina l—typicall y
connect s to the equipment's metal frame.
CAUTION
Calls attention to a procedure, pra ctice, or
condition that could po ssibly c ause damage to
equipment or permanent loss of data.
WARNINGS
The follo w ing general safety precautions must be observed during al l phases of operation, se rvice, and repair of thi s product. Failure to
comply with these precautions or with specific warnings elsewhere in this manual violates safety standards of design, manufacture, and
intended use of the product. Agil ent Technologies, Inc. assumes no liability for the customer's failure to comply w ith these requirements.
Ground the equipm ent: For Safety Class 1 equipment (equipment having a protective earth terminal), an uninterruptible safety earth
ground must be provided from the mains pow er source to th e product input wiring term inals or supplied power cable.
DO NOT operate the produc t in an explosive atmosphere or in the presence of fl ammable gases or fumes.
For cont inued protection a gainst fir e, replace the line fuse(s) only with fuse(s) of the same voltage and curre nt rating and type. DO NOT
use repaired fuse s or short-circuited fuse holder s.
Keep away from live circuits: Operating personnel must not remove equipment covers or shiel ds. Procedures involving the removal of
covers or shields are f o r use by service-trai ned personnel only. Under certain conditions , dangerous voltages may exist even with the
equipmen t sw itch ed off. To a void d ang er ous elect r ical sho ck, DO NOT per form proc edu re s invo lv ing co ver or shie ld rem oval u nl ess you
are qualified to do so.
DO NOT operate damaged equipment: Whenever it is possible that the safety protection features built into this product have been
impaired, either t hrough physical damage, excessive moisture, or any other re ason, REMOVE POWER and do not use th e product until
safe operat i on ca n be veri fi ed by servi ce- trai ne d person nel . If ne ces sa ry, re tu rn the pr odu ct to an Agi lent Tech nologi es Sales and Servi ce
Office for service and rep air to ensure that safety features are maintain ed.
DO NOT serv ice or adj ust al one : Do not at t empt in te rnal ser vi ce or adj us tmen t u nl ess an oth er per son , cap abl e o f rend er in g fi rst ai d an d
resuscitation, is present.
DO NOT substitut e parts or modify e quipm ent: Be cause of the da nger of intr od ucing a ddi tion al hazar ds, do not in st all s ubsti t ute pa rt s
or perform any unauthorized modification to the product. Ret urn the product to an Agilen t Technologies Sales and Service Office for
service and repair to ensu re that safety features are mai n tained.
8
DECLARATION OF CONFORMITY
According to ISO/IEC Guide 22 and CEN/CENELEC EN 45014
Manufacturer’s Name:
Agilent Technologies, Incorporated
Manufacturer’s Address:Measurement Product Generation Unit
815 14th ST. S.W.
Loveland, CO 80537 USA
Declares, that the product
Product Name:
Model Number:
32 Channel Form C VXI Switch
E1463A
Product Options:This declaration covers all options of the above product(s).
Conforms with the following European Directives:
The product herewith complies with the requirements of the Low Voltage Directive 73/23/EEC and the EMC Directive 89/336/EEC
and carries the CE Marking accordingly
Conforms with the following product standards:
EMCStandard
IEC 61326-1:1997+A1:1998 / EN 61326-1:1997+A1:1998
CISPR 11:1997 +A1:1997 / EN 55011:1998
IEC 61000-4-2:1995+A1:1998 / EN 61000-4-2:1995
IEC 61000-4-3:1995 / EN 61000-4-3:1995
IEC 61000-4-4:1995 / EN 61000-4-4:1995
IEC 61000-4-5:1995 / EN 61000-4-5:1995
IEC 61000-4-6:1996 / EN 61000-4-6:1996
IEC 61000-4-11:1994 / EN 61000-4-11:1994
• Prog r a mmin g th e Fo rm C Switch . . . . . . . . . . . . . . . . . . . . . . . 2 7
Form C Switch Description
The E1463A 32-Channel, 5 Amp, Form C Switch module (Form C switch)
is defined as a VXIbus instrument. VXIbus plug-in modules installed in a
mainframe or used with a command module are treated as independent
instruments each having a unique secondary address.
Chapter 1
Getting Started
Each instrument is also assigned a dedicated error queue, input and output
buffers, status registers and, if applicable, dedicated mainframe/command
module memory space for readings or data. An instrument may be
composed of a single plug-in module (such as a counter) or multiple plug-in
modules (for a switchbox or scanning multimeter instrument).
Basic OperationThe Form C switch is a C-Size VXIbus and VMEbus register-based product
that can be used for switching, scanning, and control. The switch can
operate in a C-Size VXIbus or VMEbus mainframe. The switch has 32
channels of Form C relays. Each channel includes a relay with common (C),
normally open (NO), and normally closed (NC) contacts.
For the Form C switch, switching consists of opening or closing a channel
relay to provide alternate connections to user devices. Scanning consists
of closing a set of relays, one at a time.
As shown in Figure 1-1, the Form C switch module consists of 32 channels
(channels 00 through 31). Each channel uses a nonlatching relay. Varistors
(MOVs) can be added for relay protection and resistors or fuses can be
added for circuit protection. See "Adding Relay and Circuit Protection" for
more information on protecting relays.
External pull-up resistors can also be added for digital output applications.
See "Digital Output Configuration" for additional information about these
applications.
Chapter 1
Getting Started 11
Channel 0
E1463A MO DULE
NCNO
C0N0
C0C
C0NC
TERMINAL MODULE
C0NO
C0C
C0NC
Channel 15
Channel 16
Channel 31
NONC
NO
NC
NO
NC
C15N0
C15C
C15C
C16N0
C16C
C16C
C31N0
C31C
C31C
Pads
for MOVS
Pads
for MOVS
Jumper
C15NO
C15C
C15NC
C16NO
C16C
C16NC
C31NO
C31C
C31NC
12 Getting Started
Figure 1-1. Form C Switch Simplified Schematic
Each channel is switched by opening or closing the appropriate channel
relay. Since the relays are nonlatching, the relays are all open during
power-up or power-down.
When a reset occurs, all channel commons (C) are connected to the
corresponding normally closed (NC) contacts. When a channel is closed,
the common contact (C) is connected to the normally open contact (NO).
User inputs and outputs to each channel are via the NO, NC, and C terminal
connectors on the terminal module.
Chapter 1
Typical
Configurations
The Form C switch accepts user inputs up to 125 Vdc or 250 Vrms.
Maximum rated power capacity (external load) is 150 Wdc or 1250 VA per
channel. Per module, you can switch 1500 Wdc or 12500 VA.
As noted, the switch may be configured for general purpose
switching/scanning or digital output applications. For general purpose
switching or scanning, no additional configuration is required. To configure
the switch for digital output applications, install external pull-up resistors as
required.
Multiple Form C switch modules can be configured as a switchbox
instrument. When using a switchbox instrument, multiple Form C switch
modules within the switchbox instrument can be addressed using a single
interface address. This configuration, however, requires the use of
Standard Commands for Programmable Instruments (SCPI).
General Purpose Relay
Configuration
As factory-configured, the Form C switch module is set for general purpose
relay configuration. For this configuration, you can switch channels by
opening or closing channel relays or you can scan a set of channels.
Figure 1-2 shows a typical general purpose relay configuration for channel
00. When the relay is open (NC terminal is connected to the C terminal), load
1 is connected. When the relay is closed (NO terminal is connected to the C
terminal), load 2 is connected.
TERMINAL
Channel
00
C
NO
NC
RelayLoad
Open1
Closed2
MODULE
C0NO
C0NC
C0C
+V
2
1
Chapter 1
Digital Output
Configuration
Figure 1-2. General Purpose Relay Configuration
By installing external pull-up resistors, the Form C switch can be configured
as a digital output device. Figure 1-3 shows channel 00 configured for digital
output operation. When the channel 00 relay is open (NC connected to C),
point 1 is at +V. When the channel 00 relay is closed (NO connected to C),
point 1 is at 0V.
Getting Started 13
E1463A
MODULE
Channel
00
C
NO
NC
TERMINAL
MODULE
C0NO
C0NC
C0C
+V
1
2
Relay
Open
Closed
Figure 1-3. Digi tal Out put Configuration
Configuring the Form C Swit ch
This section gives guidelines to configure the Form C switch, including the
following topics. See "Configuring a Terminal Module" for guidelines to
configure the terminal modules. Section topics include:
• Warnings and Cautions
• Setting the Logical Address Switch
• Setting the Interrupt Priority
• Installing the Form C Switch in a Mainframe
War nings a nd
Cautions
+V
OV
1
2
0V
OV
14 Getting Started
WARNINGSHOC K HAZAR D. Only qu a li f ied, servic e - train e d perso nne l who are
aware of the hazards involved should install, configure, or remove the
Form C switch module. Use only wire rated for the highest input
voltage and remove all power sources from the mainframe and
installed modules before installing or removing a module.
CAUTIONMAXIMUM VOLTAGE/CURRENT.Maximum allowable voltage per channel for
the Form C switch is 125 Vdc or 250 Vrms. Maximum current per channel is
5 Adc or ac rms (non-inductive). Maximum power of an external load is 150
W or 1250 VA per channel or 1500 W or 12500 VA per module. Exceeding
any limit may damage the Form C switch.
Chapter 1
CAUTION STATIC ELECTRICITY.Static electricity is a major cause of component
failure. To prevent dama ge to the electrical components in the Form C
switch, observe anti-static techniques whenever removing a module from
the mainframe or whenever working on a module. The Form C switch is
susceptible to static discharges. Do not install the Form C switch without
its metal shield attached.
Setting the Logical
Address Switch
NOTEThe address switch selected value mus t be a multiple of 8 if the module is
The logical address switch (LADDR) factory setting is 120. Valid addresses
are from 1 to 255. The Form C switch can be configured as a single
instrument or as a switchbox. See Figure 1-4 for switch position information.
the first module in a switchbox used with a VXIbus command module and
is being instructed by SCPI commands.
8+16+32+64=120
Logical Ad dres s = 120
128
64
32
16
8
4
2
1
D
N
E
E
S
P
O
O
L
C
CLOSED = Switch Set To 1 (ON )
OPEN = Switch Set To 0 (OFF)
Logical Address
Switch Location
Chapter 1
Figure 1-4. Setting the Logical Address Switch
Getting Started 15
Setting the Interrupt
Priority
NOTEThe interrupt priority jumper MUST be installed in position 1 when using the
The Form C switch generates an interrupt after a channel has been closed.
These interrupts are sent to, and acknowledgments are received from, the
command module (E1406, for example) via the VXIbus backplane interrupt
lines.
For most applications where the Form C switch is installed in a C-Size
mainframe, the interrupt priority jumper does not have to be moved. This is
because the VXIbus interrupt lines have the same priority and interrupt
priority is established by installing modules in slots numerically c losest to the
command module. Thus, slot 1 has a higher priority than slot 2, slot 2 has a
higher priority than slot 3, etc.
See Figure 1-5 to change the interrupt priority. You can select eight different
interrupt priority levels. Level 1 is the lowest priority and Level 7 is the
highest priority. Level X disables the interrupt. The Form C switch factory
setting is Level 1. To change the interrupt priority, remove the 4-pin jumper
from the old priority location and reinstall in the new priority location. If the
4-pin jumper is not used, the two jumper locations must have the same
interrup t priority level s ele c t e d.
E1406 Command Module. Level X interrupt priority should not be used
under normal operating conditions. Changing the priority level jumper is not
recommended. Do not change unless specifically instructed to do so.
Using 2-Pin
Jumper
Logical Address
Switch Location
Using 4-Pin
Jumper
IRQ
7
6
5
4
3
2
1
X
IRQ
7
6
5
4
3
2
1
X
Interrupt
Priority
Location
Figure 1-5. Setting the Interrupt Priority
16 Getting Started
Chapter 1
Installing the Form
C Switch in a
Mainframe
Set the extraction levers out.1
The E1463A may be installed in any slot, except slot 0, in a C-size VXIbus
mainframe. See Figure 1-6 to install the Form C switch in a mainframe.
Slide the E1463A into any slot
2
(exc ept slot 0) until the backplane
connectors touch.
4Tighten the top and bottom screws
to secure the module to the
mainframe.
NOTE: The extraction levers will not
seat the backplane connectors on older
VXIbus mainframes. You must manually
seat the connectors by pushing i n the
module until the module's front panel is
flush with the front of the mainframe. The
extraction levers may be used to guide or
remove the Form C switch.
To remove the module from the mainframe,
reverse the procedure.
Seat the E1463A into
3
the mainframe by pushing
in the extraction levers.
Chapter 1
Figure 1-6. Installing the Form C Switch in a VXIbus Mainframe
Getting Started 17
Configuring a Terminal Module
The E1463A 32-Channel, 5 Amp, Form C Switch consists of a relay switch
card and a screw type standard terminal module. In addition, a solder eye
terminal module (Option A3G) is available. User inputs to the Form C switch
are to the normally open (NO), normally closed (NC), and common (C)
terminal connectors on the terminal module. This section shows how to
configure the terminal modules, including:
• Standard Terminal Module Description
• Terminal Module Option A3G Description
• Connecting User Inputs
• Wiring a Terminal Module
• Attaching a Terminal Module to the Form C Switch
Standard Terminal
Module Description
Terminal Module
Option A3G
Description
Figure 1-7 shows the standard screw type terminal module connectors and
associated channel numbers.
Figure 1-7. Standard Screw- type Terminal Modul e
Option A3G provides a plastic terminal module housing with solder eye
connectors (see Figure 1-8) that allows you to solder wires onto connectors
which are then inserted directly into the mating connector of the Form C
switch. See Figure 1-9 for pin-outs.
18 Getting Started
Figure 1-8. Option A3G Terminal Module
Chapter 1
Connecting User
Inputs
Figure 1-9 shows the front panel of the E1463A and the Form C switch
connector pin-out that mates to the terminal module. Actual user inputs
are connected to the applicable terminal module.
Remove Cl ear Cover1Remove and Retain Wiring Exit Panel2
Figures 1-10 and 1-11 show how to connect field wiring to the terminal
module. When making wiring connections, be sure the wires make good
connections on screw terminals. Maximum terminal wire size is No. 16
AWG. When wiring all channels, a smaller gauge wire (No. 20 - 22 AWG)
is recommended. Wire ends should be stripped 6 mm (0.25 inch) and tinned
to prevent single strands from shorting to adjacent terminals.
Figure 1-10 . Wir in g a Terminal Module (contin ued on next page)
Chapter 1
Replace Wiring Exit Panel
6
Replace Clear Cover
7
A. Hook in the top cover tabs
onto the fixture
B. Press down and
tighten screws
Cut required
holes in panels
for wire exit
8
Install the Terminal
Module
Keep wiring exit panel
hole as small as
possible
Push in the Extraction Levers to Lock the
9
Terminal Module onto the E1463A
Extraction
Levers
Chapter 1
E1463A
Module
Figure 1-11. Wiring a Terminal Module
Getting Started 21
Attaching a
Terminal Module to
the Form C Switch
Extend the extraction levers on the1
terminal module.
Extraction Le ver
Use small screwdriver
to release the two
extraction levers
Figure 1-12 gives guidelines to attach a terminal module to the Form C
switch.
E1463A
Module
Extraction Lever
Align the terminal mo dule c onnectors
2
to the E1463A module connectors.
Apply ge ntle press u r e to attach
3
the terminal module to the
E1463A module.
Push in the extraction levers
4
to lock the terminal module
onto the E1463A m odule.
Extraction
Levers
To remove the terminal module from the E1463A,
use a small screwdriver to release the two extraction
levers and push both levers out simultaneo usly
to free it from the Form C switch module.
22 Getting Started
Figure 1-12. Attaching a Terminal Module to the Form C Switch
Chapter 1
Protecting Relays and Circuits
This section gives guidelines to protect relays and circuits in the Form C
switch, including:
• Relay Life Factors
• Extending Relay Life
• Adding Relay and Circuit Protection
• Maximu m Allowab le Module Sw itch C ur r en t
NOTERelays that wear out normally or fail due to misuse should not be
considered defective and are not covered by the product's warranty.
Relay Life FactorsRelays have a shorter life span than other electronic parts, such as ICs.
Because of their mechanical nature, relays usua lly hav e about 10 million
operations (at 30 operations per second) which is not quite 100 hours.
Therefore, to get the full life out of a relay in a switching module, you must
protect the relay.
Loading and Switching
Frequency
Electromechanical relays are subject to normal wear-out. Relay life depends
on several factors. The effects of loading and switching frequency are:
Relay Load. In general, higher power switching reduces relay life. In
addition, capacitive/inductive loads and high inrush currents (for example,
turning on a lamp or starting a motor) reduces relay life.
CAUTION Exceeding specified maximum inputs can cause catastrophic failure.
Switching Frequency. Relay contacts heat up when switched. As the
switching frequency increases, the contacts have less time to dissipate heat.
The resulting increase in contact temperature also reduces relay life.
End-of-Life DetectionA preventive maintenance routine can prevent problems caused by
unexpected relay failure. The end of the life of the relay can be determined
by using one or more of the following three methods. The best method (or
combination of methods), as well as the failure criteria, depends on the
application in which the relay is used.
Contact Resistance. As the relay begins to wear out, its contact resistance
increases. When the resistance exceeds a predetermined value, the relay
should be replaced.
Chapter 1
Stability of Contact Resistance. The stability of the contact resistance
decreases with age. Using this method, the contact resistance is measured
several (5-10) times and the variance of the measurements is determined.
An increase in the variance indicates deteriorating performance.
Number of Operations. Relays can be replaced after a predetermined
number of contact closures. However, this method requires knowledge of
the applied load and life specifications for the applied load.
Getting Started 23
Replacement StrategyThe replacement strategy depends on the application. If some relays are
used more often, or at a higher load, than the others, the relays can be
individually replaced as needed. If all the relays see similar loads and
switching frequencies, the entire circuit board can be replaced when the end
of relay life approaches. The sensitivity of the application should be weighed
against the cost of replacing relays with some useful life remaining.
Extending Relay
Life
To help ensure full life for the relays, you should consider the following
items.
Be aware of non-resistive loads. When switching inductive loads, high
voltages (thousands of volts) are produced across the relay contacts. This
causes arcing and transfer of material between contacts. Oxides and
carbides from components of the atmosphere coat the contacts and cause
high contact resistance.
The transfer of material creates hills and valleys that lock together to "weld"
contacts. Motor loads, for example, produce large inrush currents that can
be 5 to 10 times greater than the steady state current. Table 1-1 summarizes
inrush current magnitudes for different types of loads.
Be aware of heavy current appl ications. When a relay is used in heavy current
applications, the thin layer of gold plating on the contact may be destroyed.
This will not affect the heavy current application. However, if you go back to
a low current application, a high contact resistance may be present and the
relay cannot be used for low current applications.
Use protective circui ts with relay connections. The relay manufacturer
(Aromat) recommends some protective circuits that can be used with your
relay connections. See the Aromat Technical Data Book (AGC-C0064-A-1)
for additional information. Contact Aromat at (408) 433-0466 for more
information.
Do not use capacitors. Capacitors are not to be placed across the load or
relay contacts. Capacitors may suppress arcs, but the energy stored in the
capacitors will flow through the relay contacts, welding them.
Chapter 1
Adding Relay and
Circuit Protection
The Form C switch has space for adding relay and circuit protection. Relay
protection can be added by placing a protective device across the specified
pads. This is done by adding metal oxide varistors (MOVs) between the
common (C) and normally open (NO) or normally closed (NC) terminals.
As the voltage goes up, the varistor draws current to protect the relay.
Circuit protection can be added by placing a protective device in series with
the common lead. This is done by adding a resistor between the common
(C) terminal and your circuit. When inst allin g circuit prote ction, a jump er
must be removed first.
To install these protective devices it is necessary to remove the sheet metal
covers from the module. The locations for installing the devices are labeled
as shown in Table 1-2, where xx = the channel number. Do not install a
capacitor in any of these locations. Figure 1-13 shows locations where these
protective devices can be added.
Table 1-2. Protective Devices Board Locations
Relay Pro tectionCircuit Protection
VxxOVaristor location across common (C) and normally
open (NO).
VxxCVaristor location across common (C) and normally
closed (NC).
Circuit Protection
JMxxResistor or fuse locati on in series with common (C).
C
VxxC
VxxO
x
x
M
J
xx = Channel Number
Figure 1-13. Adding Relay and Circuit Protection
NCNO
Relay
Chapter 1
Getting Started 25
Maximum Allowable
Module Switch
Current
5
4
S
P
M
A
h
c
3
t
i
w
S
r
e
P
t
2
n
e
r
r
u
C
1
The Form C switch has an individual channel current specification of 5A.
However, if you apply 5A to all the channels with a relay contact resistance
of .25 Ohms, the power dissipation is 200 W. Since, for example, the
E1401B mainframe can only provide cooling for 55W per slot (to keep the
temperature rise to 10
o
C), this cannot be allowed to happen.
A reasonable maximum current for the entire mainframe is 50A. That is,
10 channels each carrying 5A or some combination of channels and
currents that total 50A. This will produce about 67.5 W of internal dissipation,
leading to an approximate 15
o
C temperature rise.
Figure 1-14 shows a typical way to derate the channels, in terms of current
throughout the channels, to keep internal power dissipation under 45 W and
Figure 1-14. Typical Form C Switch Allowable Switch Curre nt
26 Getting Started
Chapter 1
Programming the Form C Switch
This section gives guidelines to program the Form C switch, including:
• Using SCPI Commands
• Addressing the Form C Switch
• Initial Oper at io n
Using SCPI
Commands
NOTEMost examples in this manual use SCPI commands . See Appendi x B for
There are several ways you can program the Form C switch. One way is
to write directly to the registers. This method can provide better throughput
speed. However, it requires more knowledge of the Form C switch design.
Another way to program the Form C switch is to use an E1406 Command
Module and SCPI commands. With SCPI commands, the command module
parses the commands and writes to the appropriate Form C switch register.
You can use different controllers and different programming languages.
However, most examples in this manual use SCPI commands and an
HP 9000 Series 200/300 (or equivalent) computer running BASIC or a
PC with an 82350A (or equivalent) Interface Card (with command library)
running Borland
information on writing directly to the registers.
To address specific channels (relays) within a Form C switch, you must
specify the SCPI command and switch channel list. Table 1-3 lists the most
commonly used commands.
SCPI CommandDescription
Turbo C.
Table 1-3. Typical SCPI Commands
Addressing the
Chapter 1
Form C Switc h
CLOSe <
OPEN <
SCAN <
Relays (channels) within the Form C switch are addressed using the
channel_list statement. The channel_list is a combination of the switch card
number and the channel numbers. The channel_list takes the form @ccnn
where cc = switch card number (01-99) and nn = channel number (00-31).
channel_list
channel_list
channel_list
> Connects the normally open (NO) terminal to the
common (C) terminal for the channels specified.
>Connects the normally closed (NC) terminal to the
common (C) terminal for the channels specified.
>Closes the set of Form C relays, one at a time.
Getting Started 27
Card NumbersThe card number (cc of the channel_list) identifies the module within a
switchbox. The card number assigned depends on the switch configuration
used. Leading zeroes can be ignored for the card number.
In a single-module switchbo x configuration, the card num ber is always 01.
In a multiple-module switchbox
logical addresses.
The module with the lowest logical address is always card number 01. The
module with the next successive logical address is card number 02, etc.
Figure 1-15 illustrates card numbers and logical addresses of a typical
multiple-module switchbox configuration.
configuration, modules are set to successive
6
4
8
1
6
1
6
1
4
8
Card Number 01
1
2
Logical Address = 120
Secondary Address = 15
Card Number 02
2
Logical Address = 121
Card Number 03
1
2
Logical Address = 122
Switc h Modu l e
Switc h Modu l e
Switc h Modu l e
Command
Module
8
2
4
2
3
6
1
8
2
641
32841
8
2
2
641
3
Note: Physical placement of the Module in the Logical Address
order is not required, but is recommended.
Figure 1-15. Typical Card Numbers in a Multiple-module Switchbox
Channel AddressesThe channel address (nn of the channel list) determines which relay on the
selected card will be addressed. Form C switch channel numbers are 00
through 31. The channels can be addressed using channel numbers or
channel ranges:
28 Getting Started
• single channels (@ccnn);
• multiple channels (@ccnn,ccnn,...);
• sequential channels (@ccnn:ccnn);
• groups of sequential channels (@ccnn:ccnn,ccnn:ccnn);
• or any combination of the above.
Use a comma (,) to form a channel list or a colon (:) to form a channel range.
Only valid channels can be accessed in a channel list or channel range.
Also, the channel range must be from a lower channel number to a higher
channel number. For example, CLOS(@100:215) is acceptable, but
CLOS(@215:100) generates an error.
Chapter 1
Initial Op e ra t ionTwo example programs follow to help get you started using the Form C
switch. The first example assumes an HP 9000 Series 200/300 controller
running BASIC and a GPIB interface. The second example assumes a PC
running Borland Turbo C and an 82350A (or equivalent) Interface Card (with
command library)
Examp le: Closing a
Channel (BASIC)
Examp le: Closing a
Channel (TURBO C)
This program closes channel 02 of a Form C switch at logical address 120
(secondary address = 120/8 = 15) and queries the channel closure state.
The result is returned to the computer and displayed (1 = channel closed,
0 = channel open). See Chapter 3 for information on the SCPI commands.
10 OUTPUT 70915;"*RST"
20 OUTPUT 70915;"CLOS(@102)"
30 OUTPUT 70915;"CLOS?(@102)"
40 ENTER 70915;Value
50 PRINT Value
60 END
This program closes channel 02 of a Form C switch at logical address 120
(secondary address = 120/8 = 15) and queries the channel closure state.
The result is returned to the computer and displayed (1 = channel closed,
0 = channel open). See Chapter 3 for information on the SCPI commands.
#include <stdio.h>
#include <chpib.h>/*Include file for GPIB*/
#define ISC 7L
#define FORMC 70915L/*Form C default address*/
#define TASK1 "*RST"/*Command for a reset*/
#define TASK2 "CLOSE (@102)"/*Command to close channel 02*/
#define TASK3 "CLOS? (@102)"/*Command to query channel 02*/
! Reset the module
! Close channel 02
! Query channel 02 state
! Enter result into Value
! Display result
error_handler (IOENTERS (FORMC, into, &length), "ENTER command");
printf("Now let's see if the switch is closed: %s",into);
return;
}
int error_handler (int error, char *routine)
{
Getting Started 29
char ch;
if (error != NOERR)
{
printf ("\n Error %d %s \n", error, errstr(error));
printf (" in call to function %s \n\n", routine);
printf ("Press 'Enter' to exit: ");
scanf ("%c", &ch);
exit(0);
}
return 0;
}
30 Getting Started
Chapter 1
Using This Chapter
Chapter 2
Using the Form C Switch
This chapter uses typical examples to show ways to use the E1463A Form
C switch module for switching channels and scanning channels. See
Chapter 3 for command information. Chapter contents are:
• Synchron izing the For m C Swi tc h. . . . . . . . . . . . . . . . . . . . . . .46
NOTEAll examples in this chapter use GPIB select code 7, primary address 09,
and secondary address 15 (LADDR = 120).
Form C Switch Commands
Table 2-1 explains some of the SCPI commands used in this chapter.
See Chapter 3 for more information on these commands.
Table 2-1. E1463A Form C Switch Commands Used in Chapter 2
SCPI CommandCommand Description
[ROUTe:]CLOSe <
[ROUTe:]CLOSe? <
[ROUTe:]OPEN <
[ROUTe:]OPEN? <
[ROUTe:]SCAN <
INITiate[:IMMediate] Starts scan sequence and closes first channel in the <channel_list>
TRIGger:SOURce BUS | EXT |
HOLD | IMM | TTLT
channel_list>
channel_list>
channel_list>
channel_list>
channel_list>
Closes the channels in the <channel_list>
Queries the state of the channels in the <channel_list>
Opens the channels in the <channel_list>
Queries the state of the channels in the <channel_list>
Closes the channels in the <chann el_list>, one at a time
Selects the trigger source to advance the scan
Chapter 2
Using the Form C Switch 31
Power-on and Reset Conditions
Since the Form C switch module has nonlatching relays, all relays condition
are in the normally closed (NC) position at power-down and power-up. The
*RST command opens all channels, invalidates the current channel list for
scanning and sets the conditions shown in Table 2-2.
Table 2-2. Reset Conditions
ParameterDefault Description
ARM:COUNt
TRIGger:SOURceIMMWill advanc e s canning cycles automatically
INITiate:CONTinuous
OUTPut[:STATe]
Module Identification
The following example programs use the *RST, *CLS, *IDN?, SYST:CTYP?,
and SYST:CDES commands to reset and identify the E1463A Form C
switch module. A typical print for the E1463A Form C switch is:
}
int error_handler (int error, char *routine)
{
char ch;
if (error != NOERR)
{
printf ("\n Error %d %s \n", error, errstr(error));
printf (" in call to GPIB function %s \n\n", routine);
printf ("Press 'Enter' to exit: ");
scanf ("%c", &ch);
exit(0);
}
return 0;
}
Chapter 2
Using the Form C Switch 33
Switching Channels
For general purpose relay operation, you can connect or disconnect a load
by opening or closing specified channel relays. By adding exterminal pull-up
resistors, the switch can be configured for digital output operations.
Use CLOS <channel_list> to connect a channel's normally open (NO)
terminal to its common (C) terminal or use OPEN channel_list to connect
a channel's normally closed (NC) contact to its common (C) terminal. The
channel_list has the form (@ccnn) where cc = card number (01-99) and
nn = channel number (00-31).
To OPEN or CLOSe multiple channels place a comma (,) between the
channel numbers. For example, to close channels 101 and 103 execute
CLOS (@101,103). To OPEN or CLOSe a continuous range of channels
place a colon (:) between the first and last channel numbers.
Example:
Opening/Closing
Channels (BASIC)
NOTEImplied commands are those that appear in square brackets ([ ]) in the
Example: Voltage
Switching (BASIC)
This BASIC program shows one way to close and open channel 2 on an
E1463A Form C module (card #1).
command syntax. The brackets are not part of the command and are not
sent to the instrument. For example, in the following program, ROUTe can
be eliminated and just the CLOSe command can be used.
This example closes channel 00 of a Form C switch module to switch the
load voltage (E) from load 1 to load 2. When the channel relay is open, the
load voltage is applied to load 1. When the relay is closed, the voltage is
applied to load 2. See Figure 2-1 for typical user connections. The program
shows how to close channel 00 of the E463A Form C Switch. To open
channel 00, use OPEN (@100).
10 DISP "Testing the E1463A"
20 OUTPUT 70915; "CLOS (@100)"
30 END
!Close channel 00 relay (connect
NO to C). 1 is the card number
and 00 is the channel number.
34 Using the Form C Switch
Chapter 2
E1463A
MODULE
Channel
00
NO
C
NC
Figure 2-1. Example: Voltage Switching
TERMINAL
MODULE
C0NO
2
C0NC
1
C0C
E
E
Example:
Controlling RF
Switches/Step
Attenuators
(BASIC)
Figure 2-2 shows one way to drive the 8761 SPDT RF Switches or 33300
Series Programmable Step Attenuators. (Figure 2-2 only shows control for
the 33300 40 dB step. Additional drive relays are required for the 10 dB and
20 dB steps.)
The 8761A and 33300A/C operate from a 12V - 15V coil voltage, while the
8761B and 33300B/D operate from a 24V - 30V coil voltage. To close
channel 00, execute the following. To open channel 00, use OPEN (@100).
Figure 2-3 shows channel 00 configured for digital output operation.
When the channel 00 relay is open (NC connected to C), point 1 is at +V
and point 2 is at 0V. When the channel 00 relay is closed (NO connected
to C), points 1 and 2 are both at 0V. To close channel 00, execute the
following. To open channel 00, use OPEN (@100).
!Close channel 00 relay (connect
NO to C). 1 is the card number
and 00 is the channel number.
Example: Matrix
Switching (BASIC)
E1463A
MODULE
Channel
00
NO
C
NC
Relay1
Open+V
ClosedOV
Figure 2-3. Example: Digital Output Configuration
The Form C switch module can be configured as a 4 x 8 single-wire matrix
to connect any combination of up to four user sources (S0, S1, S2, S3) to
any combination of up to eight user instruments (I0, I1, I1...I7) at a time.
To do this, make the connections shown in Table 2-3.
TERMINAL
MODULE
C0NO
C0NC
C0C
2
0V
OV
+V
1
2
Chapter 2
Table 2-3. Matrix Switching Connections
Connect These Common (C)
Channel Numbers Together
0, 8, 16, and 240 - 7
1, 9, 17, and 258 - 15
2, 10, 18, and 2616 - 23
3, 11, 19, and 2724 - 31
4, 12, 20, and 28
Using the Form C Switch 37
Connect These Normally Open (NO)
Channel Numbers Together
Table 2-3. Matrix Switching Connections
S0
S1
S2
S3
I0
00
C
08
C
16
C
2425
C
NO
NO
NO
NO
Connect These Common (C)
Channel Numbers Together
Connect These Normally Open (NO)
Channel Numbers Together
5, 13, 21, and 29
6, 14, 22, and 30
7, 15, 23, and 31
Close the channel number enclosed in the circle in Figure 2-4 to connect the
corresponding row and column. This example closes channel 25 to connect
S3 to I1 and closes channel 20 to connect S2 to I4. To close channels 20
and 25, execute the following. To open the channels, use OPEN
(@120,125).
!Close channels 20 and 25. 1 is
the card number; 20 and 25 are
channel numbers.
30 END
02
10
18
26
I3
NO
C
NO
C
NO
C
NO
C
I1
C
C
C
C
09
17
01
I2
NO
C
NO
C
NO
C
NO
C
03
11
19
27
NO
NO
NO
NO
I4
04
C
12
C
20
C
2829
C
I5
NO
NO
NO
NO
I6
NO
05
C
NO
13
C
NO
21
C
NO
CC
I7
NO
06
C
NO
14
C
NO
22
C
NO
30
NO
07
C
NO
15
C
NO
23
C
NO
31
C
Close this channel to connect S to I.
38 Using the Form C Switch
Figure 2-4. Example: Matrix Switching
Chapter 2
Scanning Channels
For the Form C switch, scanning channels consists of closing a specified set
of channels, one channel at a time. You can scan any combination of
channels for a single-module or a multiple-module switchbox. Single,
multiple, or continuous scanning modes are available. See Chapter 3 for
additional information on scanning Form C switch channels.
Channel lists can extend across boundaries. For multiple-module switchbox
instruments, the channels to be scanned can extend across switch modules.
For example, for a two-module switchbox instrument, SCAN (@100:231 will
scan all channels of both Form C switch modules.
Use ARM:COUNt <number> to set multiple/continuous scans (from 1 to
32,767 scans). Use INITiate:CONTinuous ON to set continuous scanning.
See Chapter 3 for information about these SCPI commands.
Example: Scanning
Using Trig In and
Trig Out Ports
(BASIC)
3457A Multimeter (Rear View)
This example shows one way to synchronize instrument measurements
of a device under test (DUT) with Form C switch channel closures. For
measurement synchronization, the E1406A Command Module "Trig In"
and "Trig Out" ports are connected to the instrument "Voltmeter Complete"
and "External Trigger ports. See Figure 2-5 for typical user connections.
For this example, the normally closed (NC) contacts (channels 00-02) are
connected to ground and the measurements are made on the common (C)
contacts. The command module and instrument are connect ed via GPIB.
The Form C switch module has a logical address 120 (secondary address
15) and the external instrument has an address of 722.
E1406A
Command
Module
+5V
Trig
Trig
Out
In
+5V
0V
VoltmeterExternal
Complete
0V
Trigger
Chapter 2
HILO
I
HI
LO
NC(00,01,02)
C(00,01,02)
E1463A
FORM-C
Terminal Module
Figure 2-5. Example: Scanning Using Trig In and Trig Out Ports
Using the Form C Switch 39
E1463A
Module
10 OUTPUT 70915; "*RST;*CLS"
20 OUTPUT 722;"TRIG EXT;DCV"
30 OUTPUT 722;"MEM FIFO"
40 OUTPUT 70915;"OUTP ON"
50 OUTPUT 70915;"TRIG:SOUR EXT"
60 OUTPUT 70915;"SCAN (@100:102)"
70 OUTPUT 70915;"INIT"
80 WAIT 2
90 FOR Channel=1 TO 3
100 ENTER 722;Result
110 PRINT Result
120 NEXT Channel
130 END
!Reset and clear the module
!External trigger, dc volts
!Mem o r y first i n , fi r s t out
!Enable "Trig Out"
!External triggering
!Scan channels 00-02
!Enable scan
!Wait for switch closures
!Start loop
!Enter result
!Display result
!Increment count
Example: Scanning
Using the TTL
Trigger Bus (BASIC)
E1406A
Command Module
This example uses the E1406A Command Modu le TTL trigger bus lines to
synchronize Form C channel closures to an E1412A System Multimeter.
For measurement synchronization, the E1406A TTL trigger bus line 0 is
used by the Form C module to trigger the multimeter to perform a
measurement and the E1406A TTL trigger bus line 1 is used by the
multimeter to advance the Form C scan.
Figure 2-6 shows one way to connect the Form C module to the E1412A
multimeter module. The connections shown with dotted lines are not actual
hardware connections. These connections indicate how the firmware
operates to accomplish the triggering.
Part of VXIbus
TTLTrg0
TTLTrg1
Multimeter Module
Trigger
VM
Complete
HI
E1412A
E1463A
Terminal Modul e
TTLTrg0
TTLTrg1
E1463A
Module
40 Using the Form C Switch
LO
Figure 2-6. Example: Scanning Using the TTL Trigger Bus
Chapter 2
The following BASIC program sets up the multimeter (GPIB address 70903)
to scan making 2-wire resistance measurements. The common terminals for
channels 0 through 2 are connected together for this example. When one of
these switches is closed (C connected to NO), different DUTs are switched
in for a measurement. Triggering is accomplished by the E1406A firmware.
The measurement is taken from the common (C) terminal.
All query commands end with a "?". These commands are used to determine
a specific state of the module. The data is sent to the output buffer where
you can retrieve it into your computer. See Chapter 3 for more information
on these commands.
Use CLOSe? <channel_list> or OPE N? <channel_list> to query the channel
state (open/closed). CLOS? returns a "1" for channel(s) closed and a "0" for
channel(s) open. OPEN? returns a "0" for channel(s) closed and a "1" for
channel(s) open. (Commands are software queries and do not account for
relay hardware failures.)
Example: Querying
Channel Closures
This example closes a range of channels and queries for the results.
You can use the Scan Complete bit (bit 8) in the Operation Status Register
(in the command module) of a switchbox to determine when a scanning
cycle completes (no other bits in the register apply to the switchbox).
Bit 8 has a decimal value of 256 and you can read it directly with the
STAT:OPER? command. Refer to the STATus:OPE Ration[ :EVENt]?
command in Chapter 3 for an example.
When enabled by the STAT:OPER:ENAB 256 co mmand, the Scan
Complete bit will be reported as bit 7 of the Status Register. Use the GPIB
Serial Poll or the IEEE 488.2 Common Command *STB? to read the Status
Register.
!Dimensions a string variable to
32 characters
!Closes channels 00 through 31
!Queries to see if the channels
are closed
!Enters the results from the switch
card into the variable Channels$
! Prints the channels closed
(should print 1s)
42 Using the Form C Switch
When bit 7 of the Status Register is enabled by the *SRE 128 Common
Command to assert a GPIB Service Request, you can interrupt the
computer when the Scan Complete bit is set, after a scanning cycle
completes. This allows the computer to do other operations while the
scanning cycle is in progress.
Chapter 2
Example: Using the
Scan Complete Bit
(BASIC)
This example monitors bit 7 in the Status Register to determine when the
scanning cycle is complete. The computer interfaces with an E1406A
Command Module over GPIB. The GPIB select code is 7, the GPIB primary
address is 09, and the GPIB secondary address is 15.
100 ENTER 70915; A$
110 PRINT "STAT:OPER:ENAB?=";A$
120 OUTPUT 70915; "*STB?"
130 ENTER 70915; A$
140 PRINT "Switch Status = ";A$
150 OUTPUT 70915; "INIT"
160 I = 0
170 WHILE (I=0)
180 I = SPOLL(70915)
190 PRINT "Waiting for scan to complete: SPOLL = ";I
200 END WHILE
210 I = SPOLL(70915)
220 PRINT "Scan complete: SPOLL = ";I
230 END
!Reset and clear the module
!Enable Scan Complete Bit
!Set the Form C switch for
continuous triggering
!Select channels to scan
!Wait for operation complete
!Query the contents in the
operation status register
!Print the contents of the
operation status register
!Query the contents of the status
byte register
!Print the contents of the status
byte register
!Start scan cycle
!Initialize the value of the counter
!Stay in loop until some value is
returned from the SPOLL (70915)
command
Chapter 2
Using the Form C Switch 43
Saving and Recalling States
The *SAV <numeric_state> command saves the current instrument state.
The state number (0-9) is specified by the <numeric_state> parameter. The
settings saved by this command are:
• Channel relay states (open or closed)
• ARM:COUNt
• TRIGger:SOURce
• OUTPut:STATe
• INITiate:CONTinuous
The *RCL <numeric_state > c om man d recalls the state when the last
*SAV was executed for the specified <numeric_state> parameter (0-9).
If no *SAV was executed for the <numeric_state>, *RST default settings
are used. Refer to the *SAV settings list for the settings recalled by *RCL.
Example: Saving
and Recalling State
(BASIC)
This program shows how to save and recall Form C switch states.
100 ENTER 70915;A$
110 PRINT "Channels Closed:";A$
120 END
!Dimension a string variable for
150 characters
!Close channels 00 - 31 on the
Form C switch
!Save as numeric state 5
!Reset and clear the Form C
switch
!Query the channels closed
!Print closed channels (should
print 0s)
!Recall numeric state 5
!Query to see which channels
are closed
!Print closed channels
(should print 1s)
44 Using the Form C Switch
Chapter 2
Detecting Error Conditions
The SYSTem:ERRor? query requests a value from an instrument's error
register. This register contains an integer in the range [-32,768 to 32,767].
The response takes the form <err_num ber>,<err_message> where
<err_number> is the value of the instrument's error and <err_message>
is a short description of the error.
Example: Detecti ng
Error Conditions
(BASIC)
Example: Detecti ng
Error Conditions
(Turbo C)
This BASIC program attempts an illegal channel closure and polls for an
error message.
This Turbo C program attempts an illegal channel closure and polls for an
error message. If no error occurs, the switchbox responds with 0, "No error".
If there has been more than one error, the instrument will respond with the
first error in its error queue. Subsequent queries continue to read the error
queue until it is empty. The maximum <err_message> string length is 255
characters.
#include stdio.h
#include chpib.h/*Include file for GPIB*/
#define ISC 7L
#define FORMC 70915L/*Form C default address*/
#define TASK1 "CLOSE (@135)"/*Command for illegal switch closure*/
#define TASK2 "SYST:ERR?"/*Command for system error*/
!Dimension a string variable for
256 characters
!Try to close an illegal channel
!Query for a system error
char ch;
if (error != NOERR)
{
printf ("\n Error %d %s \n", error, errstr(error));
printf (" in call to GPIB function %s \n\n", routine);
printf ("Press 'Enter' to exit: ");
scanf ("%c", &ch);
exit(0);
}
return 0;
}
Synchronizing the Form C Switch
This section gives g uideli nes to synch ronize a Form C swi tch module with a
measurement instrument.
Example:
Synchronizing the
Form C Switc h
(BASIC)
This BASIC program shows one way to synchronize a Form C switch
module with a measurement instrument. In this example, the Form C
switch module switches a signal to a multimeter. The program then verifies
the channel is closed before the multimeter begins its measurement.
10 OUTPUT 70915; "CLOS (@105)"
20 OUTPUT 70915; "*OPC?"
30 ENTER 70915; Opc_value
40 OUTPUT 70915; "CLOS? (@105)"
50 ENTER 70915;A
60 IF A=1 THEN
70 OUTPUT 70903;"MEAS:VOLT:DC?"
80 ENTER 70903; Meas_value
90 PRINT Meas_value
100 ELSE
110 PRINT "Channel did not close"
120 END IF
130 END
!Close channel 5
!Wait for operation complete
!Check to see if channel closed
!When channel is closed,
measure the voltage
!Print the measured voltage
46 Using the Form C Switch
Chapter 2
E1463A Command Reference
Using This Chapter
Command Types
Chapter 3
This chapter describes Standard Commands for Programmable Instruments
(SCPI) and summarizes IEEE 488.2 Common (*) commands applicable to
the E1463A Form C Switch Module. This chapter contains the following
sections:
• IEEE 488.2 Common Commands Reference. . . . . . . . . . . . . .76
Commands are separated into two types: IEEE 488.2 Common commands
and SCPI commands.
Common Command
Format
SCPI Comma nd
Format
The IEEE 488.2 standard defines the Common commands that perform
functions like reset, self-test, status byte query, etc. Common commands
are four or five characters in length, always begin with the asterisk character
(*), and may include one or more parameters. The command keyword is
separated from the first parameter by a space character. Some examples
of Common commands are shown below:
*RST *ESE <unmask> *STB?
The SCPI commands perform functions like closing switches, opening
switches, scanning channels, querying instrument states or retrieving data.
A subsystem command structu re is a hierarchical structure that usually
consists of a top level (or root) command, one or more lower-level
commands, and their parameters. The following example shows part of a
typical subsyste m :
[ROUTe:]
CLOSe<channel_list>
SCAN <channel_list>
:MODE?
[ROUTe:] is the root command, CLOSe and SCAN are second-level
commands with parameters, and :MODE? is a third-level command.
There must be a space between the second-level command (such as
CLOSe) and the parameter (<channel_list>).
Chapter 3
E1463A Command Reference 47
Command SeparatorA colon (:) always separates one command from the next lower-level
command as shown below:
[ROUTe:]SCAN:MODE?
Colons separate the root command from the second-level command
([ROUTe:]SCAN) and the second level from the third level (SCAN:MODE?).
Abbreviated CommandsThe command syntax shows mos t comman ds as a mixture of upper- and
lowercase letters. The uppercase letters indicate the abbreviated spelling for
the command. For shorter program lines, send the abbreviated form. For
better program readability, you may send the entire command. The
instrument will accept either the abbreviated form or the entire command.
For example, if the command syntax shows TRIGger, then TRIG and
TRIGGER are both acceptable forms. Other forms of TRIGger, such as
TRIGG or TRIGGE will generate an error. You may use uppercase or
lowercase letters. Therefore, TRIGGER, trigger, and TrigGeR are all
acceptable.
Implied CommandsImplied commands are those that appear in square brackets ([ ]) in the
command syntax. (The brackets are not part of the command and are not
sent to the instrument.) Suppose you send a second-level command but do
not send the preceding implied command. In this case, the instrument
assumes you intend to use the implied command and it responds as if you
had sent it. Examine the portion of the [ROUTe:] subsystem shown below:
Varia ble Co mm an d
Syntax
[ROUTe:]
CLOSe<channel_list>
The root command [ROUTe:] is an implied command (indicated by square
brackets ([ ])). To make a query about a channel’s present status, you can
send either of the following command statements:
ROUT:CLOSe? <channel_list> or CLOSe? <chan nel_list>
Some commands have what appears to be a variable syntax, such as
OUTPut:TTLTrgn. In this command, the "n" is replaced by a number.
No space is left between the command and the number because the number
is not a parameter.
48 E1463A Command Reference
Chapter 3
ParametersParameterTypes. The following table contains explanations and examples of
parameter types you might see later in this chapter.
TypeExplanations and Examples
BooleanRepresents a single binary condition that is either true or
false (ON, OFF, 1.0). Any non-zero value is considered
true.
DiscreteSelects from a finite number of values. These parameters
use mnemonics to represent each valid setting. An
example is the TRIGger:SOURce <source> command
where <source> can be BUS, EXTernal, HOLD,
IMMediate, or TTLTrgn.
NumericCommonly used decimal representations of numbers
including optional signs, decimal points, and scientific
notation. Examples are 123, 123E2, -123, -1.23E2, .123,
1.23E-2, 1.23000E-01. Special cases include MINimum,
MAXimum, DEFault and INFinity.
Optional
Linking CommandsLinking IEEE 488.2 Common Commands with SCPI Commands. Use a
semicolon (;) between the commands. For example, *RST;*RCL 1 or
CLOS (@101);*SAV 1
Linking Multiple SCPI Commands. Use both a semicolon (;) and a colon (:)
between the commands, such as CLOS (@101);:CLOS? (@101).
Linking Subsyste m Commands. SCPI also allows several commands within
the same subsystem to be linked with a semicolon, such as ROUT:CLOS
(@101);:ROUT:CLOS? (@101) or ROUT:CLOS (@101);CLOS? (@101).
Parameters shown within square brackets ([ ]) are optional
parameters. (The brackets are not part of the command and are not sent to the instrument.) I f yo u do not spe cify a
value for an optional parameter, the instrument chooses a
default value.
For example, consider the ARM:COUNt? [<MIN | MAX>]
command. If you send the command without specifying a
parameter, the present ARM:COUNt value is returned. If
you send the MIN parameter, the command returns the
minimum count available. If you send the MAX parameter,
the command returns the maximum count available. Be
sure to place a space between the command and the
parameter.
SCPI Command Reference
This section describes the Standard Commands for Programmable
Instruments (SCPI) commands for the E1463A. Commands are listed
alphabetically by subsystem and within each subsystem.
Chapter 3
E1463A Command Reference 49
ABORt
Subsystem SyntaxABORt
The ABORt command stops a scan in progress when the scan is enabled
via the interface and the trigger source is TRIGger:SOURce BUS or
TRIGger:SOURce HOLD.
CommentsABORt Actions: The ABORt command terminates the scan and invalidates
the current channel list.
Stopping Scan Enabled Via Inter face: When a scan is enabled via an
interface, an interface CLEAR command can be used to stop the scan.
When the scan is enabled via the interface and TRIG:SOUR BUS or HOLD
is set, you can use ABORt to stop the scan.
Related Commands: ARM, INITiate:CONTinuous,[ROUTe:]SCAN, TRIGger
ExampleStopping a Scan with ABORt
This example stops a continuous scan in progress.
TRIG:SOUR BUS
INIT:CONT ON
SCAN(@100:107)
INIT
.
.
ABOR
!Trigger command will be via
backplane (bus) interface (*TRG
command generates trigger)
!Set continuous scanning
!Scan channels 00 to 07
!Start scan, close channel 00
!Abort scan in progress
50 E1463A Command Reference
Chapter 3
ARM
Subsystem SyntaxARM
ARM:COUNt
Parameters
The ARM subsystem selects the number of scanning cycles (1 to 32,767)
for each INITiate command.
:COUNt <number> MIN | MAX
:COUNt? [<MIN | MAX>]
ARM:COUNt <number> MIN | MAX allows scanning to occur a multiple of
times (1 to 32,767) with one INITiate command when INITiate:CONTinuous
OFF | 0 is set. MIN sets 1 cycle and MAX sets 32,767 cycles.
NameTypeRange of Val uesDefault Value
<number>numeric
1 - 32,767 | MIN | MAX
1
CommentsNumber of Scans: Use only numeric values between 1 and 32767, MIN, or
MAX for the number of scanning cycles.
Related Commands: ABORt, INITia te [:IMMediate]
*RST Condition: ARM:COUNt 1
ExampleSetting Ten Scann ing Cycl es
This example sets a Form C switch for 10 scans of channels 00 through 03.
When the scan sequence completes, channels 00 through 03 (relays 00
through 03) are closed.
ARM:COUN 10
SCAN(@100:103)
INIT
!Set 10 scans per INIT command
!Scan channels 00 to 03
!Start scan, close channel 00
Chapter 3
E1463A Command Reference 51
ARM:COUNt?
Parameters
ARM:COUNt? [<MIN | MAX>] returns the current number of scanning cycles
set by ARM:COUNt. The current number of scan cycles is returned when
MIN or MAX is not specified. With MIN or MAX as a parameter, MIN returns
"1" and MAX returns "32,767".
NameTypeRange of ValuesDefault Value
MIN | MAX
numeric
MIN = 1, MAX = 32,767
CommentsRelated Commands: INITiate [:IMMediate]
ExampleQuerying Number of Scans
This example sets a switchbox for 10 scanning cycles and queries the
number of scan cycles set. The ARM:COUN? command returns 10.
ARM:COUN 10
ARM:COUN?
current cycle
!Set 10 scans per INIT command
!Query number of scans
52 E1463A Command Reference
Chapter 3
DISPlay
The DISPlay subsystem monitors the channel state of the selected module
in a switchbox. This subsystem operates with an E1406A Command Module
when a display terminal is connected.
Subsystem SyntaxDISPlay
DISPlay:MONitor:CARD
DISPlay:MONitor:CARD <number> | AUTO se l e cts the modul e i n a switchbox
to be monitored.
Parameters
:MONitor
:CARD <number> | AUTO
[:STATe] <mode>
NameTypeRange of ValuesDefault Va lue
<number> | AUTOnumeric
1 - 99
AUTO
CommentsSelecting a Specific Module to be Monitored: Use DISPlay:MONitor:CARD
to send the card number for the switchbox to be monitored.
Selecting the Present Module to be Monitored: Use DISPlay:MONitor:CARD
AUTO to select the last module addressed by a switching command (for
example, [ROUTe:]CLOSe).
*RST Conditions: DISPlay: MONit or:CARD AUTO
ExampleSelect Module #2 i n a Switchbox for Monitoring
DISP:MON:CARD 2
!Selects module #2 in a switchbox
Chapter 3
E1463A Command Reference 53
DISPlay:MONitor[:STATe]
DISPlay:MONitor[:STATe] <mode> turns the monitor mode ON or OFF.
Parameters
NameTypeRange of Val uesDefault Value
<mode>boolean
ON | OFF | 1 | 0OFF | 0
CommentsMonitoring Switchbox Channels: DISPlay:MONitor:STATe ON or
DISPlay:MONitor:STATe 1 turns the monitor mode ON to show the channel
state of the selected module. DISPlay:MONitor:STATe OFF or
DISPlay:MONitor:STATe 0 turns the channel monitor OFF.
Selecting the Module to be Monitored: Use DISPlay:MONitor:CARD
<number> AUTO to select the module .
Monitor Mode with a Form C Switch: When monitoring mode is turned ON,
decimal numbers representing the channels closed will be displayed at the
bottom of the display terminal. For example, if channels 3, 7, and 12 are
closed, the bottom of the display will read as foll ows , where the chan nel
numbers represent channels that are closed.
Chan , , ,3, , , , 7, , , , ,12, , , , ... etc.
*RST Condition: DISPlay:MONitor[:STATe]OFF | 0
ExampleEnabling Monitor Mode
DISP:MON:CARD 2
DISP:MON 1
!Select module #2 in a switchbox
!Turn monitor mode ON
54 E1463A Command Reference
Chapter 3
INITiate
Subsystem SyntaxINITiate
INITiate:CONTinuous
Parameters
The INITiate command subsystem selects continuous scanning cycles and
starts the scanning cycle.
:CONTinuous <m ode>
:CONTinuous?
[:IMMediate]
INITiate:CONTinuous <mode> enables or disables continuous scanning
cycles for the switchbox.
NameTypeRange of Val uesDefault Value
<mode>boolean
ON | OFF | 1 | 0OFF | 0
CommentsContinuous Scanning Opera tion: Continuous scanning is enabled with
INITiate:CONTinuous ON or INITiate:CONTi nuous 1. Sendin g
INITiate:IMMediate closes the first channel in the channel list. Each trigger
from the source specified by TRIGger:SOURce advances the scan through
the channel list. A trigger at the end of the channel list closes the first
channel in the channel list and the scan cycle repeats.
Noncontinuous Scanning Operation: Noncontinuous scanning is enabled
with INITiate:CONTinuous OFF or INITiate:CONTinuo us 0. Sending
INITiate:IMMediate closes the first channel in the channel list. Each trigger
from the source specified by TRIGger:SOURce advances the scan through
the channel list. At the end of the scanning cycle, the last channel in the
channel list is opened.
Stopping Continuous Scan: See the ABORt command.
Related Commands: ABORt, ARM:COUNt, TRIGge r:SO URce
*RST Condition: INITiate:CONTinuous OFF | 0
Chapter 3
E1463A Command Reference 55
ExampleEnabling Continuous Scanning
This example enables continuous scanning of channels 00 through 03 of a
single-module switchbox. Since TRIGger:SOURce IMMediate (default) is
set, use an interface clear command (such as CLEAR) to stop the scan.
INITiate:CONTinuous?
ExampleQuerying Continuous Scanning State
INITiate[:IMMediate]
INIT:CONT ON
SCAN(@100:103)
INIT
INITiate:CONTinuous? queries the scanning state. With continuous scanning
enabled, the command returns "1" (ON). With continuous scanning
disabled, the command returns "0" (OFF).
This example enables continuous scanning of a switchbox and queries the
state. Since continuous scanning is enabled, INIT:CONT? returns "1".
INIT:CONT ON
INIT:CONT?
INITiate[:IMMediate] starts the scanning process and closes the first channel
in the channel list. Successive triggers from the source specified by the
TRIGger:SOURce command advance the scan through the channel list.
!Enable continuous scanning
!Define channel list
!Start scan cycle, close channel 00
!Enable continuous scanning
!Query continuous scanning state
CommentsStarting the Scanni ng Cycle: INITiate:IMMediate starts scanning by closing
ExampleEnabling a Single Scan
56 E1463A Command Reference
the first channel in the channel list. Each trigger received advances the scan
to the next channel in the channel list. An invalid channel list definition
causes an error (see [ROUTe:]SCAN).
Stopping Scanning Cycles: See the ABORt command.
This example enables a single scan of channels 00 through 03 of a
single-module switchbox. The trigger source to advance the scan is
immediate (internal) triggering set with TRIGger:SOURceIMMediate
(default).
SCAN(@100:103)
INIT
!Scan channels 00 - 03
!Begin scan, close channel 00
(use immediate triggering)
Chapter 3
OUTPut
The OUTPut command subsystem enables or disables the different trigger
lines of the E1406A Command Module.
Subsystem SyntaxOUTPut
OUTPut:EXTernal[:STATe]
OUTPut:EXTernal[:STATe] <mode> enables or disables the "Trig Out" port on
the E1406A Command Module.
:EXTernal
[:STATe] <mode>
[:STATe]?
[:STATe] <mode>
[:STATe]?
:TTLTrgn (:TTLTrg0 through :TTLTrg7)
[:STATe] <mode>
[:STATe]?
Parameters
NameTypeRange of Val uesDefault Value
<mode>boolean
ON | OFF | 1 | 0OFF | 0
CommentsEnabling "Trig Out " Port: When enabled, a pulse is output from the "Trig Out"
port after each scanned switchbox channel is closed. If disabled, a pulse is
not output from the port after channel closures. The output pulse is a +5V
negative-going pulse.
"Trig Out" Port Shared b y Switchboxe s: When enabled, the "Trig Out" port is
pulsed by any switchbox each time a scanned channel is closed. To disable
the output for a specific module send OUTPut:EXTernal[:STATe] OFF or
OUTPut:EXTernal[:STATe] 0 for that module.
One Output Select ed at a T ime: Only one output (TTLTrg or EXTernal) can be
enabled at one time. Enabling a different output source will automatically
disable the active output.
Related Commands: [ROUTe:]SCAN, TRIGger :SOURce
*RST Condition: OUTPut:EXTernal[:STATe] OFF (port disabled)
Chapter 3
ExampleEnabling "Trig Out" Port
OUTP:EXT ON
!Enable "Trig Out" port to output
pulse after each scanned channel
is closed
E1463A Command Reference 57
OUTPut:EXTernal[:STATe]?
OUTPut:EXTernal[:STATe]? queries the present state of the "Trig Out" port
on the E1406A Command Module. The command returns "1" if the port is
enabled or "0" if the port is disabled.
ExampleQuery "Trig Ou t" Por t Enable State
This example enables the "Trig Out" port and queries the enable state.
OUTPut:EXTernal[:STATe]? returns "1" since the port is enabled.
OUTPut[:STATe]
Parameters
Comments*RST Condition: OUTPut[:STATe] OFF (port disabled)
ExampleEnabling "Trig Out" Port
OUTP:EXT ON
OUTP:EXT?
OUTPut[:STATe] <mode> enables or disables the "Trig Out" port on the
E1406A Command Module. OUTPut[:STATe] ON | 1 enables the port and
OUTPut[:STATe] OFF | 0 disables the port. This command functions the
same as OUTPut:EXTernal[:STATe].
NameTypeRange of Val uesDefault Value
<mode>boolean
OUTP ON
!Enable E1406A "Trig Out" port
!Query port enable state
ON | OFF | 1 | 0OFF | 0
!Enable "Trig Out" port to output
pulse after each scanned channel
is closed
58 E1463A Command Reference
Chapter 3
OUTPut[:STATe]?
ExampleQuery "Trig Ou t" Por t Enable State
OUTPut[:STATe]? queries the present state of the E1406A Command
Module "Trig Out" port. The command returns "1" if the port is enabled or
"0" if the port is disabled. This command functions the same as
OUTPut:EXTernal[:STATe]?.
This example enables the E1406A Command Modul e "Trig Out" port and
queries the enable state. OUTPut[:STATe]? returns "1" since the port is
enabled.
OUTP ON
OUTP?
OUTPut:TTLTrgn[:STATe]
OUTPut:TTLTrgn[:STAT e ] <mode> selects and enables which TTL Trigger
bus line (0 to 7) will output a trigger when a channel is closed during a scan.
This is also used to disable a selected TTL Trigger bus line. "n" specifies the
TTL Trigger bus line (0 to 7) and <mode> enables (ON or 1) or disables
(OFF or 0) the specified TTL Trigger bus line.
Parameters
CommentsEnabling TTL Tr igger Bus: When enabled, a pulse is output from the selected
TTL Trigger bus line (0 to 7) after each channel in the switchbox is closed
during a scan. If disabled, a pulse is not output. The output is a
negative-going pulse.
!Enable "Trig Out" port
!Query port enable state
NameTypeRange of Val uesDefault Value
nnumeric0 to 7N/A
<mode>boolean
ON | OFF | 1 | 0OFF | 0
Chapter 3
One Output Select ed at a T ime: Only one output (TTLTrg or EXTernal) can be
enabled at one time. Enabling a different output source will automatically
disable the active output. For example, if TTLTrg1 is the active output and
TTLTrg4 is enabled, TTLTrg1 will become disabled and TTLTrg4 will
become the active output.
Related Commands: [ROUTe:]SCAN, TRIGger :SOURce,
OUTPut:TTLTrgn[:STATe]?
*RST Condition: OUTPut:TTLTrgn[ :STAT e] OFF (disabl ed)
E1463A Command Reference 59
ExampleEnabling TTL Trigger Bus Line 7
OUTP:TTLT7:STAT 1
OUTPut:TTLTrgn[:STATe]?
OUTPut:TTLTrgn[:STATe]? queries the present state of the specified TTL
Trigger bus line. The command returns "1" if the specified TTLTrg bus line
is enabled or "0" if disabled.
ExampleQuery TTL Trigger Bus Enable State
This example enables TTL Trigger bus line 7 and queries the enable state.
OUTPut:TTLTrgn? returns "1" since the port is enabled.
OUTP:TTLT7:STAT 1
OUTP:TTLT 7?
!Enable TTL Trigger bus line 7 to
output pulse after each scanned
channel is closed
!Enable TTL Trigger bus line 7
!Query bus enable state
60 E1463A Command Reference
Chapter 3
[ROUTe:]
Subsystem Syntax[ROUTe:]
[ROUTe:]CLOSe
The [ROUTe:] command subsystem controls switching and scanning
operations for Form C switch modules in a switchbox.
CLOSe <channel_list>
CLOSe? <channel_list>
OPEN <channel_list>
OPEN? <channel_list>
SCAN <channel_list>
NOTEThere must be a space between the second level command (CLOS, for
example) and the parameter <channel_list>.
[ROUTe:]CLOSe <channel_list> closes the Form C switch channels specified
by <channel_list>. <channel_list> has the form (@ccnn) where cc = card
number (01-99) and nn = channel number (00-31).
Parameters
NameTypeRange of ValuesDefault Value
<channel_list>numeric
CommentsClosing Channels:
• To close a single channel use ROUT :CLOS (@ccnn)
• To close multiple channels use ROUT:CLOS (@ccnn,ccnn,...)
• To close sequential channels use ROUT:CLOS (@ccnn:ccnn)
• To close groups of sequential channels use ROUT :CLOS
(@ccnn:ccnn,ccnn:ccnn)
• or any combination of the above
NOTEClosure order for multiple channels with a single command is not
guaranteed. Channel numbers can be in the <channel_list> in any
random order.
Related Commands: [ROUTe:]OPEN, [ROUTe :]CLOSe?
*RST Condition: All channels open.
cc00 - cc31N/A
Chapter 3
E1463A Command Reference 61
ExampleClosing Form C Switch Channels
This example closes channels 100 and 213 of a two-module switchbox (card
numbers 01 and 02).
[ROUTe:]CLOSe?
CommentsQuery is Software Readback: ROUTe:CLOSe? returns the current software
ExampleQuerying Channel Closure
CLOS(@100,213)
[ROUTe:]CLOSe? <channel_list> returns the current state of the channel(s)
queried. <channel_list> has the form (@ccnn) where cc = card number
(01-99) and nn = channel number (00-31). The command returns "1" if
channel(s) are closed or returns "0" if channel(s) are open.
state of the channel(s) specified. It does not account for relay hardware
failures.
A maximum of 128 channels can be queried at one time. If you want to query
more than 128 channels, you must enter the query data in two separate
commands.
This example closes channels 100 and 213 of a two-module switchbox and
queries channel closure. Since the channels are programmed to be closed
"1,1" is returned as a string.
!Close channels 100 and 213. 100
closes channel 00 of card #1 and
213 closes channel 13 of card #2.
[ROUTe:]OPEN
Parameters
CLOS(@100,213)
CLOS?(@100,213)
[ROUTe:]OPEN <channel_list> opens the Form C switch channels specified
by <channel_list>. <channel_list> has the form (@ccnn) where cc = card
number (01-99) and nn = channel number (00-31).
NameTypeRange of ValuesDefault Value
<channel_list>numeric
!Close channels 100 and 213
!Query channels 100 and 213
state
cc00 - cc31N/A
62 E1463A Command Reference
Chapter 3
CommentsOpening Channels:
• To open a single channel use ROUT:OPEN (@ccnn)
• To open multiple channels use ROUT:OPEN (@ccnn,ccnn,...)
• To open sequential channels use ROUT:OPE N (@ccnn:ccnn)
• To open groups of sequential channels use ROUT:OPEN
(@ccnn:ccnn,ccnn:ccnn)
• or any combination of the above
Opening Order: Opening order for multiple channels with a single command
is not guaranteed.
Related Commands: [ROUTe:]CLOSe, [ROUTe: ]O PEN?
*RST Condition: All channels open.
ExampleOpening Form C Switch Channels
This example opens channels 100 and 213 of a two-module switchbox (card
numbers 01 and 02).
[ROUTe:]OPEN?
CommentsQuery is Software Readback: ROUTe:OPEN? returns the current software
ExampleQuerying Channel Open State
OPEN(@100,213)
[ROUTe:]OPEN? <channel_list> returns the current state of the channel(s)
queried. <channel_list> has the form (@ccnn) where cc = card number
(01-99) and nn = channel number (00-31). The command returns "1" if
channel(s) are open or returns "0" if channel(s) are closed.
state of the channel(s) specified. It does not account for relay hardware
failures.
A maximum of 128 channels can be queried at one time: If you want to query
more than 128 channels, you must enter the query data in two separate
commands.
This example opens channels 100 and 213 of a two-module switchbox and
queries channel 213 state. Since channel 213 is programmed to be open,
"1" is returned.
!Open channels 100 and 213. 100
opens channel 00 of card #1 and
213 opens channel 13 of card #2.
Chapter 3
OPEN(@100,213)
OPEN?(@213)
!Open channels 100 and 213
!Query channel 213 state
E1463A Command Reference 63
[ROUTe:]SCAN
Parameters
[ROUTe:]SCAN <channel_list> defines the channels to be scanned.
<channel_list> has the form (@ccnn) where cc = card number 01-99) and
nn = channel number (00-31).
NameTypeRange of ValuesDefault Value
Comments
NOTEChannel numbers can be in the <channel_list> in any random order.
<channel_list>numeric
Defining Scan List: When ROUTe:SCAN is executed, the channel list is
checked for valid card and channel numbers. An error is generated for an
invalid channel list.
Scanning Channels:
cc00 - cc31N/A
• To scan a single channel use ROUT:SCAN (@ccnn)
• To scan multiple channels use ROUT:SCAN (@ccnn,ccnn,...)
• To scan sequential channels use ROUT:SCAN (@ccnn:ccnn)
• To scan groups of sequential channels use ROUT:SCAN
(@ccnn:ccnn,ccnn:ccnn)
• or any combination of the above
Scanning Operation: When a valid channel list is defined,
INITiate[:IMMediate] begins the scan and closes the first channel in the
<channel_list>. Successive triggers from the source specified by
TRIGger:SOURce advance the scan through the <channel list>. At the
end of the scan, the last trigger opens the last channel.
ExampleScanning Using Ext ernal Device
64 E1463A Command Reference
Stopping Scan: See ABORt
Related Commands: TRIGger, TRIGger:SOURce
*RST Condition: All channels open.
See "Scanning Channels" in Chapter 2 for examples of scanning programs
using external instruments.
Chapter 3
STATus
Subsystem SyntaxSTATus
The STATus subsystem reports the bit values of the OPERation Status
Register. It also allows you to unmask the bits you want reported from the
Standard Event Status Register and to read the summary bits from the
Status Byte Register.
:OPERation
:CONDition?
:ENABle <unmask>
:ENABle?
[:EVENt?]
:PRESet
As shown in Figure 3-1, the STATus subsystem for the E1463A Form C
Switch includes the Status Byte Register, the Standard Event Status
Register, OPERation Status Register, and Output Queue. The Standard
Event Statu s Register (*ESE?) a n d the Sta tu s Byte Register (*ST B? ) are
under IEEE 488.2 contro l.
Stat us Byte Register
In the Status Byte register, the Operation Status bit (OPR), Request Service
bit (RQS), Standard Event bit (ESB), Message Available bit (MAV) and
Questionable Data bit (QUE) (bits 7, 6, 5, 4 and 3 respectively) can be
queried with the *STB? command.
Standard Event Status Regist er
In the Standard Event Status Register, you can use *ESE? to query the
"unmask" value (the bits to be logically ORed into the Summary bit).
The registers are queried using decimal-weighted bit values. Decimal
equivalents for bits 0 through 15 are shown in Figure 3-1.
OPERation Status Register
Using STATus:OPERation:ENABle 256 allows only bit 8 to generate a
Summary bit from the OPERation Status Register, since the decimal value
for bit 8 is 256. The decimal values can also used in the inverse manner to
determine the bits set from the value returned by
STATus:OPERation:EVENt? or STATus:OPERation:CONDition?.
The Form C switch driver uses only bit 8 of OPERation Status Register.
This bit is called the Scan Complete bit and is set whenever a scan operation
completes. Since completion of a scan operation is an event in time, bit 8
will never appear set when STATus:OPERation:CONDition? is queried.
However, you can find bit 8 set by using STATus:OPERation:EVENt?.
Chapter 3
E1463A Command Reference 65
Automatically Set at
Power On Conditions
Automatically Set by
Related Commands
are *OPC? and *WAI
Parser
Set by *OPC
Scan Complete
Output Queue
Standard Event Status Register
Power On
User Request
Command Error
Execution Error
Device Dependent Error
Query Error
Request Control
Operation Complete
OPERation Sta tus Register
STATus:OPERation:CONDition?
STATus:OPERation:EVENt?
STATus:OPERation:ENABle
STATus:OPERation:ENABle?
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CEV EN
<1>
<2>
<4>
<8>
<16>
<32>
<64>
<128>
<256>
<512>
<1024>
<2048>
<4096>
<8192>
<16384>
<32768>
STATus:PRESet
*ESR?
0
1
2
3
4
<16>
5
<32>
6
<64>
7
<128>
EVEN
"OR"
+
*ESE <unmask>
*ESE?
<1>
<2>
<4>
<8>
Summary
Summary
Bit
"OR"
NOTE:
QUE = Questionable Data
MAV = Message Available
ESB = Standard Event
RQS = Request Service
OPR = Operation Status
C = Condition Register
EV = Event Register
EN = Enabl e Register
SRQ = Interface Bus
Service Request
Status Byte Register
*STB?
SPOLL
+
Bit
MAV
ESB
RQS
OPR
0
1
2
3
4
5
6
7
Status
Byte
Summary Bit
<1>
<2>
<4>
<8>
<16>
<32>
<128>
EN
*SRE <unmask>
*SRE?
"OR"
SRQ
+
System
Controller
Interface Bus
SRQ Line
SRQ
Other
Instrument
SRQ
Other
Instrument
unmask examples:
Register
Operation Complete<128>7
*ESE 61 unmasks standard event register bits 0,
2, 3, 4 and 5 (*ESE 128 only unmasks bit 7).
*SRE 128 unmasks the OPR bit (operation) in
the status byte register. This is effective
only if the STAT:OPER:ENAB 256 command
is executed.
STAT:QUES:E NA B 256 unmasks the "Scan Complete"
bit.
unmask
decimal
bit
weight
"OR"
+
ESB
66 E1463A Command Reference
Figure 3-1. E1463A Status System Register Diagram
Chapter 3
STATus:OPERation:CONDition?
STATus:OPERation:CONDition? returns the state of the Condition Register
in the OPERation Status Register. The state represents conditions that are
part of the instrument's operation. The switch driver does not set bit 8 in the
OPERation Status Register (see STATus:OPERation[:EV ENt]?).
STATus:OPERation:ENABle
STATus:OPERation:ENABle <unmask> sets an enable mask to allow events
recorded in the Event Register of the OPERation Status Register to send a
Summary bit to the Status Byte Register (bit 7). For switch modules, when
bit 8 in the OPERation Status Register is set to 1 and bit 8 is enabled by
STATus:OPERation:EN ABle, bit 7 in the Status Byte Register is set to 1.
Parameters
NameTypeRange of ValuesDefault Value
<unmask>numeric
CommentsSetting Bit 7 of the Status Byte Regis ter : STATus:OPERation:ENABle 256
sets bit 7 (OPR) of the Status Byte Register to 1 after bit 8 (Scan Complete)
of the OPERation Status Register is set to 1.
Related Commands: [ROUTe:]SCAN
ExampleEnabling Operation Status Register Bit 8
STAT:OPER:ENAB 256
STATus:OPERation:ENABle?
STATus:OPERation:ENABle? returns the bit value of the Enable Register
within the OPERation Status Register.
CommentsOutput Format: STATus:OPERation:ENABle? returns a decimal-weighted
value from 0 to 65,535 indicating the bits set to true.
0 through 65,535N/A
!Enable bit 8 of the OPERation
Status Register to be reported to
bit 7 (OPR ) in the Status Byte
Register
Chapter 3
Maximum Value Returned: The value returned is the value set by
STATus:OPERation:ENABle <unmask>. However, the maximum
decimal-weighted value used in this module is 256 (bit 8 in the Condition
Register within the OPERation Status Register is set to true).
E1463A Command Reference 67
ExampleQuerying the Enabl e Register in the OPERation Status Register
STAT:OPER:ENAB?
STATus:OPERation[:EVENt]?
STATus:OPERation[:EVENt]? returns which bits in the E vent Register within
the OPERation Status Register are set. The Event Register indicates that
a time-related instrument event has occurred.
CommentsSetting Bit 8 of the OPERation Status Regist er: Bit 8 (Scan Complete) is set
to 1 after a scanning cycle completes. Bit 8 returns t o 0 (zero) after s ending
STATus:OPERation[:EVENt]?.
Returned Data after sending STATus:OPERation[:EVENt]?: The command
returns "+256" if bit 8 of the OPERation Status Register is set to 1. The
command returns "+0" if bit 8 of the OPERation Status Register is set to 0.
Event Register Cleared: Reading the Event Register within the OPERation
Status Register with STATus:OPERation:EVENt? clears the Event Register.
Aborting a Scan: Aborting a scan will leave bit 8 set to 0.
!Query the Enable Register in the
OPERation Status Register
ExampleReading the OPERation Status Register After a Scanning Cycle
STATus:PRESet
Related Commands: [ROUTe:]SCAN
STAT:OPER?
read the register value
STATus:PRESet affects only the Enable Register within the OPERation
Status Register by setting all Enable Register bits to 0. It does not affect
either the Status Byte Register or the Standard Event Status Register.
STATus:PRESet does not clear any of the Event Registers.
!Return the bit values of the Event
Register within the OPERation
Status Register
+256 shows bit 8 is set to 1.
+0 shows bit 8 is set to 0.
68 E1463A Command Reference
Chapter 3
SYSTem
The SYSTem subsystem returns the error numbers and error messages in
the error queue of a switchbox. It can also return the types and descriptions
of modules (cards) in a switchbox.
Subsystem SyntaxSYSTem
SYSTem:CDEScription?
SYSTem:CDEScription? <number> returns the description of a selected
module (card) in a switchbox.
Parameters
:CDEScription? <numbe r>
:CPON <number> | ALL
:CTYPe? <number>
:ERRor?
NameTypeRange of ValuesDefault Value
CommentsForm C Switch Module Description: SYSTem:CDEScription? returns:
ExampleReading the Description of a Module
SYSTem:CPON
Parameters
<number>numeric
"32 Channel General Purpose Relay"
SYST:CDES? 1
SYSTem:CPON <number> | ALL sets the selected module (card) in a
switchbox to its power-on state.
NameTypeRange of ValuesDefault Value
<number>numeric
1 through 99N/A
!Return description of module
card #1
1 through 99N/A
Chapter 3
E1463A Command Reference 69
CommentsForm C Switch Power-on State: The power-on state is all channels (relays)
open. SYSTem:CPON ALL and *RST open all channels of all modules in a
switchbox, whi le SYST em:CPON <number> opens the channels in only the
module (card) specified in the command.
ExampleSetting Modul e to Power-on State
SYSTem:CTYPe?
Parameters
CommentsE1463A Form C Switch Model Number: SYSTem:CTYPe? <number> returns
ExampleReading the Model Number of a Module
SYST:CPON 1
SYSTem:CTYPe? <number> returns the module (card) type of a selected
module in a switchbox.
NameTypeRange of ValuesDefault Value
<number>numeric
HEWLETT-PACKARD,El463A,0,A.04.00
where the 0 after E1463A is the module serial number (always 0) and
A.04.00 is an example of the module revision code number.
!Set card #1 to power-on state
1 through 99N/A
SYSTem:ERRor?
CommentsError Numbers/Messages in the Error Queue: Each error generated by a
SYST:CTYP? 1
SYSTem:ERRor? returns the error numbers and corresponding error
messages in the error queue of a switchbox. See Appendix C for a listing
of switchbox error numbers and messages.
switchbox stores an error number and corresponding error message in the
error queue. The error message can be up to 255 characters long.
Clearing the Error Queue: An error number/message is removed from the
queue each time SYSTem:ERRor? is sent. The errors are cleared first-in,
first-out. When the queue is empty, each following SYSTem:ERRor?
command returns +0, "No error". To clear all error numbers/messages in
the queue, execute *CLS.
!Return the model number
70 E1463A Command Reference
Chapter 3
Maximum Error Numbers/Messages in the Error Queue: The queue holds a
maximum of 30 error numbers/messages for each switchbox. If the queue
overflows, the last error number/message in the queue is replaced by -350, "Too many errors". The least recent error numbers/messages remain in the
queue and the most recent errors are discarded.
ExampleReading the Error Queue
SYST:ERR?
!Query the error queue
Chapter 3
E1463A Command Reference 71
TRIGger
Subsystem SyntaxTRIGger
TRIGger[:IMMediate]
CommentsExecuting TRIGger[:I MMediate]: Before TRIGger[:IMMediate] will execute, a
The TRIGger command subsystem controls the triggering operation of
Form C switch modules in a switchbox.
[:IMMediate]
:SOURce <source>
:SOURce?
TRIGger[:IMMediate] causes a trigger event to occur when the defined trigger
source is TRIGger:SOURce BUS or TRIGger:SOURce HOLD.
channel list must be defined with [ROUTe:]SCAN <channel_ list > and an
INITiate[:IMMediate] must be executed
BUS or HOLD Source Remains: If selected, TRIGger:SOURce BUS or
TRIGger:SOURce HOLD remains in effect after triggering a switchbox with
TRIGger[:IMMediate].
Related Commands: INITiate, [RO U Te:]SCAN
ExampleAdvancing Scan Using TRIGger
This example uses TRIGger[:IMMediate] to advance the scan of a
single-module switchbox from channel 00 through 03. Since
TRIGger:SOURce HOLD is set, the scan is advanced one channel
each time TRIGger is executed.
TRIG:SOUR HOLD
SCAN(@100:103)
INIT
loop statement
TRIG
increment loop
!Set trigger source to HOLD
!Define channel list
!Begin scan, close channel 00
!Start count loop
!Advance scan to next channel
!Increment loop count
72 E1463A Command Reference
Chapter 3
TRIGger:SOURce
Parameters
TRIGger:SOURce <source> specifies the trigger source to advance the
<channel_list> during scanning.
Parameter
Name
BUSdiscrete*TRG or GET commandIMM
EXTernaldiscrete"Trig In" por tIMM
HOLDdiscreteHold TriggeringIMM
IMMediatediscreteImmediate TriggeringIMM
TTLTrgnnumericTTL Tri gger Bus Line 0 - 7IMM
Parameter
Type
Parameter
Description
Default
Value
CommentsEnabling the Trigger Source: TRIGger:SOURce only selects the trigger
source. INITiate[:IMMediate] enables the trigger source.
Using the TRIGger Command: You can use TRIGger[:IMMediate] to advance
the scan when TRIGger:SOURce BUS or TRIGger:SOURce HOLD is
selected.
Using External Trigger Inputs: With TRIGger:SOURce EXTernal selected,
only one switchbox at a time can use the external trigger input at the E1406A
"Trig In" port. The trigger input is assigned to the first switchbox requesting
the external trigger source (with a TRIGger:SOURce EXTernal command).
Assigning External Tri gger: A switchbox assigned with TRIGger:SOURce
EXTernal remains assigned to that source until the switchbox trigger source
is changed to BUS, HOLD, or IMMediate. When the source is changed, the
external trigger source is available to the next switchbox requesting it (with
a TRIGger:SOURce EXTernal command ). If a switchbox requests an
external trigger input already assigned to another switchbox, an error is
generated.
Chapter 3
Using Bus Triggers: To trigger the switchbox with bus triggers when
TRIGger:SOURce BUS selected, use the IEEE 488.2 common com ma nd
*TRG or the GPIB Group Execute Trigger (GET) command.
"Trig Out" Port Shared by Switchboxes: When enabled, the E1406A
Command Module "Trig Out" port is pulsed by any switchbox each time a
scanned channel is closed. To disable the output for a specific module
send OUTPut:EXTernal[:STATe] OFF or OUTPut:EXT ernal[:ST ATe] 0 for
that module.
One Output Select ed at a T ime: Only one output (TTLTrg or EXTernal) can be
enabled at one time. Enabling a different output source will automatically
disable the active output.
E1463A Command Reference 73
Related Commands: ABORt, [ROUTe:]SCAN, OUTPut
*RST Condition: TRIGger:SOURce IMMediate
ExampleScanning Using Ext ernal Triggers
This example uses external triggering (TRIGger:SOURce EXTernal) to scan
channels 00 through 03 of a single-module switchbox. The trigger source to
advance the scan is the input to the "Trig In" port on the E1406A Command
Module. When INIT is executed, the scan is started and channel 00 is
closed. Then, each trigger received at the "Trig In" port advances the scan
to the next channel.
This example uses bus triggering (TRIG:SOUR BUS) to scan channels 00
through 03 of a single-module switchbox. The trigger source to advance the
scan is the *TRG command (as set with TRIGger:SOURce BUS). When INIT
is executed, the scan is started and channel 00 is closed. Then, each *TRG
command advances the scan to the next channel.
TRIG:SOUR BUS
SCAN(@100:103)
INIT
loop statement
*TRG
increment loop
!Select external triggering
!Scan channels 00 through 03
!Begin scan, close channel 00
!Advance scan to next channel
!Select interface (bus) triggering
!Scan channels 00 through 03
!Begin scan, close channel 00
!Loop to scan all channels
!Advance scan using bus
triggering
!Increment loop count
ExampleQuerying the Trigger Source
74 E1463A Command Reference
TRIGger:SOURce? returns the current trigger source for the switchbox. The
command returns BUS, EXT , HOLD, IMM, or TTLTfor sources BUS,
EXTernal, HOLD, IMMediate, or TTLTrgn, respectively.
This example sets external triggering and queries the trigger source.
Since external triggering is set, TRIG:SOUR? returns "EXT".
The following table summarizes the SCPI Commands for the E1463A
Form C Switch module.
CommandDescription
ABORtABORtAborts a scan in pro gress
ARM:COUNt
:COUNt? [MIN|MAX]
DISPlay:MONitor:CARD
:MONitor[:STATe] <
INITiate:CONTinuous <
:CONTinuous?
[:IMMediate]
OU T Pu t[:E X Ter n al ] [: S TATe ] <
[:E X Ter na l] [:S TATe ] ?
[:STATe] <
[:STATe]?
:TTLTrg
:TTLTrg
[ROUTe:]CLOSe
CLOSe?
OPEN
OPEN?
SCAN
STATus:OPERation:CONDition?
:OPERation:ENABle <
:OPERation:ENABle?
:OPERation[:EVENt]?
:PRESet
<number>
<number>
mode
mode
mode
>
n
[:STATe] <
n
[:STATe]?
<channel _list>
<channel _list>
<channel_list>
<channel _list>
<channel_list>
MIN |MAX
mode
|AUTO
>
>
mode
>
unmask
Multiple scans per INIT command
Queries number of scans
Selects module to be monitored
Selects monitor mode
Enables/dis ables continuous scanning
Queries continuous scan state
Starts a scanning cycle
>
>
Enables/dis ables the Trig Out port on the E1406
Queries the exter nal state
Enables/dis ables the Trig Out port on the E1406
Queries port enabl e state
Enables/dis ables the specified TTL t rigger line
Queries the specified TTL trigger li ne
Closes channel(s)
Queries channel(s) closed
Opens channel(s)
Queries channel(s) opened
Defines channels for scanning
Returns stat us of the Condition Register
Enables the Operation Event Register to set a bit i n the
St atus Register
Query the contents in the Operation Status Register
Returns stat us of the Operation Status Register
Sets Enable R e gi st e r to 0
SYSTem:CDEScription?
:CTYPe?
:CPON
:ERRor?
TRIGger[:IMMediate]
:SOURce BUS
:SOURce EXTernal
:SOURce HOLD
:SOURce IMMediate
:SOURce?
<number>
<number>
Chapter 3
<number>
|ALL
Returns description of module in a switchbox
Returns the module t ype
Sets specified module to its power-on state
Returns error number/message to error queue
Causes a trigger to occur
Trigger source is *TRG
Trigger source is Tri g In (on the E1406)
Hold off triggering
Continuous (internal) triggering
Query scan trigger source
E1463A Command Reference 75
IEEE 488.2 Common Commands Reference
The following table lists the IEEE 488.2 Common (*) commands accepted
by the E1463A Form C Switch module. The operation of some of these
commands is described in Chapter 2 of this manual. For more information
on Common commands, refer to the user’s manual for your mainframe or to
the ANSI/IEEE Standard 488.2-1987.
CommandTitleCommand Description
*CLSClear Status Regist erClears all status registers (see STATus:OPERation[:EVENt]?) .
*ESEEvent Status EnableEnables Status Regis ter bits.
*ESE?Event S tatus Enable QueryQueries the curr ent contents in the Standard Event S tatus Register
*ESR?Event Stat us Register QueryQueries and clears the current contents in the Standa rd Event Status
Register
*IDN?Identification QueryReturns identification string of the Switchbox.
*OPCOperation CompleteSets the Request for OPC flag when all pending operations have
completed. Also, sets OPC bit in the S tandard Event Status Regi ster.
*OPC?Operation Complete QueryReturns a "1" to the output queue when all pending operations have
completed. Used to synchronize between multiple instruments.
*RCLRecall Instrument StateRecalls previously stored configuration.
*RSTResetOpens all channels and sets the module to a known st ate.
*SAVSave Instrument StateStores the current configuration in specified memory.
*SREService Request EnableSets the Service Request Enable Register bits and corr esponding
Serial Poll Status Register bits to generate a service request.
*SRE?Service Request Enable
Query
*STB?Read Status Byte QueryQueries the current content s in the St atus Byte Register.
*TRGTriggerTriggers the module to advance th e scan when scan is enabled and
*TST?Self-Test QueryReturns +0 if self-test passes.
*WAIWait to ContinuePrevents an instrument from executing another command until the
Queries the current contents in the Ser vice Request Enable Regist er.
trigger source is TRIGge r: SOURce BUS.
Returns +cc01 for firmware error.
Returns +cc02 for bus error.
Returns +cc10 if an interrupt was expected but not received.
Returns +cc11 if the busy bit was not held for 10 msec.
operation caused by the previous command is finished. Since all
instruments normally perf orm sequential operati ons, executing thi s
command causes no change.
76 E1463A Command Reference
Chapter 3
General
Appendix A
Form C Switch Specifications
Module Size / Device Type:
C-size VXIbus, Register based, A16/D16, Interrupter
(levels 1-7 , ju mp er selectable
Power Requirements:
Voltage:+5 V
Peak Module Current (A)0.10 0.60**
Dynamic Module Curren t (A)0.10 0.01
• Prog r a mmin g Ex a mples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8 5
Register Programming vs. SCPI Programming
The E1463A Form C Switch is a register-based module that does not
support the VXIbus word serial protocol. When a SCPI command is sent
to the Form C switch, the E1406 Command Module parses the command
and programs the switch at the register level.
Appendix B
NOTEIf SCPI is used to control this module, register programming is not
recommended. The SCPI driver maintains an image of the card state.
The driver will be unaware of changes to the card state if you alter the
card state by using register writes.
Register-based programming is a series of reads and writes directly to
the Form C switch registers. This increases throughput speed since it
eliminates command parsing and allows the use of an embedded controller.
Also, if slot 0, the resource manager, and the computer GPIB interface are
provided by other devices, a C-size system can be downsized by removing
the command module.
Addressing the Registers
Register addresses for register-based devices are located in the upper 25%
of VXI A16 address space. Every VXI device (up to 256 devices) is allocated
a 32-word (64-byte) block of addresses. With five registers, the E1463A
Form C Switch uses five of the 64 addresses allocated.
Appendix B
Register-Based Programming 79
The Base AddressWhen reading or writing to a switch register, a hexadecimal or decimal
register address is specified. This address consists of a base address plus
a register offset. The base address used in register-based programmin g
depends on whether the A16 address space is outside or inside the E1406
Command Module.
Figure B-1 shows the register address location within A16 as it might be
mapped by an embedded controller. Figure B-2 shows the location of A16
address space in the E1406 Command Module.
A16 Address Space
Outside the Command
Module
A16 Address Space
Inside the Command
Module or Mainframe
When the E1406 Com mand Mo dul e i s n o t pa r t of your VXIbu s system (see
Figure B-1), the switch’s base address is computed as:
C000
+ (LADDR * 64)
16
where C000
(49,152) is the starting location of the register addresses,
16
or 49,152 + (LADDR * 64)
16
LADDR is the switch’s logical address, and 64 is the number of address
bytes per VXI device. For example, the switch’s factory-set logical address
is 120 (78
). If this address is not changed, the switch will have a base
16
address of:
C000
+ (120 * 64)16 = C00016 + 1E0016 = DE00
16
16
or (decimal)
49,152 + (120 * 64) = 49,152 + 7680 = 56,832
When the A16 address space is inside the E1406 Command Module
(see Figure B-2), the switch’s base address is computed as:
1FC000
where 1FC000
+ (LADDR * 64)16 or 2,080,768 + (LADDR * 64)
16
(2,080,768) is the starting location of the VXI A16
16
addresses, LADDR is the switch’s logical address, and 64 is the number of
address bytes per register-based device. Again, the switch’s factory-set
logical address is 120. If this address is not changed, the switch module will
have a base address of:
Register Off setThe register offset is the register’s location in the block of 64 address bytes.
For example, the switch’s Status Register has an offset of 04
write a command to this register, the offset is added to the base address to
form the register address:
. When you
16
FFFFFF
FFFF
COOO
OOOO
16
16
16
ADDRESS
16
E1406
ADDRESS MAP
1FDE00
+ 0416 = 1FDE04
16
FFFF
16
or 2,088,448 + 4 = 2,088,452
16
REGISTER
ADDRESS
SPACE
A16
*
SPACE
C000
16
(49,152)
Base Address = COOO
*
16
+ (Logical Address 64)
49,152 + (Logical Address 64)
Register Addr es s = Bas e addr es s + Register Offset
Figure B-1. Registers Within A16 Address Space
REGISTER
OFFSET
08
06
04
02
00
16
or
10
16
16
16
16
16
Relay Control Register 2
Relay Control Register 1
Status/Control Register
Device Type Register
E1463A
A16 REGISTER MAP
*
*
DESCRIPTION
ID Register
EOOOOO
200000
IF0000
000000
200000
16
A24
ADDRESS
SPACE
IFCOOO
A16
ADDRESS
SPACE
16
16
200000
REGISTER
ADDRESS
SPACE
16
*
IFOOOO
16
16
16
16
Base Address = IFC000
Register Address = Base address + Register Offset
16
2,080,768 + (Logical Address 64)
IFCOOO
16
(2,080,768)
+ (Logical Address 64)
or
*
16
*
10
REGISTER
OFFSET
08
16
06
16
04
16
02
16
00
16
16-BIT WORDS
Relay Control Register 2
Relay Control Reg is te r 1
Status/Control Register
Device Type Register
ID Register
E1463A
A16 REGISTER MA P
Figure B-2. Registers Within the E1406 A16 Address Space
Appendix B
Register-Based Programming 81
Register Descriptions
The Form C switch module contains two read registers, one read/write
register, and two write registers. This section describes each Form C
module register.
Read in g and
Writing to the
Example programs are provided at the end of this appendix that show how
to read and write to these registers. You can read or write to the following
Form C switch module registers.
Registers
• Manufacturer Identification Register (base + 00
• Device Type Register (base + 02
• Status/Control Register (base + 04
• Relay Control Register for Channels 00 - 15 (base + 06
• Relay Control Register for Channels 16 - 31 (base + 08
Manufacturer
Identification
The Manufacturer Identification Register is at offset address 0016 and
returns FFFF
and the module is an A16 register-based module. This register is read only.
. This shows that Agilent Technologies is the manufacturer
16
Register
b+00
16
WriteUndefined
Read
1514131211109876543210
Manufacturer ID - Returns
FFFF
= Agilent Technologies A16 only register-based device.
16
) (read)
16
) (read or write)
16
) (read)
16
) (write)
16
) (write)
16
Devi ce Type
Register
b+02
16
WriteUndefined
Read0121
1514131211109876543210
Status/Control
Register
b+04
16
WriteNot UsedENot UsedR
Read
1514131211109876543210
MSNot UsedBEXX11XX
X
The Device Type Register is at offset address 0216 and returns 012116 for
an E1463A Form C Switch module. This register is read only.
16
The Status/Control Register is at offset address 0416 and informs the user
about the module’s status and configuration. This register is read and write.
82 Register-Based Programming
Appendi x B
Reading the
Status/Control Register
For Status/Control register reads, three bits are defined as follows.
• MODID Select (bit 14): 0 indicates the module has been selected
by MODID (module ID) and a 1 indicates the module has not been
selected.
• Busy (bit 7): 0 indicates the module is busy. Each relay requires
about 10 ms execution time during which the Form C switch is
busy. Bit 7 of this register is used to inform the user of a busy
condition.
• Enable (bit 6): 0 indicates the interrupt is enabled. The interrupt
generated after a channel has been closed can be disabled. Bit 6
of this register is used to inform the user of the interrupt status.
For example, if the Form C switch module is not busy (bit 7 = 1) and the
interrupt is enabled (bit 6 = 0), a read of the Status/Control Register
(base + 04
) returns FFBF.
16
Writing to the
Status/Control Register
NOTEWhen writing to the registers it is necessary to write "0" to bit 0 after the
You can only write to bits 0 and 6 of the Status/Control Register.
• Enable (bit 6): Writing a "1" to this bi t disables the interrupt function
of the module.
• Soft Reset (bit 0): Writing a "1" to this bit soft resets the module.
reset has been performed before any other commands can be programmed
and executed. SCPI commands take care of this automatically.
Typically, interrupts are only disabled to "peek-poke" a module. See the
appropriate command module operating manual before disabli ng the
interrupt. Writing a "1" to bit 0 resets the switch (all channels open).
Appendix B
Register-Based Programming 83
Relay Control
Register
There are two relay control registers: Relay Control Register 1 (base + 0616)
and Relay Control Register 2 (base + 08
). These registers are used to
16
connect the common (C) to the normally open (NO) terminal. Reading any
Relay Control Register will always return FFFF
regardless of the channel
16
states.
The numbers in the register maps indicate the channel number to be written
to. Writes to the Relay Control Registers enable you to open or close the
desired channel. For example, write a "1" to bit 2 of Relay Control Register
1 to close channel 02.
#define logical_address 120 /*logical address of the Form C module*/
int fd;
typedef unsigned short word;
typedef struct dev_regs{ /*set up pointers*/
unsigned short id_reg;
unsigned short device_type;
unsigned short status_reg;
unsigned short bank0_channels;
} DEV_REGS;
main( )
{
/*open the controller VXI interface*/
fd=open("/dev/vxi/primary",O_RDWR);
if (fd){
perror("open");
exit(1);
}
/*retrieve the A16 pointers*/
dev=(struct dev_regs *)vxi_get_a16_addr(fd,logical_address);
86 Register-Based Programming
/*sub to read the registers*/
read_reg(dev);
/*END of main program*/
}
/*SUB READ_REG*/
int read_reg(reg_ptr)
DEV_REGS *reg_ptr;
{
/*read the ID register*/
printf("\n ID Register = 0x%x\n",reg_ptr->id_reg);
/*read the Device Type register*/
printf("\n Device Type Register = 0x%x\n",reg_ptr->device_type);
/*read the Status register*/
printf("\n Status Register = 0x%x\n",reg_ptr->status_reg);
return;
}
Appendi x B
Example: Making
Measurements
(BASIC)
This BASIC programming example closes bit 1 on bank 0, waits for a
measurement to be made, and then opens the channel. You must insert
your own programming code for the measurement part of this program. For
example, if you are using the E1411B, see the E1326B/E1411B Multimeter User's Manual for programming examples.
Set up arrays to store register names and addresses
Read register names and address into the arrays
Set base address variable
Map the A16 address space in the controller
Call the subprogram Make_meas
.
.
.
This subprogram closes bit 1 of bank0 channels, waits for the
channel to be closed, makes a measurement, and then opens
the relay
.
.
.!
.
Make Measurements
Appendix B
Register-Based Programming 87
Example: Making
Measurements
(C/HP-UX)
This C/HP-UX programming example closes bit 1 on bank 0, waits for a
measurement to be made, and then opens the channel. You must insert
your own programming code for the measurement part of this program. For
example, if you are using the E1411B, see the E1326B/E1411B Multimeter User's Manual for programming examples.
The sub ver_time allows time for switch closures. This sub should print a
time around 10 ms. If the time is less, you must change the value of j in
the for loop. For example, instead of 10000, you might need to use 12000.
printf("Elapsed time for closing a channel is: %ld sec %ld usec \n",
lapsed.tv_sec, lapsed.tv_usec);
}
/*SUB MAKE_MEAS*/
int make_meas(reg_ptr)
DEV_REGS *reg_ptr;
{
/*close bit 1 of bank0 */
reg_ptr->bank0_channels=0x0001;
for (j=0; j<=10000; j ++); /*wait for switch to close*/
printf("\n Making Measurement");
.
./*make measurements*/
.
/*open bit 1 of bank0*/
reg_ptr->bank0_channels=0x0000;
return;
}
Appendix B
Register-Based Programming 89
Example: Scanning
Channels (BASIC)
This BASIC programming example scans through the bank 0 channels
(closing one switch at a time) and makes measurements between switch
closures. You must insert your own programming code for the measurement
part of this program. For example, if you are using the E1411B, see the
E1326B/E1411B Multimeter User's Manual for programming examples.
420NEXT I
430WRITEIO -16,Base_addr + Reg_addr(1);0
440SUBEND
Set up arrays to store register names and addresses
Read register names and addresses into the arrays
Set base address variable
Map the A16 address space in the controller
Call the subprogram Scan_meas
.
.
.
This subprogram sets all bits in bank0 open then scans through
bank 0, closing one channel at a time (waits for the channel to
be closed) so a measurement can be made.
.
. !
.
Make Measurements
90 Register-Based Programming
Appendi x B
Example: Scanning
Channels (C/HP-UX)
NOTEThe sub ver_time allows time for the switches to close. The program should
This C/HP-UX programming example scans through the bank 0 channels
(closing one switch at a time) and makes measurements between switch
closures. You must insert your own programming code for the measurement
part of this program. For example, if you are using the E1411B, see the
E1326B/E1411B Multimeter User's Manual for programming examples.
print a time around 10 ms. If the time is less, you must change the value of
j in the for loop. For example, instead of 10000, you might need to use
12000.
The math.h include file requires a -lm option when compiling this program.
/******************************************************/
/***scanning.c ***/
/******************************************************/
#include <time.h>
#include <math.h> /*file to perform math functions*/
#include <sys/vxi.h> /*source file for controller VXI drivers*/
#include <fcntl.h>
#include <stdio.h>
#define logical_address 120 /*logical address of Form C Switch*/
#define lastch15
int fd, i, reg;
double y;
typedef unsigned short word;
typedef struct dev_regs{ /*set up pointers*/
unsigned short id_reg;
unsigned short device_type;
unsigned short status_reg;
unsigned short bank0_channels;
} DEV_REGS;
main( )
{
/*open the controller VXI interface*/
fd=open("/dev/vxi/primary",O_RDWR);
if (fd){
perror("open");
exit(1);
}
/*retrieve the A16 pointers*/
dev=(struct dev_regs *)vxi_get_a16_addr(fd,logical_address);
Appendix B
Continued on next page
Register-Based Programming 91
/*sub to verify the time to close the switch*/
ver_time( );
/*sub to close a set of switches and make measurements*/
scan_meas(dev);
}/*END of main program*/
printf("Elapsed time for closing a channel is: %ld sec %ld usec \n",
lapsed.tv_sec, lapsed.tv_usec);
}
/*SUB SCAN_MEAS*/
int scan_meas(reg_ptr)
DEV_REGS *reg_ptr;
{
/*set bank0 to 000 */
reg_ptr->bank0_channels=0x000;
i=0;
for (i=0;i=lastch;i ++)
{
y=i;
reg=pow(2.0,y);
reg_ptr-bank0_channels=reg;
for (j=0; j<=10000; j ++); /*wait for switch to be closed*/
printf("\n Making Measurement");
.
./*make measurements*/
.
}
return;
}
92 Register-Based Programming
Appendi x B
Error Types
Appendix C
E1463A Error Messages
Table C-2 lists the error messages generated by the E1463A Form C Switch
module firmware when programmed by SCPI. Errors with negative values
are governed by the SCPI standard and are categorized in Table C-1. Error
numbers with positive values are not governed by the SCPI standard. See
the E1406A Command Mod ule User’s Manual for further details on these
errors.
Table C-1. Error Types
RangeError Types Description
-199 to -100Command Errors (syntax and parameter errors).
-299 to -200Execution Errors (instrument driver detected errors)
-399 to -300Device Specific Errors (instrument driver errors that
are not command nor execution errors).
-499 to -400Query Errors (problem in querying an instrument)
Appendix C
E1463A Error Messages 93
Error Messages
Table C-2. Error Messages
Code
-109Missing ParameterSending a command requiring a channel list without the channel list.
-211Trigger IgnoredTrigger received when scan not enabled. Trigger r eceived after scan
-213INIT IgnoredAttempting to execute an INIT command when a scan is already in
-224Illegal Parameter ValueAttempting to execute a command with a paramete r not applicable to
-310System Error, Internal Driver
Error.
+1500External Trig ger Source
Already Allocated
+2000Invalid Card NumberAddressing a module (card) in a switchbox that is not part of the
+2001Invalid Channel NumberAttempting to address a channel of a module in a swi tchbox t hat is not
+2006Command Not Supported On
This C ard
+2008Scan List Not InitializedExecuting a scan wit hout the INIT command.
Error Message
Potential Cause(s)
complete. Trigger too fast.
progress.
the command.
This error can result if an excessivel y long parameter lis t is entered.
Assigning an exte rnal trigger source to a switchbox when the trigger
source has already been assigned to another switchbox.
switchbox.
supported by the module (e.g., channel 99 of a multiplexer module).
Sending a command to a module (card) in a switchbox that is
unsupported by the module.
+2009T oo Many Channels In Channel
List
+2011Empty Channel ListNo valid channels are specified in t he <channel_list>.
+2012Invalid Channel RangeInvalid channel(s) specified in SCAN <channel_list> command.
+2600Function Not Supported On
This C ard
Attempting to address more channels than available in the switchbox.
Attempting to begin scanning when no valid <channel_list> is defined.
Sending a command to a module (card) in a switchbox that is not
supported by the modul e or switchbox.
94 E1463A Error Messages
Appendi x C
Index
E1463A 32-Channel Form C Switch User’s Manual
A
abbreviated commands, 48
ABORt subsystem
adding relay protection
addressing registers
addressing the switch
ARM subsystem
ARM:COUNt
ARM:COUNt?
attaching terminal modules
, 50
, 25
, 79
, 27
, 51
, 51
, 52
, 22
B
base address, 80
base address, registers
, 80
C
cautions, 14
command separator
command types
common commands
Advancing Scan Using TRIGger
Closing a Channel (BASIC)
Closing a Channel (TURBO C)
Closing Form C Switch Channels
Controlling RF Switches (BASIC)
Detecting Error Conditions (BASIC)
Detecting Error Conditions (Turbo C)
Digital Output Configuration (BASIC)
Enabling "Trig Out" Port
Enabling a Single Scan
Enabling Continuous Scanning
Enabling Monitor Mode
Enabling Operation Status Register Bit 8
Enabling TTL Trigger Bus Line 7
Making Measurements (BASIC)
Making Measurements (C/HP-UX)
Matrix Switching (BASIC)
Module Identification (BASIC)
Module Identification (TURBO C)
Opening Form C Switch Channels
Opening/Closing Channels (BASIC)
Querying "Trig Out" Port Enable State
Querying Channel Closure
Querying Channel Closures (BASIC)
Querying Channel Open State
Querying Continuous Scanning State
Queryi ng Num ber of S cans
, 93–94
, 93
, 29
, 57–58
, 56
, 54
, 37
, 32
, 62
, 63
, 52
, 72
, 29
, 62
, 35
, 45
, 45
, 37
, 56
, 67
, 60
, 87
, 88
, 33
, 63
, 34
, 58–59
, 42
, 56
Index 95
E (continued)
examples (cont’d)
Querying the OPERation Status Register
Querying the Trigger Source
, 74
Querying TTL Trigger Bus Enable State
Reading the Description of a Module
Reading the Error Queue
, 71
Reading the Model Number of a Module
Reading the OPERation Status Register
Reading the Registers (BASIC)
, 85
Reading the Registers (C/HP-UX)
Saving and Recalling State (BASIC)
Scanning Channels (BASIC)
Scanning Channels (C/HP-UX)
Scanning Using Bus Triggers
Scanning Using External Device
, 90
, 91
, 74
, 64
Scanning Using External Triggers
Scanning Using Trig In/Out Ports (BASIC)
Scanning Using TTL Trigger Bus (BASIC)
Select Module for Monitoring
Setting Ten Scanning Cycles
Stopping a Scan with ABORt
, 53
, 51
, 50
Synchronizing the Form C Switch (BASIC)
Using the Scan Complete Bit (BASIC)
Voltage Switching (BASIC)
extendin g r ela y lif e
, 24
, 34
I
IEEE 488.2 command s reference, 76
implied commands
INITiate subsystem
INITiate:CONTinuous
INITiate:CONTinuous?
INITiate[:IMMediate]
installin g swit c h in ma i n fra m e
ins trument , VXI bus
interrupt p r i ority, setting
parameters, 49
power-on conditions
programming the switch
, 32
, 27
programming, register-based
protecting relays
, 23
Q
querying the switch, 42
R
recalling states, 44
registers
addressing
base address
device type
Manufacturer ID register
offset
Operation Status register
Relay Control register
register vs. SCPI programming
Status⁄ Control register
types
register-based programming
relay configurations
Relay Control register
relays
adding relay protection
extending relay life
life factors
protecting
replacement strategy
reset conditions
restricted rights statement