Timer/Counter/Analyzer Frequency Calibrator

Timer/Counter/Analyzer Frequency Calibrator
Timer/Counter/Analyzer
CNT-90, CNT-91
Frequency Calibrator/Analyzer
CNT-91R
Microwave Counter/Analyzer
CNT-90XL
Programmer’s Handbook
4031 600 90201
August 2010 - Ninth Edition
© 2010 Spectracom Corporation. All rights reserved.
Printed in Sweden.
II
GENERAL INFORMATION
About this Manual
This manual contains directions for use that apply to the Timer/Counter/Analyzers CNT-90 and
CNT-91, the Frequency Calibrator/Analyzer CNT-91R, and the Microwave Counter/Analyzer
CNT-90XL. In order to simplify the references, the instruments are further referred to throughout
this manual as the '9X', whenever the information applies to all types. Differences are clearly
marked.
In Chapter 8, Command Reference, the commands that do not apply to all instruments are
marked with the relevant type number.
Warranty
The Warranty Statement is part of the folder Important Information that is included with the
shipment.
Declaration of Conformity
The complete text with formal statements concerning product identification, manufacturer and
standards used for type testing is available on request.
III
This page is intentionally left blank.
IV
Table of Contents
GENERAL INFORMATION . . . . . . . . . . . . . III
Order of Execution. . . . . . . . . . . . . . . . . . . 5-4
MEASurement Function . . . . . . . . . . . . . . 5-5
1 Getting Started
6 Using the Subsystems
Finding Your Way Through This Manual . . 1-2
Manual Conventions . . . . . . . . . . . . . . . . . 1-3
Setting Up the Instrument . . . . . . . . . . . . . 1-4
Interface Functions . . . . . . . . . . . . . . . . . . 1-5
Using the USB Interface . . . . . . . . . . . . . . 1-6
Introduction . . . . . . . . . . . . . . . . . . . . . . . . 6-2
Calculate Subsystem. . . . . . . . . . . . . . . . . 6-3
Configure Function . . . . . . . . . . . . . . . . . . 6-4
Format Subsystem . . . . . . . . . . . . . . . . . . 6-5
Time Stamp Readout Format . . . . . . . . . . 6-5
Input Subsystems . . . . . . . . . . . . . . . . . . . 6-6
Measurement Function . . . . . . . . . . . . . . . 6-7
Sense Command Subsystems . . . . . . . . . 6-9
Status Subsystem . . . . . . . . . . . . . . . . . . 6-10
Trigger/Arming Subsystem . . . . . . . . . . . 6-23
2 Default Settings
Default settings (after *RST). . . . . . . . . . . 2-2
3 Introduction to SCPI
What is SCPI? . . . . . . . . . . . . . . . . . . . . . . 3-2
How does SCPI Work in the Instrument? . 3-4
Program and Response Messages . . . . . . 3-7
Command Tree . . . . . . . . . . . . . . . . . . . . 3-10
Parameters . . . . . . . . . . . . . . . . . . . . . . . 3-11
Macros. . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13
Status Reporting System. . . . . . . . . . . . . 3-16
Error Reporting . . . . . . . . . . . . . . . . . . . . 3-17
Initialization and Resetting . . . . . . . . . . . 3-19
7 Error Messages
8 Command Reference
Abort. . . . . . . . . . . . . . . . . . . . . . . . . 8-3
:ABORt . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-4
Arming Subsystem . . . . . . . . . . . . . 8-5
:ARM :COUNt . . . . . . . . . . . . . . . . . . . . . . 8-6
:ARM :DELay. . . . . . . . . . . . . . . . . . . . . . . 8-7
:ARM :LAYer2 . . . . . . . . . . . . . . . . . . . . . . 8-7
:ARM :LAYer2 :SOURce . . . . . . . . . . . . . . 8-8
:ARM :SLOPe . . . . . . . . . . . . . . . . . . . . . . 8-8
:ARM :SOURce . . . . . . . . . . . . . . . . . . . . . 8-9
:ARM :STOP :SLOPe . . . . . . . . . . . . . . . . 8-9
:ARM :STOP :SOURce . . . . . . . . . . . . . . 8-10
:ARM :STOP :TIMer . . . . . . . . . . . . . . . . 8-10
4 Programming Examples
Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4-2
Individual Mesurements (Ex. #1) . . . . . . . . 4-3
Block Measurements (Ex. #2) . . . . . . . . . . 4-5
Fast Measurements (Ex. #3) . . . . . . . . . . . 4-8
USB Communication (Ex. #4) . . . . . . . . . 4-11
Continuous Measurements (Ex. #5) . . . . 4-13
5 Instrument Model
Calculate Subsystem . . . . . . . . . . 8-11
Introduction . . . . . . . . . . . . . . . . . . . . . . . . 5-2
Measurement Function Block . . . . . . . . . . 5-3
Other Subsystems . . . . . . . . . . . . . . . . . . . 5-4
:CALCulate :AVERage :COUNt. . . . . . . . 8-12
:CALCulate :AVERage :ALL? . . . . . . . . . 8-12
:CALCulate :AVERage :STATe . . . . . . . . 8-13
V
:CALCulate :AVERage :COUNt :
CURRent? . . . . . . . . . . . . . . . . . . . . . . 8-13
:CALCulate :AVERage :TYPE . . . . . . . . . 8-14
:CALCulate :DATA?. . . . . . . . . . . . . . . . . 8-14
:CALCulate :IMMediate . . . . . . . . . . . . . . 8-15
:CALCulate :LIMit . . . . . . . . . . . . . . . . . . 8-15
:CALCulate :LIMit :CLEar . . . . . . . . . . . . 8-16
:CALCulate :LIMit :CLEar :AUTO . . . . . . 8-16
:CALCulate :LIMit :FAIL?. . . . . . . . . . . . . 8-17
:CALCulate :LIMit :FCOunt :LOWer? . . . 8-17
:CALCulate :LIMit :FCOunt? . . . . . . . . . . 8-18
:CALCulate :LIMit :FCOunt :UPPer? . . . . 8-18
:CALCulate :LIMit :PCOunt? . . . . . . . . . . 8-19
:CALCulate :LIMit :LOWer . . . . . . . . . . . . 8-19
:CALCulate :LIMit :LOWer :STATe . . . . . 8-20
:CALCulate :LIMit :UPPer . . . . . . . . . . . . 8-20
:CALCulate :LIMit :UPPer :STATe. . . . . . 8-21
:CALCulate :MATH . . . . . . . . . . . . . . . . . 8-21
:CALCulate :MATH :STATe. . . . . . . . . . . 8-22
:CALCulate :STATe . . . . . . . . . . . . . . . . . 8-22
:CALCulate :TOTalize :TYPE . . . . . . . . . 8-23
Input Subsystems . . . . . . . . . . . . . 8-45
:INPut«[1]|2» :ATTenuation . . . . . . . . . . . 8-46
:INPut«[1]|2» :COUPling . . . . . . . . . . . . . 8-46
:INPut«[1]|2» :FILTer . . . . . . . . . . . . . . . . 8-47
:INPut«[1]|2» :FILTer :DIGital . . . . . . . . . 8-47
:INPut«[1]|2» :FILTer :DIGital :
FREQuency . . . . . . . . . . . . . . . . . . . . . 8-48
:INPut«[1]|2» :IMPedance . . . . . . . . . . . . 8-48
:INPut«[1]|2» :LEVel . . . . . . . . . . . . . . . . 8-49
:INPut«[1]|2» :LEVel :AUTO . . . . . . . . . . 8-49
:INPut«[1]|2» :LEVel :RELative . . . . . . . . 8-50
:INPut«[1]|2» :SLOPe . . . . . . . . . . . . . . . 8-51
Measurement Function . . . . . . . . . 8-53
:MEASure :<Measuring Function>? . . . . 8-56
:MEASure :ARRay :
<Measuring Function>? . . . . . . . . . . . . 8-57
:MEASure :MEMory<N>? . . . . . . . . . . . . 8-58
:MEASure :MEMory?. . . . . . . . . . . . . . . . 8-58
EXPLANATIONS OF THE
MEASURING FUNCTIONS. . . . . . . 8-59
:MEASure :FREQuency?. . . . . . . . . . . . . 8-60
:MEASure :FREQuency :BURSt? . . . . . . 8-61
:MEASure :FREQuency :POWer [:AC]? . 8-61
:MEASure :FREQuency :PRF? . . . . . . . . 8-62
:MEASure :FREQuency :RATio?. . . . . . . 8-63
:MEASure [:VOLT] :NCYCles? . . . . . . . . 8-63
:MEASure «:PDUTycycle | :DCYCle»? . . 8-64
:MEASure :NDUTycycle? . . . . . . . . . . . . 8-64
:MEASure [:VOLT] :MAXimum? . . . . . . . 8-65
:MEASure [:VOLT] :MINimum? . . . . . . . . 8-65
:MEASure [:VOLT] :PTPeak? . . . . . . . . . 8-66
:MEASure [:VOLT] :RATio?. . . . . . . . . . . 8-66
:MEASure [:VOLT] :PSLEwrate?. . . . . . . 8-67
:MEASure [:VOLT] :NSLEwrate?. . . . . . . 8-67
:MEASure :PERiod? . . . . . . . . . . . . . . . . 8-68
:MEASure :PERiod :AVERage? . . . . . . . 8-68
:MEASure :PHASe? . . . . . . . . . . . . . . . . 8-69
:MEASure «:RISE :TIME | :RTIM»? . . . . 8-69
:MEASure «:FALL :TIME | :FTIM»?. . . . . 8-70
:MEASure :TINTerval? . . . . . . . . . . . . . . 8-70
:MEASure :PWIDth? . . . . . . . . . . . . . . . . 8-71
:MEASure :NWIDth? . . . . . . . . . . . . . . . . 8-71
:MEASure :ARRay :STSTamp?. . . . . . . . 8-72
:MEASure :ARRay :TSTAmp?. . . . . . . . . 8-73
Calibration Subsystem . . . . . . . . . 8-25
:CALibration :INTerpolator :AUTO. . . . . . 8-26
Configure Function . . . . . . . . . . . . 8-27
:CONFigure :<Measuring Function> . . . . 8-28
:CONFigure :ARRay :<Measuring
Function> . . . . . . . . . . . . . . . . . . . . . . . 8-29
:CONFigure :TOTalize [:CONTinuous] . . 8-30
Display Subsystem . . . . . . . . . . . . 8-31
:DISPlay :ENABle . . . . . . . . . . . . . . . . . . 8-32
Fetch Function . . . . . . . . . . . . . . . 8-33
:FETCh? . . . . . . . . . . . . . . . . . . . . . . . . . 8-34
:FETCh :ARRay?. . . . . . . . . . . . . . . . . . . 8-35
Format Subsystem . . . . . . . . . . . . 8-37
:FORMat . . . . . . . . . . . . . . . . . . . . . . . . . 8-38
:FORMat :BORDer . . . . . . . . . . . . . . . . . 8-38
:FORMat :SMAX . . . . . . . . . . . . . . . . . . . 8-39
:FORMat :TINFormation . . . . . . . . . . . . . 8-40
Hard Copy . . . . . . . . . . . . . . . . . . . 8-41
:HCOPy :SDUMp :DATA? . . . . . . . . . . . . 8-42
Initiate Subsystem. . . . . . . . . . . . . 8-43
:INITiate . . . . . . . . . . . . . . . . . . . . . . . . . . 8-44
:INITiate :CONTinuous . . . . . . . . . . . . . . 8-44
VI
:MEASure: ARRay: FREQuency:
BTBack? . . . . . . . . . . . . . . . . . . . . . . . 8-74
:MEASure: ARRay: PERiod: BTBack? . . 8-74
:MEASure: ARRay: TIError? . . . . . . . . . . 8-75
Memory Subsystem . . . . . . . . . . . 8-77
:MEMory :DATA :RECord :COUNt? . . . . 8-78
:MEMory :DATA :RECord :DELete . . . . . 8-78
:MEMory :DATA :RECord :FETCh? . . . . 8-79
:MEMory :DATA :RECord :FETCh :
ARRay? . . . . . . . . . . . . . . . . . . . . . . . . 8-79
:MEMory :DATA :RECord :FETCh :
STARt. . . . . . . . . . . . . . . . . . . . . . . . . . 8-80
:MEMory :DATA :RECord :NAME? . . . . . 8-80
:MEMory :DATA :RECord :SAVE . . . . . . 8-81
:MEMory :DATA :RECord :SETTings? . . 8-81
:MEMory :FREE :MACRo? . . . . . . . . . . . 8-82
:MEMory :DELete :MACRo . . . . . . . . . . . 8-82
:MEMory :NSTates? . . . . . . . . . . . . . . . . 8-83
Output Subsystem . . . . . . . . . . . . 8-85
:OUTPut :POLarity. . . . . . . . . . . . . . . . . . 8-86
:OUTPut :TYPE . . . . . . . . . . . . . . . . . . . . 8-86
Read Function . . . . . . . . . . . . . . . . 8-87
:READ? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-88
:READ :ARRay? . . . . . . . . . . . . . . . . . . . 8-89
Sense Command Subsystem . . . . 8-91
:ACQuisition :APERture . . . . . . . . . . . . . 8-92
:ACQuisition :HOFF. . . . . . . . . . . . . . . . . 8-92
:ACQuisition :HOFF :TIME . . . . . . . . . . . 8-93
:AUTO . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-93
:FREQuency :BURSt :PREScaler
[:STATe] . . . . . . . . . . . . . . . . . . . . . . . 8-94
:FREQuency :BURSt :APERture . . . . . . . 8-94
:FREQuency :BURSt :SYNC :PERiod. . . 8-95
:FREQuency :BURSt :STARt :DELay . . . 8-95
:FREQuency :POWer :UNIT . . . . . . . . . . 8-96
:FREQuency :RANGe :LOWer . . . . . . . . 8-96
:FUNCtion . . . . . . . . . . . . . . . . . . . . . . . . 8-97
:FREQuency :REGRession . . . . . . . . . . . 8-97
:HF :ACQuisition [:STATe]. . . . . . . . . . . . 8-99
:HF :FREQuency :CENTer . . . . . . . . . . . 8-99
:ROSCillator :SOURce . . . . . . . . . . . . . 8-100
:TIError :FREQuency :AUTO. . . . . . . . . 8-100
:TINTerval :AUTO . . . . . . . . . . . . . . . . . 8-101
:TIError :FREQuency. . . . . . . . . . . . . . . 8-101
:TOTalize :GATE . . . . . . . . . . . . . . . . . . 8-102
Source Subsystem . . . . . . . . . . . 8-103
:SOURce :PULSe :PERiod . . . . . . . . . . 8-104
:SOURce :PULSe :WIDTh. . . . . . . . . . . 8-104
Status Subsystem . . . . . . . . . . . . 8-105
:STATus :DREGister0? . . . . . . . . . . . . . 8-106
:STATus :DREGister0 :ENABle. . . . . . . 8-106
:STATus :OPERation :CONDition? . . . . 8-107
:STATus :OPERation :ENABle . . . . . . . 8-108
:STATus: OPERation?. . . . . . . . . . . . . . 8-109
:STATus :PRESet . . . . . . . . . . . . . . . . . 8-109
:STATus :QUEStionable :CONDition?. . 8-110
:STATus :QUEStionable :ENABle . . . . . 8-111
:STATus :QUEStionable? . . . . . . . . . . . 8-111
System Subsystem . . . . . . . . . . . 8-113
:SYSTem :COMMunicate :GPIB :
ADDRess . . . . . . . . . . . . . . . . . . . . . . 8-114
:SYSTem :ERRor?. . . . . . . . . . . . . . . . . . 8-114
:SYSTem :LANGuage . . . . . . . . . . . . . . 8-115
:SYSTem: INSTRument: TBASe: LOCK? . 8-115
:SYSTem :SET . . . . . . . . . . . . . . . . . . . . 8-116
:SYSTem :PRESet . . . . . . . . . . . . . . . . 8-116
:SYSTem :TEMPerature? . . . . . . . . . . . 8-117
:SYSTem :TALKonly . . . . . . . . . . . . . . . 8-117
:SYSTem :TOUT :AUTO . . . . . . . . . . . . 8-118
:SYSTem :TOUT . . . . . . . . . . . . . . . . . . 8-118
:SYSTem :UNPRotect . . . . . . . . . . . . . . 8-119
:SYSTem :TOUT :TIME. . . . . . . . . . . . . 8-119
Test Subsystem. . . . . . . . . . . . . . 8-121
:TEST :SELect. . . . . . . . . . . . . . . . . . . . 8-122
Trigger Subsystem . . . . . . . . . . . 8-123
:TRIGger :COUNt . . . . . . . . . . . . . . . . . 8-124
:TRIGger :SOURce . . . . . . . . . . . . . . . . 8-124
:TRIGger: TIMer . . . . . . . . . . . . . . . . . . 8-125
Common Commands . . . . . . . . . 8-127
*CLS . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-128
*DDT . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-128
*DMC. . . . . . . . . . . . . . . . . . . . . . . . . . . 8-129
*EMC . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-130
*ESE . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-131
*ESR? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-132
*GMC?. . . . . . . . . . . . . . . . . . . . . . . . . . 8-132
*IDN? . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-133
VII
*LMC? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-133
*LRN? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-134
*OPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-134
*OPC? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-135
*OPT? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-135
*PMC . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-136
*PSC . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-136
*PUD . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-137
*RCL . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-137
*RMC. . . . . . . . . . . . . . . . . . . . . . . . . . . 8-138
*RST . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-138
*SAV . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-139
*SRE . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-140
*STB? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-141
*TRG . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-141
*TST? . . . . . . . . . . . . . . . . . . . . . . . . . . 8-142
*WAI . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-142
9 Index
VIII
Chapter 1
Getting Started
Getting Started
Finding Your Way Through This Manual
You should use this Programmer's The “Programmer’s Reference” SecHandbook together with the User's tion of this manual contains:
Manual. That manual contains specifications for the counter and explana- – Chapter 5, Instrument Model, explains how the instrument looks
tions of the possibilities and
from the bus. This instrument is
limitations of the different measuring
not quite the same as the one used
functions.
from the front panel.
Sections
The chapters in this manual are divided into three sections aimed at different levels of reader knowledge.
The ‘General’ Section, which can be
disregarded by the users who know
the IEEE-488 and SCPI standards:
– Chapter 2, Default Settings, summarizes the instrument settings after sending the *RST command.
– Chapter 3, Introduction to SCPI,
explains syntax data formats, status reporting, etc.
– Chapter 6, Using the Subsystems,
explains more about each subsystem.
– Chapter 7, Error Messages, contains a list of all error messages
that can be generated during bus
control.
– Chapter 8, Command Reference,
gives complete information on all
commands. The subsystems and
commands are sorted alphabetically.
Index
The Practical Section of this manual You can also use the index to get an
contains:
overview of the commands. The index is also useful when looking for
– Chapter 4, Programming Examadditional information on the comples, with typical programs for a
mand you are currently working with.
number of applications. These
programs are written in C and are
also available as text files on the
included Manual CD.
1-2
Getting Started
Manual
Conventions
Syntax Specification Form
This manual uses the EBNF (Extended
Backus-Naur Form) notation for describing syntax. This notation uses the following types of symbols:
n Printable Characters:
Printable characters such as Command
headers, etc., are printed just as they are,
e.g. period means that you should type
the word PERIOD.
The following printable characters have a
special meaning and will only be used in
that meaning: # ‘ “ () : ; *
Read Chapter 3’ Introduction to SCPI’
for more information.
n Non-printable Characters:
Two non-printable characters are used:
8
indicates the space character
(ASCII code 32).
¿ _ indicates the new line character
(ASCII code 10).
n Alternative Expressions Giving
Different Result:
Alternative expressions giving different
results are separated by |. For example,
On|Off means that the function may be
switched on or off.
n Grouping: « »
Example:
FORMat8«ASCII|REAL»
specifies the command header FORMat
followed by a space character and either
ASCII or REAL.
n Optionality: [ ]
An expression placed within [ ] is optional.
Example: [:VOLT]:FREQuency
means that the command FREQuency
may or may not be preceded by :VOLT.
n Repetition: { }
An expression placed within { } can be
repeated zero or more times.
n Equality: =
Equality is specified with =
Example: <Separator>= ,
n Specified Expressions: < >
Mnemonic Conventions
Symbols and expressions that are further
specified elsewhere in this manual are
placed between the <> signs.
For example <Dec. data.>. The following
explanation is found on the same page:
“Where <Dec. data> is a four-digit number between 0.1 and 8*10-9.
n Truncation Rules
All commands can be truncated to
shortforms. The truncation rules are as
follows:
– The shortform is the first four characters of
the command.
– If the fourth character in the command is a
vowel, then the shortform is the first three
characters of the command. This rule is not
Manual Conventions 1-3
Getting Started
used if the command is only four characters.
– If the last character in the command is a
digit, then this digit is appended to the
shortform.
Examples:
Longform
Shortform
:MEASURE
:MEAS
:NEGATIVE
:NEG
:DREGISTER0
:DREG0
:EXTERNAL4
:EXT4
The shortform is always printed in CAPITALS in this manual: :MEASure, :NEGative, :DREGister0, :EXTernal4 etc.
n Example Language
Small examples are given at various
places in the text. These examples are not
in BASIC or C, nor are they written for
any specific controller. They only contain
the characters you should send to the
counter and the responses that you should
read with the controller.
Example:
SEND® MEAS:FREQ?
This means that you should program the
controller so that it addresses the counter
and outputs this string on the GPIB.
READ¬ 1.234567890E6
This means that you should program the
controller so that it can receive this data
from the GPIB, then address the counter
and read the data.
1-4 Setting Up the Instrument
Setting Up the
Instrument
Setting the GPIB Address
The address of the counter is set to 10
when it is delivered. Press USER OPT ®
Interface to see the active address above
the soft key labeled GPIB address.
If you want to use another bus address,
you can press GPIB address to enter a
value menu where you can set the address
between 0 and 30 by means of the numeric keys.
The address can also be set via a GPIB
command. The set address is stored in
nonvolatile memory and remains until
you change it.
Power-On
When turned on, the counter starts with
the setting it had when turned off.
n Standby
When the counter is in REMOTE mode,
you cannot switch it off. You must first
enable Local control by pressing the Cancel ("C") key.
Testing the Bus
To test that the instrument is operational
via the bus, use *IDN? to identify the instrument and *OPT? to identify which
options are installed. (See ‘System Subsystem’ , *IDN? and *OPT?)
Getting Started
Interface Functions
What can I do with the Bus?
– Basic talker.
– No talker only.
– It can send out a status byte as response to
a serial poll from the controller.
All the capabilities of the interface for the
'9X' are explained below.
– Automatic un-addressing as a talker when
n Summary
n Listener Function, L4
it is addressed as a listener.
The counter can receive programming instructions from the controller. L4 means
that it has the following functions:
Description,
Code
Source handshake,
SH1
Acceptor handshake,
AH1
Control function,
C0
Talker Function,
T6
Listener function,
L4
Service request,
SR1
n
Remote/local function,
RL1
Parallel poll,
PP0
Device clear function,
DC1
The counter can call for attention from
the controller, e.g., when a measurement
is completed and a result is available.
Device trigger function,
DT1
n Remote/Local, RL1
Bus drivers,
E2
You can control the counter manually
(locally) from the front panel or remotely
from the controller. The LLO, local-lock-out function, can disable the LOCAL button on the front panel.
n SH1 and AH1
These simply mean that the counter can
exchange data with other instruments or a
controller using the bus handshake lines:
DAV, NRFD, NADC.
n Control Function, C0
The counter does not function as a controller.
n Talker Function, T6
– Basic listener.
– No listen only.
– Automatic un-addressing as listener when
addressed as a talker.
Service Request, SR1
n Parallel Poll, PP0
The counter does not have any parallel
poll facility.
n Device Clear, DC1
The controller can reset the counter via
interface message DCL (Device clear) or
SDC (Selective Device Clear).
The counter can send responses and the
results of its measurements to other devices or to the controller. T6 means that it
has the following functions:
Interface Functions 1-5
Getting Started
n Device Trigger, DT1
You can start a new measurement from
the controller via interface message GET
(Group Execute Trigger).
n Bus Drivers, E2
The GPIB interface has tri-state bus drivers.
munication directly, for example through
the Instrument I/O Assistant.
Custom specific programs using USB
communication can be written in C/C++,
supported by libraries and lib-files supplied with the NI-VISA driver (default
location C:\VXIPNP\WinNT\). A sample
program is found on page 4-11.
Instruments connected to the USB bus
are identified with:
Using the USB
Interface
The counter is equipped with a USB full
speed interface, which supports the same
SCPI command set as the GPIB interface.
The USB interface is a full speed interface (12 Mbit/s), supporting the industry
standard USBTMC (Universal Serial Bus
Test and Measurement Class) revision
1.0, with the subclass USB488, revision
1.0. The full specification for this protocol can be found at www.usb.org.
A valid driver for this protocol must be
installed to be able to communicate over
USB. We recommend NI-VISA version
3.2 or above, which is available for several operating systems, from National Instruments (www.ni.com). The Windows
version is supplied on the CD.
In order to test the communication and
send single commands, the National Instruments utility supplied with the
NI-VISA drivers can be used to open a
“VISA session” to send and receive data
from the instrument, and also set control
signals such as Remote or Local.
Third party application programs, such as
LabView, normally support USB com1-6 Using the USB Interface
Vendor ID: 0x14EB for Pendulum Instruments.
Model ID: 0x0090 for the '90' and serial
number of the instrument.
This data is combined to form a unique
identifier string such as:
USB\VID_14EB&PID_0090\991234 or
“USB0::0x14EB::0x0090::991234::INSTR”
When connecting to the instrument, any
part of this string may be used to identify
the instrument, for example any instrument from this vendor, any instrument of
a certain type or a specific instrument
serial number.
Chapter 2
Default Settings
Default Settings
Default settings
(after *RST)
PARAMETER
VALUE/
SETTING
PARAMETER
VALUE/
SETTING
Mathematics
Mathematics State
OFF
Constants
K=M=1,
L=0
Inputs A & B
Limits
Trigger Level
AUTO
Impedance
1 MW
Manual Attenuator
1X
Coupling
AC
Trigger Slope
POS
Filter
OFF
Arming
Start
OFF
Start Slope
POS
Start Arm Delay
0
Stop
OFF
Limit State
OFF
Limit Mode
RANGE
Lower Limit
0
Upper Limit
0
Burst
Sync Delay
400 ms
Start Delay
0
Meas. Time
200 ms
Freq. Limit
300 MHz
Miscellaneous
Stop Slope
POS
Function
Source
IMM
Smart Frequency
AUTO
Smart Time Interval
OFF
Hold-Off
FREQ A
Meas. Time
10 ms
200 ms
Memory Protection
(Memory 1 to 10)
Not
changed by
*RST
Time-Out State
OFF
Auto Trig Low Freq Lim
100 Hz
Time-Out Time
100 ms
Timebase Reference
AUTO
Arm-Trig State
IDLE
(equivalent
to sending
:INIT:CONT
OFF)
Hold-Off State
OFF
Hold-Off Time
Time-Out
Statistics
Statistics State
OFF
No. of Samples
100
No. of Bins
20
Pacing State
OFF
Pacing Time
20 ms
2-2 Default settings (after *RST)
Chapter 3
Introduction to SCPI
Introduction to SCPI
What is SCPI?
SCPI
(Standard
Commands
for
Programmable Instruments) is a standardized set of commands used to remotely
control programmable test and measurement instruments. The instrument firmware contains the SCPI. It defines the
syntax and semantics that the controller
must use to communicate with the instrument.
This chapter is an overview of SCPI and
shows how SCPI is used in Pendulum
Frequency Counters and Timer/Counters.
SCPI is based on IEEE-488.2 to which it
owes much of its structure and syntax.
SCPI can, however, be used with any of
the standard interfaces, such as GPIB
(=IEC625/IEEE-488), VXI and RS-232.
Compatibility
SCPI provides two types of compatibility: Vertical and horizontal.
:INPut:COUPling AC
AC
AC
Figure 3-1
Vertical
This means that all instruments of the
same type have identical controls. For
example, oscilloscopes will have the
same controls for timebase, triggers and
voltage settings.
Reason for SCPI
For each instrument function, SCPI defines a specific command set. The advantage of SCPI is that programming an
instrument is only function dependent
and no longer instrument dependent. Several different types of instruments, for example an oscilloscope, a counter and a
multimeter, can carry out the same function, such as frequency measurement. If
these instruments are SCPI compatible,
you can use the same commands to measure the frequency on all three instruments, although there may be differences
in accuracy, resolution, speed, etc.
3-2 What is SCPI?
10.1234567890E3
:MEASure:FREQuency?
10E3
10.1E3
Figure 3-2
Horizontal
This means that instruments of different
types that perform the same functions
have the same commands. For example, a DMM, an oscilloscope, and a
counter can all measure frequency with
the same commands.
Introduction to SCPI
Management and
Maintenance of Programs
SCPI simplifies maintenance and management of the programs. Today changes
and additions in a good working program
are hardly possible because of the great
diversity in program messages and instruments. Programs are difficult to understand for anyone other than the original
programmer. After some time even the
programmer may be unable to understand
them.
A programmer with SCPI experience,
however, will understand the meaning
and reasons of a SCPI program, because
of his knowledge of the standard.
Changes, extensions, and additions are
much easier to make in an existing application program. SCPI is a step towards
portability of instrument programming
software and, as a consequence, it allows
the exchange of instruments.
GPIB
Response
Messages
GPIB
Interface
Program
Messages
Input Buffer
Output Queue
Response
Messages
Program
Messages
Parser
Message
Exchange
Control
Response
Formatter
Response Data
Figure 3-3
Parsed
Messages
Execution
Control
Instrument
Functions
Executable
Messages
Overview of the firmware in a SCPI instrument.
What is SCPI? 3-3
Introduction to SCPI
How does SCPI
Work in the
Instrument?
The functions inside an instrument that
control the operation provide SCPI compatibility. Figure 3-3 shows a simplified
logical model of the message flow inside
a SCPI instrument.
When the controller sends a message to a
SCPI instrument, roughly the following
happens:
– The GPIB controller addresses the instrument as listener.
– The GPIB interface function places the
message in the Input Buffer.
Message Exchange Control
protocol
Another important function is the Message Exchange Control, defined by
IEEE 488.2. The Message Exchange
Control protocol specifies the interactions
between the several functional elements
that exist between the GPIB functions
and the device-specific functions, see
Figure 3-3 .
The Message Exchange Control protocol
specifies how the instrument and controller should exchange messages. For example, it specifies exactly how an
instrument shall handle program and response messages that it receives from and
returns to a controller.
Input Buffer, parses (decodes) the message,
and checks for the correct syntax. The instrument reports incorrect syntax by sending command errors via the status system
to the controller. Moreover, the parser will
detect if the controller requires a response.
This is the case when the input message is
a query (command with a “?” appended).
This protocol introduces the idea of commands and queries; queries are program
messages that require the device to send a
response. When the controller does not
read this response, the device will generate a Query Error. On the other hand,
commands will not cause the device to
generate a response. When the controller
tries to read a response anyway, the device then generates a Query Error.
The Parser will transfer the executable
messages to the Execution Control block
in token form (internal codes). The Execution Control block will gather the information required for a device action
and will initiate the requested task at the
appropriate time. The instrument reports
execution errors via the status system
over the GPIB and places them in the Error Queue.
The Message Exchange Control protocol
also deals with the order of execution of
program messages. It defines how to respond if Command Errors, Query Errors,
Execution Errors, and Device-Specific errors occur. The protocol demands that the
instrument report any violation of the
IEEE-488.2 rules to the controller, even
when it is the controller that violates
these rules.
– When the controller addresses the instru-
The IEEE 488.2 standard defines a set of
operational states and actions to implement the message exchange protocol.
These are shown in the following table:
– The Parser fetches the message from the
ment as talker, the instrument takes data
from the Output Queue and sends it over
the GPIB to the controller.
3-4 How does SCPI Work in the Instrument?
Introduction to SCPI
State
IDLE
READ
Purpose
Wait for messages
Read and execute messages
QUERY
Store responses to be
sent
SEND
Send responses
REComplete sending reSPONSE
sponses
DONE
Finished sending responses
DEADLOCK The device cannot buffer
more data
Action,
Unterminated,
Reason
The controller attempts to
read the device without
first having sent a complete query message
Interrupted, The device is interrupted
by a new program message before it finishes
sending a response message
message. When the controller violates this
rule, the device will report a query error
(interrupted action).
– The instrument sends only one response
message for each query message. If the
query message resulted in more than one
answer, all answers will be sent in one response message.
n Order of Execution
Deferred Commands
Execution control collects commands until the end of the message, or until it finds
a query or other special command that
forces execution. It then checks that the
setting resulting from the commands is a
valid one: No range limits are exceeded,
no coupled parameters are in conflict, etc.
If this is the case, the commands are executed in the sequence they have been received; otherwise, an execution error is
generated, and the commands are discarded.
This deferred execution guarantees the
following:
– All valid commands received before a
Protocol Requirements
In addition to the above functional elements, which process the data, the message exchange protocol has the following
characteristics:
– The controller must end a program message containing a query with a message
terminator before reading the response
from the device (address the device as
talker). If the controller breaks this rule,
the device will report a query error
(unterminated action).
– The controller must read the response to a
query in a previously (terminated) program
message before sending a new program
query are executed before the query is executed.
– All queries are executed in the order they
are received.
– The order of execution of commands is never
reversed.
n Sequential and Overlapped
Commands
There are two classes of commands: sequential and overlapped commands. All
commands in the counter are sequential,
that is one command finishes before the
next command executes.
How does SCPI Work in the Instrument? 3-5
Introduction to SCPI
Remote Local Protocol
n Definitions
Remote Operation
When an instrument operates in remote,
all local controls, except the local key,
are disabled.
Local Operation
An instrument operates in local when it is
not in remote mode as defined above.
Local Lockout
In addition to the remote state, an instrument can be set to remote with ‘local
lockout’. This disables the return-to-local
button. In theory, the state local with local lockout is also possible; then, all local
controls except the return-to-local key
are active.
The Counter in Remote Operation
When the Counter is in remote operation,
it disables all its local controls except the
LOCAL key.
The Counter in Local Operation
When the Counter is in local operation
the instrument is fully programmable
both from the front panel and from the
bus. If a bus message arrives while a
change is being entered from the front
panel, the front panel entry is interrupted
and the bus message is executed.
We recommend you to use Remote mode
when using counters from the bus. If not,
the counter measures continously and the
initiation command :INIT will have no
effect.
3-6 How does SCPI Work in the Instrument?
Introduction to SCPI
Program and Response Messages
The communication between the system
controller and the SCPI instruments connected to the GPIB takes place through
Program and Response Messages. A Program Message is a sequence of one or
more commands sent from the controller
to an instrument. Conversely, a Response
Message is the data from the instrument
to the controller.
C o n tr o lle r
;
< P ro g ra m
Fig 3-6
C o m m a n d s
M e s s a g e s
Q u e r ie s
R e s p o n s e M e s s a g e s
Program and response
messages.
The GPIB controller instructs the device
through program messages. The device
will only send responses when explicitly
requested to do so; that is, when the controller sends a query. Queries are recognized by the question mark at the end of
the header, for example: *IDN? (requests
the instrument to send identity data).
n Syntax of Program Messages
A command or query is called a program
message unit. A program message unit
consists of a header followed by one or
more parameters, as shown in .
,
Figure 3-5
Syntax of a terminated
Program Message.
The ¿ is the PMT (program message
terminator) and it must be one of the following codes:
¿
NL^END
NL
<dab>^END
Syntax and Style
< H e a d e r>
M e s s a g e U n it>
D e v ic e
P ro g ra m
Figure 3-4
One or more program message units
(commands) may be sent within a simple
program message, see Fig. 3-6.
< S p a c e >
< P a ra m e te r>
Syntax of a Program
Message Unit.
+
+
This is <new line>
code sent concurrently with the
END message on
the GPIB.
This is the <new
line> code.
This is the END
message sent concurrently with the
last data byte
<dab>.
NL is the same as the ASCII LF
(<line feed> = ASCII 10decimal ).
The END message is sent via the
EOI-line of the GPIB.
The ^ character stands for ‘at the
same time as’.
The possibility to use NL as the
sole PMT was added to instrument FW V1.25 in compatible
mode only, and to V1.26 in both
compatible and native mode. FW
loader V3.03 or later must be
used as from these versions.
Program and Response Messages 3-7
Introduction to SCPI
Most controller programming languages
send these terminators automatically, but
allow changing it. So make sure the terminator is as above.
Example of a terminated program message:
:INP:IMP
1E6;:ACQ:APER
0.1NL^END
root level keyword, representing the
highest hierarchical level in the command
tree.
The keywords following represent
subnodes under the root node. See
‘COMMAND TREE’ on page 3-10 for
more details of this subject.
Forgiving Listening
program message unit
terminator
program message unit
This program message consists of two
message units. The unit separator (semicolon) separates message units.
Basically there are two types of commands:
Common Commands
The common command header starts with
the asterisk character (*), for example
*RST.
SCPI Commands
SCPI command headers may consist of
several keywords (mnemonics), separated
by the colon character (:).
R o o t
E n d n o d e
S u b n o d e s
The syntax specification of a command is
as follows:
ACQuisition:APERture8<numeric value>
Where: ACQ and APER specify the
shortform, and ACQuisition and APERture specify the longform. However,
ACQU or APERT are not allowed and
cause a command error.
In program messages either the long or
the shortform may be used in upper or
lower case letters. You may even mix upper and lower case. There is no semantic
difference between upper and lower case
in program messages. This instrument behavior is called forgiving listening.
For example, an application program may
send the following characters over the
bus:
SEND® iNp:ImP81E6
The example shows the shortform used in
a mix of upper and lower case
SEND® Input:Imp81E6
Figure 3-7
The SCPI command tree.
Each keyword in a SCPI command
header represents a node in the SCPI
command tree. The leftmost keyword
(INPut in the previous example) is the
3-8 Program and Response Messages
The example shows a mix of longform
and shortform and a mix of upper and
lower case.
Introduction to SCPI
Notation Habit in Command Syntax
To clarify the difference between the
forms, the shortform in a syntax specification is shown in upper case letters and
the remaining part of the longform in
lower case letters.
Notice however, that this does not specify
the use of upper and lower case characters in the message that you actually sent.
Upper and lower case letters, as used in
syntax specifications, are only a notation
convention to ease the distinction between longform and shortform.
n Syntax of Response Messages
The response of a SCPI instrument to a
query (response message unit) consists of
one or more parameters (data elements)
as the following syntax diagram shows.
There is no header returned.
,
< P a ra m e te r>
Figure 3-8
Syntax of a Response
Message Unit.
If there are multiple queries in a program
message, the instrument groups the multiple response message units together in
one response message according to the
following syntax:
;
< R e s p o n s M e s s a g e U n it>
Fig 3-9
Syntax of a Terminated
Response Message.
The response message terminator (rmt) is
always NL^END, where:
NL^END is <new line> code (equal to
<line feed> code = ASCII 10 decimal)
sent concurrently with the END message.
The END message is sent by asserting the
EOI line of the GPIB bus.
Responses:
A SCPI instrument always sends its response data in shortform and in capitals.
Example:
You program an instrument with the following command:
SEND® :ROSCillator:SOURce8EXTernal
Then you send the following query to the
instrument:
SEND® :ROSCillator:SOURce?
The instrument will return:
READ¬ EXT
response in shortform and in capitals.
Program and Response Messages 3-9
Introduction to SCPI
Command Tree
Command Trees like the one below are
used to document the SCPI command set
in this manual. The keyword (mnemonic)
on the root level of the command tree is
the name of the subsystem. The following example illustrates the Command
Tree of the INPut1 subsystem.
< H E A D E R >
:IN P u t[1 ]
:IM P e d a n c e
P a ra m e te rs
& < N u m e r ic v a lu e > |M A X |M IN
:F IL T e r
[:L P A S s ]
+
SEND® ARM:STARt:SLOPe8NEG
Where: ARM is the root node and SLOPe is
the leaf node.
Each colon in the command header
moves the current path down one level
from the root in the command tree. Once
you reach the leaf node level in the tree,
you can add several leaf nodes without
having to repeat the path from the root
level.
Just follow the rules below:
– Always give the full header path, from the
[:S T A T e ]
Figure 3-10
n Example:
& < B o o le a n >
Example of an INPut
subsystem command
tree.
The keywords placed in square
brackets are optional nodes. This
means that you may omit them
from the program message.
Example:
SEND® INPUT1:FILTER:LPASS
:STATE8ON
is the same as
SEND® INPUT:FILTER8ON
Moving down the Command
Tree
The command tree shows the paths you
should use for the command syntax. A
single command header begins from the
root level downward to the ‘leaf nodes’
of the command tree. (Leaf nodes are the
last keywords in the command header,
before the parameters.)
3-10 Command Tree
root, for the first command in a new program message.
– For the following commands within the
same program message, omit the header
path and send only the leaf node (without
colon).
You can only do this if the header
path of the new leaf-node is the
same as that of the previous one. If
not, the full header path must be
given starting with a colon.
+
Command header = Header path + leaf
node
– Once you send the PMT (program message
terminator), the first command in a new
program message must start from the root.
n Example:
SEND® ARM:STARt:SLOPe8NEG;
DELay80.1
Introduction to SCPI
This is the command where:
ARM:STARt is the header path and
:SLOPe is the first leaf node and DELay is the second leaf node because
DELay is also a leaf node under the
header path ARM:STARt.
There is no colon before DELay!
+
Parameters
Numeric Data
Decimal data are printed as numerical
values throughout this manual. Numeric
values may contain both a decimal point
and an exponent (base 10).
These numerals are often represented as
NRf (NR = NumeRic, f = flexible) format.
n Keywords
In addition to entering decimal data as
numeric values, several keywords can exist as special forms of numeric data, such
as MINimum, MAXimum, DEFault,
STEP, UP, DOWN, NAN (Not A Number), INFinity, NINF (Negative INFinity). The Command Reference chapters
explicitly specify which keywords are allowed by a particular command. Valid
keywords for the counter are MAXimum
and MINimum.
The instrument always allows MINimum
and MAXimum as a data element in commands, where the parameter is a numeric
value. MIN and MAX values of a parameter can always be queried.
Example:
SEND® INP:LEV?8MAX
This query returns the maximum range
value.
n Suffixes
You can use suffixes to express a unit or
multiplier that is associated with the decimal numeric data. Valid suffixes are s
(seconds), ms (milliseconds), mohm
(megaohm), kHz (kilohertz), mV (millivolt).
Example:
SEND® :SENS:ACQ:APER8100ms
Where: ms is the suffix for the numeric
value 100.
Notice that you may also send ms as MS
or mS. MS does still mean milliseconds,
not Mega Siemens!
Response messages do not have suffixes.
The returned value is always sent using
standard units such as V, S, Hz, unless
you explicitly specify a default unit by a
FORMat command.
MINimum
Boolean Data
This keyword sets a parameter to its minimum value.
A Boolean parameter specifies a single
binary condition which is either true or
false.
MAXimum
This keyword sets a parameter to its maximum value.
Boolean parameters can be one of the following:
– ON or 1 means condition true.
– OFF or 0 means condition false.
Parameters 3-11
Introduction to SCPI
n Example
Other Data Types
SEND® :SYST:TOUT8ON or
:SYST:TOUT81
Other data types that can be used for parameters are the following:
This switches timeout monitoring on.
A query, for instance :SYSTem:TOUT?,
will return 1 or 0; never ON or OFF.
– String data: Always enclosed between sin-
Expression Data
– Character data: For this data type, the same
gle or double quotes, for example
“This is a string” or ‘This is a string.’
rules apply as for the command header
mnemonics. For example: POSitive, NEGative, EITHer.
You must enclose expression program
data in parentheses (). Three possibilities
of expression data are as follows:
– Non-decimal data: For instance, #H3A for hexa
– <numeric expression data>
decimal data.
<parameter list>
– Block data: Used to transfer any 8-bit
– <channel list>
coded data. This data starts with a preamble that contains information about the
length of the parameter.
An example of <numeric expression data> is:
(X – 10.7E6) This subtracts a 10.7 MHz
intermediate frequency from the measured result.
Example:
#218INP:IMP850;SENS810
An example of <parameter list> is: (5,0.02)
This is a list of two parameters; the
first one is 5 and the second one 0.02.
An example of <channel list> is: (@3),(@1)
This specifies channel 3 as the main
channel and channel 1 as the second
channel.
Summary
Header separator
separates the
different parts of a
compound header
Single or double
quote indicates
string data
Semicolon
separates several
program messages
in a string
A question
mark indicates
that a response
is requested
[:SENS]:FUNC "FREQ:RAT 3,1";:CALC:MATH (X - 2);:READ?
Space
Square brackets separates
indicates that the headers
from data
text inside is
optional
3-12 Parameters
Comma separates
several data fields
from each other
A leading colon
shows that the
following
command
starts from the
root level of the
command tree
Parenthesis
indicates
expression
data
New line
ends a
message
Introduction to SCPI
Macros
A macro is a single command, that represents one or several other commands, depending on your definition. You can
define 25 macros of 40 characters in the
counter. One macro can address other
macros, but you cannot call a macro from
within itself (recursion). You can use
variable parameters that modify the
macro.
within the language (like BASIC) we recommend that you use block data instead,
and use single quotes as string identifiers
within the macro.
+
When using string data for the
commands in a macro, remember
to use a different type of string
data identifiers for strings within
the macro. If the macro should for
instance set the input slope to
positive and select the period
function, you must type:
Use macros to do the following:
“:Inp:slope8pos;:Func8’PER81’”
– Provide a shorthand for complex com-
or
mands.
‘:Inp:slope8pos;:Func8"PER81"’
– Cut down on bus traffic.
Macro Names
You can use both commands and queries
as macro labels. The label cannot be the
same as common commands or queries. If
a macro label is the same as a counter
command, the counter will execute the
macro when macros are enabled
(*EMC81), and it will execute the
counter command when macros are disabled (*EMC80).
Data Types within Macros
The commands to be performed by the
macro can be sent both as block and
string data.
String data is the easiest to use since you
don’t have to count the number of characters in the macro. However, there are
some things you must keep in mind:
Both double quote (“) and single quote
(‘) can be used to identify the string data.
If you use a controller language that uses
double quotation marks to define strings
Define Macro Command
*DMC assigns a sequence of commands
to a macro label. Later when you use the
macro label as a command, the counter
will execute the sequence of commands.
Use the following syntax:
*DMC <macro-label>, <commands>
n Simple Macros
Example:
SEND® *DMC8‘ECL_RiseTime’,
#268:INP:LEV:AUTO8ON;REL
820;:INP:IMP850;COUP8DC;
:INP2:LEV:AUTO8ON;REL880
This
example
defines
a
macro
“ECL_RiseTime”, which sets the impedance to 50 W, the coupling to DC, and the
relative trigger levels to 20 % and 80 %,
in order to make the necessary preparations for measuring rise time of ECL
logic signals on Input A.
Macros 3-13
Introduction to SCPI
n Macros with Arguments
Enabling and Disabling
You can pass arguments (variable param- Macros
eters) with the macro. Insert a dollar sign
($) followed by a single digit in the range
1 to 9 where you want to insert the parameter. See the example below.
When a macro with defined arguments is
used, the first argument sent will replace
any occurrence of $1 in the definition; the
second argument will replace $2, etc.
Example:
SEND® *DMC8‘AUTO’,
‘:INP:LEV:AUTO8$1;
:INP:IMP8$2’
This example defines a macro AUTO,
which takes two arguments, i.e., auto
«ON|OFF|ONCE» ($1) and impedance
«50|1E6» ($2) .
n *EMC Enable Macro Command
When you want to execute a counter
command or query with the same name as
a defined macro, you need to disable
macro execution. Disabling macros does
not delete stored macros; it just hides
them from execution.
Disabling: *EMC80 disables all macros.
Enabling: *EMC81
n *EMC? Enable Macro Query
Use this query to determine if macros are
enabled.
Response:
1 macros are enabled
0 macros are disabled
SEND® AUTO8OFF,50
Switches off auto trigger level and sets
the input impedance to 50 W.
Deleting Macros
Use the *PMC (purge macro) command
to delete all macros defined with the
*DMC command. This removes all
macro labels and sequences from the
memory. To delete only one macro in the
memory,
use
the
:MEMory:DELete:MACRo command.
+
You cannot overwrite a macro;
you must delete it before you can
use the same name for a new
macro.
How to Execute a Macro
Macros are disabled after *RST, so to be
sure, start by enabling macros with
*EMC 1. Now macros can be executed
by using the macro labels as commands.
n Example:
SEND® *DMC8‘LIMITMON’,’
:CALC:STAT8ON;
:CALC:LIM:STAT8ON;
:CALC:LIM:LOW:DATA
$1;STAT8ON;
:CALC:LIM:UPP:DATA
$2;STAT8ON’
SEND® *EMC81
Now sending the command
SEND® LIMITMON81E6,1.1E6
will switch on the limit monitoring to
alarm between the limits 1 MHz and
1.1 MHz.
3-14 Macros
Introduction to SCPI
Retrieve a Macro
n *GMC? Get Macro Contents
Query
This query gives a response containing
the definition of the macro you specified
when sending the query.
Example using the above defined
macro:
SEND® *GMC?8‘LIMITMON’
READ¬ #292:CALC:STAT
ON;:CALC:LIM:STAT ON;
:CALC:LIM:LOW:DATA
$1;STAT8ON;
:CALC:LIM:UPP:DATA
$2;STAT8ON’
n *LMC? Learn Macro Query
This query gives a response containing
the labels of all the macros stored in the
Timer/Counter.
Example:
SEND® *LMC?
READ¬“MYINPSETTING”,"LIMITMON
"
Now there are two macros in memory,
and they have the following labels:
“MYINPSETTING” and “LIMITMON”.
Macros 3-15
Introduction to SCPI
Status Reporting
System
Introduction
Status reporting is a method to let the
controller know what the counter is doing. You can ask the counter what status
it is in whenever you want to know.
You can select some conditions in the
counter that should be reported in the Status Byte Register. You can also select if
some bits in the Status Byte should generate a Service Request (SRQ).
(An SRQ is the instrument’s way to call
the controller for help.)
Read more about the Status Subsystem in
Chapter 6.
Standard Event Register
Questionable Data Register
Condition Register
Event Register
Enable Register
Logical OR
Operation Status Register
Device Register 0
Condition Register
Logical OR
7 6 5 4 3 2 1 0
Service Request Enable
Logical OR
SRQ message
Figure 3-11
Model '9X' status register structure.
3-16 Status Reporting System
Status Byte Register
Introduction to SCPI
Error Reporting
The counter will place a detected error in
its Error Queue. This queue is a FIFO
(First-In First-Out) buffer. When you
read the queue, the first error will come
out first, the last error last.
If the queue overflows, an overflow message is placed last in the queue, and further errors are thrown away until there is
room in the queue again.
n Detecting Errors in the Queue
Bit 2 in the Status Byte Register shows if
the instrument has detected errors. It is
also possible to enable this bit for Service
Request on the GPIB. This can then interrupt the GPIB controller program when
an error occurs.
n Read the Error/Event Queue
This is done with the :SYSTem:ERRor?
query.
Example:
SEND® :SYSTem:ERRor?
READ¬ –100,8“Command8Error”
The query returns the error number followed by the error description.
+
Further description of all error
numbers can be found in the Error Messages chapter
If more than one error occurred, the
query will return the error that occurred
first. When you read an error you will
also remove it from the queue. You can
read the next error by repeating the
query. When you have read all errors the
queue is empty, and the :SYSTem:ERRor? query will return:
0, “No error”
When errors occur and you do not read
these errors, the Error Queue may overflow. Then the instrument will overwrite
the last error in the queue with the following:
–350, “Queue overflow”
If more errors occur, they will be discarded.
n Standardized Error Numbers
The instrument reports four classes of
standardized errors in the Standard Event
Status and in the Error/Event Queue as
shown in the following table:
Range of
Error Numbers
Standard
Event
Register
Command
Error
–100 to
–199
bit 5 - CME
Execution
Error
–200 to
–299
bit 4 - EXE
Device
Specific
Error
–300 to
–399
+100 to
+32767
bit 3 - DDE
Query Error
–400 to
–499
bit 2 -QYE
Error Class
n Command Error
This error shows that the instrument detected a syntax error.
Error Reporting 3-17
Introduction to SCPI
n Execution Error
This error shows that the instrument has
received a valid program message which
it cannot execute because of some device
specific conditions.
n Device-specific Error
This error shows that the instrument
could not properly complete some device
specific operations.
n Query Error
This error will occur when the Message
Exchange Protocol is violated, for example, when you send a query to the instrument and then send a new command
without first reading the response data
from the previous query. Also, trying to
read data from the instrument without
first sending a query to the instrument
will cause this error.
3-18 Error Reporting
Introduction to SCPI
Initialization and
Resetting
The device-clear commands will not do
the following:
– Change the instrument settings or stored
data in the instrument.
Reset Strategy
There are three levels of initialization:
– Bus initialization
– Message exchange initialization
– Device initialization
n Bus Initialization
This is the first level of initialization. The
controller program should start with this,
which initializes the IEEE-interfaces of
all connected instruments. It puts the
complete system into remote enable
(REN-line active) and the controller
sends the interface clear (IFC) command.
The command or the command sequence
for this initialization is controller and language dependent. Refer to the user manual of the system controller in use.
n Message Exchange Initialization
Device clear is the second level of initialization. It initializes the bus message exchange, but does not affect the device
functions.
Device clear can be signaled either with
DCL to all instruments or SDC (Selective
device-clear) only to the addressed instruments. The instrument action on receiving DCL and SDC is identical, they will
do the following:
–
–
–
–
Clear the input buffer.
Clear the output queue.
– Interrupt or affect any device operation in
progress.
– Change the status byte register other than
clearing the MAV bit as a result of clearing
the output queue.
Many older IEEE-instruments,
that are not IEEE-488.2 compatible returned to the power-on default settings when receiving a
device-clear command.
IEEE-488.2 does not allow this.
+
When to use a Device-clear Command
The command is useful to escape from
erroneous conditions without having to
alter the current settings of the instrument. The instrument will then discard
pending commands and will clear responses from the output queue. For example; suppose you are using the Counter
in an automated test equipment system
where the controller program returns to
its main loop on any error condition in
the system or the tested unit. To ensure
that no unread query response remains in
the output queue and that no unparsed
message is in the input buffer, it is wise
to use device-clear. (Such remaining responses and commands could influence
later commands and queries.)
n Device Initialization
The third level of initialization is on the
device level. This means that it concerns
only the addressed instruments.
Reset the parser.
Clear any pending commands.
Initialization and Resetting 3-19
Introduction to SCPI
The *RST Command
Use this command to reset a device. It
initializes the device-specific functions in
the Counter.
The following happens when you use the
*RST command:
– You set the Counter-specific functions to a
known default state. The *RST condition
for each command is given in the command reference chapters.
– You disable macros.
– You set the counter in an idle state (outputs
are disabled), so that it can start new operations.
The *CLS Command
Use this command to clear the status data
structures. See ‘Status Reporting system’
in this chapter.
The following happens when you use the
*CLS command:
– The instrument clears all event registers
summarized in the status byte register.
– It empties all queues, which are summarized in the status byte register, except the
output queue, which is summarized in the
MAV bit.
3-20 Initialization and Resetting
Chapter 4
Programming
Examples
Programming Examples
Introduction
The program examples in this chapter are
written in standard 'C' extended with a
dedicated library for the National
AT-GPIB/TNT controller board.
The programs can be run on PCs using
Windows NT and later operating
systems.
Even if you use other platforms for your
applications, you can benefit from studying the examples. They give you a good
insight into programming the instrument
efficiently.
+
To be able to run these programs
without modification, the address
of your counter must be set to 10.
Example 1: Individual Measurements
Example 2: Block Measurements
Example 3: Fast Measurements
Example 4: USB Communication
Example 5: Continuous Measurements
For your convenience the examples can
also be found on the included manual
CD. You are at liberty to copy them for
educational purposes.
4-2 Introduction
Programming Examples
Individual Mesurements (Ex. #1)
Sample program to perform individual measurements on the '9X'.
Written for National AT-GPIB/TNT for Windows NT and later.
/*
**
Sample program to perform individual measurements on the '9X'.
Written for National AT-GPIB/TNT for Windows NT and later.
**
*/
#include
#include
#include
#include
<windows.h>
<stdio.h>
<time.h>
“decl-32.h”
void ibwrite(int counter, const char *string);
void sleep (long mswait);
void main() {
int address = 10;
int i, counter; /* file descriptor for counter */
char reading[50];
char
buf[100];
printf (“Connecting to the '9X' on address %d using
National Instruments GPIB card.\n”, address);
if ((counter = ibdev(0, address, 0, T10s, 1, 0)) < 0) {
printf(“Could not connect to counter”);
exit(1);
}
ibclr(counter);
do {
ibwrite(counter, “syst:err?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“Errors before start: %s\n”, buf);
} while (atoi(buf)!=0);
ibwrite(counter, “*idn?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“Counter identification string: %s\n”, buf);
printf(“Setup\n”);
// Reset counter to known state
ibwrite(counter, “*rst;*cls”);
Individual Mesurements (Ex. #1)
4-3
Programming Examples
// Setup for pulse width measurement
ibwrite(counter, “CONF:PWID (@1)”);
// Some settings...
ibwrite(counter, “AVER:STAT OFF;:ACQ:APER MIN”);
ibwrite(counter, “INP:LEV:AUTO OFF; :INP:LEV 0");
ibwrite(counter, ”FORMAT:TINF ON;:FORMAT ASCII");
// Check that setup was OK, all commands correctly spelled
etc
ibwrite(counter, “syst:err?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“Setup error: %s\n”, buf);
// Measure 20 samples
for (i=0; i<20; i++) {
ibwrite(counter, “READ?”);
ibrd(counter, reading, 49L); reading[ibcnt]=0;
printf(“Result %d:%s”, i, reading);
}
do {
ibwrite(counter, “syst:err?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“End error: %s\n”, buf);
} while (atoi(buf)!=0);
ibonl(counter, 0);
}
/********************
* Support functions *
********************/
void ibwrite(int counter, const char *string) {
ibwrt(counter, (char*) string, strlen(string));
}
void sleep (long mswait) {
time_t EndWait = clock() + mswait * (CLOCKS_PER_SEC/1000);
while (clock() < EndWait);
}
4-4
Individual Mesurements (Ex. #1)
Programming Examples
Block Measurements (Ex. #2)
Sample program to perform fast measurements on the '9X' using block measurements.
Written for National AT-GPIB/TNT for Windows NT and later.
/*
**
** Sample program to perform fast measurements on the '9X'
** using block measurements
**
** Written for National AT-GPIB/TNT for Windows NT and later
*/
#include <windows.h>
#include <stdio.h>
#include <time.h>
#include “decl-32.h”
void ibwrite(int counter, const char *string);
void sleep (long mswait);
time_t StartMain, Start, Stop, StopMain;
void main() {
int address = 10;
int i, j, counter; /* file descriptor for counter */
char bigbuf[30000], *pbuf;
char buf[100];
char
Status;
printf (“Connecting to the '9X' on address %d using
National Instruments GPIB card.\n”, address);
if ((counter = ibdev(0, address, 0, T10s, 1, 0)) < 0) {
printf(“Could not connect to counter”);
exit(1);
}
ibclr(counter);
do {
ibwrite(counter, “syst:err?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“Errors before start: %s\n”, buf);
} while (atoi(buf)!=0);
ibwrite(counter, “*idn?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
identification string: %s\n”, buf);
printf(“Setup\n”);
printf(“Counter
Block Measurements (Ex. #2) 4-5
Programming Examples
// Reset counter to known state
“*rst;*cls”);
ibwrite(counter,
// Setup for period measurement
‘PER 1’”);
ibwrite(counter, “FUNC
// Some settings...
ibwrite(counter, “INP:LEV:AUTO OFF;:INP:LEV 0;COUP DC”);
ibwrite(counter, “TRIG:COUNT 1000;:ARM:COUNT 1");
ibwrite(counter, ”DISP:ENAB ON");
ibwrite(counter,
“FORMAT ASCII;:FORMAT:TINF OFF”);
ibwrite(counter, “*ESE 1;*SRE 32");
// On the safe side: Check that setup was OK, all commands
correctly spelled etc
ibwrite(counter, ”syst:err?");
ibrd(counter, buf, 100L); buf[ibcnt]=0; printf(“Setup
error: %s\n”, buf);
// Measure 1000 samples
Start = clock();
ibwrite(counter, “INIT;*OPC”);
// Wait for completion
ibwait(counter, RQS);
/* Read status and event registers to clear them */
ibrsp(counter, &Status);
ibwrite(counter, “*ESR?”);
ibrd(counter, buf, 100L);
ibwrite(counter, “FETC:ARR? 1000");
ibrd(counter, bigbuf, 30000L);
if (ibcnt >0) {
pbuf = bigbuf;
for (i=0; i<1000; i++) {
for (j=0; pbuf[j]!=’,’ && pbuf[j]!=’\0’; j++);
pbuf[j]=’\0’;
if (i%50 == 0) printf(”Result %d: %s\n", i,
pbuf);
pbuf+=j+1;
}
}
Stop = clock();
4-6 Block Measurements (Ex. #2)
Programming Examples
printf (“Block measurement: %d samples/s\n”, 10000 * 1000 /
(Stop - Start));
do {
ibwrite(counter, “syst:err?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“End error: %s\n”, buf);
} while (atoi(buf)!=0);
ibonl(counter, 0);
}
/********************
* Support functions *
********************/
void ibwrite(int counter, const char *string) {
ibwrt(counter, (char*) string, strlen(string));
}
void sleep (long mswait) {
time_t EndWait = clock() + mswait *
(CLOCKS_PER_SEC/1000);
while (clock() < EndWait);
}
Block Measurements (Ex. #2) 4-7
Programming Examples
Fast Measurements (Ex. #3)
Sample program to perform fast measurements on the '9X' using GET,
DISP:ENAB OFF and FORMAT REAL.
Written for National AT-GPIB/TNT for Windows NT and later.
/*
**
** Sample program to perform fast measurements on the '9X'
** using GET, DISP:ENAB OFF and FORMAT REAL
**
** Written for National AT-GPIB/TNT for Windows NT and later
*/
#include <windows.h>
#include <stdio.h>
#include <time.h>
#include “decl-32.h”
void ibwrite(int counter, const char *string);
void sleep (long mswait);
time_t StartMain, Start, Stop, StopMain;
typedef union {
double d;
char c[8];
} r2d;
void main() {
int address = 10;
int i, j, counter;
char reading[30];
char buf[100];
r2d Result;
/* file descriptor for counter */
printf (“Connecting to the '9X' on address %d using
National Instruments GPIB card.\n”, address);
if ((counter = ibdev(0, address, 0, T10s, 1, 0)) < 0) {
printf(“Could not connect to counter”);
exit(1);
}
sleep(100);
ibclr(counter);
sleep(100);
4-8 Fast Measurements (Ex. #3)
Programming Examples
ibwrite(counter, “*idn?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“Counter identification string: %s\n”, buf);
printf(“Setup\n”);
if ((counter = ibdev(0, address, 0, T3s, 1, 0)) < 0) {
printf(“Could not connect to counter”);
exit(1);
}
// Reset counter to known state
ibwrite(counter, “*rst;*cls”);
ibwrite(counter, “*ESE 0; *SRE 0");
// Setup for frequency measurement
ibwrite(counter, “FUNC ‘per 1’”);
// Some settings...
ibwrite(counter, “INP:LEV:AUTO OFF;:INP:LEV .5;:inp:coup
dc”);
ibwrite(counter, “TRIG:COUNT 1;:ARM:COUNT 1");
ibwrite(counter, ”ACQ:APER 1e-7");
ibwrite(counter, “DISP:ENAB OFF”);
// Disable display to
get maximum speed
ibwrite(counter, “FORMAT REAL;:FORMAT:TINF OFF”);
// Floating point output, no timestamps
ibwrite(counter, “FORMAT:BORDER swap”);
// Intel byte order on results
ibwrite(counter, “ARM:LAY2:SOUR BUS;:INIT:CONT ON”);
// Bus arming
sleep(100);
// On the safe side: Check that setup was OK, all commands
correctly spelled etc
do {
ibwrite(counter, “syst:err?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“Setup error: %s\n”, buf);
} while (atoi(buf)!=0);
printf(“Start\n”);
// Measure 1000 samples
Start = clock();
for (i=0; i<1000; i++) {
ibtrg(counter);
// Generate GET signal
Fast Measurements (Ex. #3) 4-9
Programming Examples
ibrd(counter, reading, 29L);
for (j=0; j<8; j++) {
Result.c[j] = reading[3+j];
}
if (i%50 == 0) printf(“Result %d: %e\n”, i, Result.d);
}
Stop = clock();
printf (“Total time %d ms (%f
(double)1000.0/(Stop-Start)*1000);
samples /s)\n”, Stop- Start,
ibwrite(counter, “DISP:ENAB ON”);
do {
ibwrite(counter, “syst:err?”);
ibrd(counter, buf, 100L); buf[ibcnt]=0;
printf(“End error: %s\n”, buf);
} while (atoi(buf)!=0);
ibonl(counter, 0);
}
/********************
* Support functions *
********************/
void ibwrite(int counter, const char *string) {
ibwrt(counter, string, strlen(string));
}
void sleep (long mswait) {
time_t EndWait = clock() + mswait *
(CLOCKS_PER_SEC/1000);
while (clock() < EndWait);
}
4-10 Fast Measurements (Ex. #3)
Programming Examples
USB Communication (Ex. #4)
#include “stdio.h”
#include “visa.h”
#include <time.h>
#define MAX_CNT 200
void Sleep( clock_t Wait );
int main(void)
{
ViStatus Status;
// For checking errors
ViUInt32 RetCount;
// Return count from string I/O
ViChar Buffer[MAX_CNT];
// Buffer for string I/O
ViFindList fList;
ViChar Desc[VI_FIND_BUFLEN];
ViUInt32 numInstrs;
ViSession defaultRM, Instr;
int i = 0;
// Begin by initializing the system
Status = viOpenDefaultRM(&defaultRM);
if (Status < VI_SUCCESS) {
printf (“Failed to initialise NI-VISA system.\n”);
return -1;
}
// Look for something made by Pendulum
Status = viFindRsrc(defaultRM,
“USB?*INSTR{VI_ATTR_MANF_ID==0x14EB}”,
&fList, &numInstrs, Desc);
if (Status < VI_SUCCESS) {
printf (“No matching instruments found.\n”);
return -1;
}
// Open communication with GPIB Device
Status = viOpen(defaultRM, Desc, VI_NULL, VI_NULL, &Instr);
if (Status < VI_SUCCESS) {
printf (“Cannot communicate with instrument.\n”);
return -1;
}
// Set the timeout for message-based communication
Status = viSetAttribute(Instr, VI_ATTR_TMO_VALUE, 1000);
// Ask the device for identification
USB Communication (Ex. #4) 4-11
Programming Examples
Status = viWrite(Instr, “*IDN?\n”, 6, &RetCount);
Status = viRead(Instr, Buffer, MAX_CNT, &RetCount);
Buffer[RetCount]=0;
printf(“%s\n”,Buffer);
Status = viWrite(Instr, “INIT:CONT OFF;:func ‘per’\n”, 25,
&RetCount);
while( i++<10){
Status = viWrite(Instr, “init;fetc?\n”, 11, &RetCount);
if (Status != VI_SUCCESS) {
printf(“Write: status = %x, i = %d\n”, Status, i);
/* Close down the system */
Status = viClose(Instr);
Status = viClose(defaultRM);
return 0;
}
Sleep(200);
Status = viRead(Instr, Buffer, MAX_CNT, &RetCount);
if (Status != VI_SUCCESS) {
printf(“Read: status = %x, i = %d\n”, Status, i);
/* Close down the system */
Status = viClose(Instr);
Status = viClose(defaultRM);
return 0;
}
Buffer[RetCount]=0;
printf(“%s\n”,Buffer);
Sleep(25);
}
Status = viWrite(Instr, “syst:err?\n”, 10, &RetCount);
Sleep(25);
Status = viRead(Instr, Buffer, MAX_CNT, &RetCount);
Buffer[RetCount]=0;
printf(“%s\n”,Buffer);
/* Close down the system */
Status = viClose(Instr);
Status = viClose(defaultRM);
return 0;
}
void Sleep( clock_t Wait )
{
clock_t Goal;
Goal = Wait + clock();
while( Goal > clock() )
;
}
4-12 USB Communication (Ex. #4)
Programming Examples
Continuous Measurements (Ex. #5)
#include
#include
#include
#include
#include
#include
#include
#include
<windows.h>
<stdio.h>
<conio.h>
<stdlib.h>
<float.h>
<math.h>
<assert.h>
"visa.h"
// Write a null terminated string (ie, no binary data) to the
// instrument.
unsigned WriteDevice(ViSession Instr, const char *Str, int Line)
{
ViStatus Status;
int Length;
ViUInt32 RetLength;
assert(Str != NULL);
Length = strlen(Str);
Status = viWrite(Instr, (unsigned char *)Str, Length,
&RetLength);
if (Status != VI_SUCCESS) {
fprintf(stderr, "Write error: %x at line %d\n",
(unsigned)Status, Line);
return((unsigned)Status);
}
assert(Length == (int)RetLength);
return((unsigned)Status);
}
// Read data (may be binary) into the buffer.
unsigned ReadDevice(ViSession Instr, char *Buf, int BufLength,
ViUInt32 *pActualLength, int Line)
{
ViStatus Status;
assert(Buf != NULL);
assert(BufLength > 0);
assert(pActualLength != NULL);
Status = viRead(Instr, (unsigned char *)Buf, BufLength,
pActualLength);
if (Status != VI_SUCCESS) {
fprintf(stderr, "Read error: %x at line %d\n",
(unsigned)Status, Line);
}
Continuous Measurements (Ex. #5) 4-13
Programming Examples
return((unsigned)Status);
}
#define WriteDev(Str) WriteDevice(Instr, Str, __LINE__)
#define ReadDev(Buf, BufLength, pActualLength) ReadDevice(Instr,
Buf, BufLength, pActualLength, __LINE__)
ViSession defaultRM, Instr;
void Quit()
{
(void)viClose(Instr);
(void)viClose(defaultRM);
_exit(0);
}
void QuitMsg(char *Str)
{
fprintf(stderr, Str);
Quit();
}
void ReportAndQuit()
{
char Buf[100];
ViUInt32 ReadLength;
int Error;
// Break the measurement.
(void)WriteDev("abort");
// Check if everything seems to have worked out OK.
printf("Error queue:\n");
do {
if (WriteDev("syst:err?") != VI_SUCCESS) {
QuitMsg("Failed to query error queue\n");
}
if (ReadDev(Buf, 100, &ReadLength) != VI_SUCCESS) {
QuitMsg("Failed to read error message\n");
}
Buf[ReadLength] = 0; // Null terminate.
if (sscanf(Buf, "%d", &Error) != 1) {
QuitMsg("Failed to scan error status number\n");
}
printf(Buf);
} while (Error != 0);
// Restore the instrument to a more front panel friendly
// state.
4-14 Error Code
Programming Examples
(void)WriteDev("syst:pres");
(void)viClose(Instr);
(void)viClose(defaultRM);
_exit(0);
}
// command line arguments
struct CmdArgs
{
bool bUSB;
//
unsigned int nAddr; //
double Pacing;
char Func[64];
//
bool bPeriod;
//
//
double RefVal, Delta;//
//
double RefFreq;
//
};
GPIB if false
GPIB address. Not used for USB
measurement function
is Meas Func one of Period functions
or one of Freq functions
reference value and acceptable error
(used to check meas results)
reference freq
// check if string is one of the given set. returns
// the number of matched string or -1 if no matches are found
inline int CheckStr(char const *s, int nSLen, char const *Set[],
int nSetSize)
{
for ( int i = 0; i < nSetSize; i++ )
if ( 0 == strncmp(s, Set[i], nSLen) && nSLen ==
strlen(Set[i]) )
return i;
return -1;
}
// Parse command line. Format:
//
<Executable> USB|GPIB[:<Address>] [<Pacing>] [<Meas Func>]
// [<RefFreq>] [<Delta>]
bool ParseCmdArgs(CmdArgs *pArgs, int argc, char* argv[])
{
static char const *StrInterfaces[] = { "USB", "GPIB" };
static char const *StrMeasFuncs[] =
{
"PER",
"PER:BTB",
"FREQ:BTB"// <-nFirstFreq
};
static int const nFirstFreq = 2;
Error Code 4-15
Programming Examples
static int const nMeasFuncs = sizeof(StrMeasFuncs) /
sizeof(StrMeasFuncs[0]);
// defaults
static int const
static double const
static int const
static double const
static double const
DefAddr = 10;
DefPacing = 100e-6; // s
DefMeasFunc = 2;
DefRefFreq = 10e6; // Hz
DefDelta = 10e5; // Hz
// assign some defaults
pArgs->bUSB
= true;
pArgs->nAddr
= DefAddr;
pArgs->Pacing
= DefPacing;
strcpy(pArgs->Func, StrMeasFuncs[DefMeasFunc]);
pArgs->bPeriod
= (DefMeasFunc < nFirstFreq);
pArgs->RefFreq
= DefRefFreq;
pArgs->Delta
= DefDelta;
// parse command line
bool bError = (argc < 2); // at least interface should be
// specified
for ( int i = 1, nArg = i; ! bError && i < argc; i++, nArg++
)
{
char const *s = argv[i];
switch (nArg)
{
case 1: // interface
{
// find ':' delimiter
int j = 0;
for ( j = 0; 0 != s[j] && ':' != s[j]; j++ );
// check interface and read address (if any)
int const nInterface = CheckStr(s, j,
StrInterfaces, 2);
if ( nInterface < 0 ) { bError = true; break; }
pArgs->bUSB = (0 == nInterface);
sscanf(s + j, ":%d", &(pArgs->nAddr));
break;
}
case 2: // Pacing
{
if ( 1 == sscanf(s, "%lf", &(pArgs->Pacing)) )
{
if ( pArgs->Pacing < 50e-6 ) pArgs->Pacing =
50e-6;
4-16 Error Code
Programming Examples
break;
}
// this is not pacing. fallthrough to next arg
nArg++;
}
case 3: // meas func
{
// copy Meas Func
int n = strlen(s);
if ( n >= sizeof(pArgs->Func) /
sizeof(pArgs->Func[0]) )
{
// func is too long
bError = true;
break;
}
strncpy(pArgs->Func, s, n);
pArgs->Func[n] = 0;
// determine if it is period (and if it is valid
// at all)
n = CheckStr(s, n, StrMeasFuncs, nMeasFuncs);
if ( n >= 0 )
{
pArgs->bPeriod = (n < nFirstFreq);
break;
}
// not a function specification. fallthrough
nArg++;
}
case 4: // Reference Value
{
if ( 1 != sscanf(s, "%lf", &(pArgs->RefFreq)) )
bError = true;
break;
}
case 5: // Delta
{
if ( 1 != sscanf(s, "%lf", &(pArgs->Delta)) )
bError = true;
break;
}
default:
bError = true;
}
}
// display usage string in a case of error
if ( bError )
Error Code 4-17
Programming Examples
{
fprintf(stderr,
"Usage:\n"
"%s USB|GPIB[:<Address>] [<Pacing>] [<Meas Func>]
[<Ref Freq>] [<Delta>]\n\n"
"Parameters description:\n"
" USB|GPIB
- selects particular bus
interface,\n"
" <Address>
- (optional) instrument's GPIB
address\n"
"
(%d if omitted)\n"
" <Pacing>
- (optional) pacing time between
measurements\n"
"
(%lg s if omitted)\n"
" <Meas Func> - (optional) meas func to be used.
Possible values:\n",
argv[0], DefAddr, DefPacing);
for ( int i = 0; i < nMeasFuncs; i++ )
fprintf(stderr,
"
%s\n",
StrMeasFuncs[i]);
fprintf(stderr,
"
(%s if omitted)\n",
StrMeasFuncs[DefMeasFunc]);
fprintf(stderr,
" <Ref Freq> - (optional) frequency to be
measured\n"
"
(%lg Hz if omitted)\n"
" <Delta>
- (optional) acceptable frequency
error\n"
"
(%lg Hz if omitted)\n",
DefRefFreq, DefDelta);
return false;
}
// convert RefVal and Delta for Period
pArgs->RefVal = pArgs->RefFreq;
if ( pArgs->bPeriod )
{
pArgs->RefVal = 1 / pArgs->RefVal;
pArgs->Delta *= pArgs->RefVal * pArgs->RefVal;
}
return true;
}
// check that measurement is correct
inline bool CheckMeas(double Val, CmdArgs const &Args)
{
4-18 Error Code
Programming Examples
return (_isnan(Val) ||
Val < Args.RefVal - Args.Delta || Val > Args.RefVal
+ Args.Delta);
}
// check for keypress and exit if any
inline void CheckUserCancel()
{
if ( kbhit() )
{
if ( 0 == getch() ) getch();
QuitMsg("\nCancelled by the user...\n");
}
}
// Create a buffer that should fit 10000 samples in FORMat
// PACKed.
#define BUFSIZE 170000
char Buffer[BUFSIZE];
int main(int argc, char* argv[])
{
ViStatus Status;
ViUInt32 ReadLength;
ViFindList fList;
ViChar Desc[VI_FIND_BUFLEN];
ViUInt32 numInstrs;
double Val;
bool Failed;
int Samples, Digits, i;
__int64 TSVal, PrevTSVal, Count;
char *pBuf, Command[200];
// Begin by initializing the system
Status = viOpenDefaultRM(&defaultRM);
if (Status != VI_SUCCESS)
{
fprintf(stderr, "Initialization failed\n");
return -1;
}
// Parse cmdline
CmdArgs Args;
if ( ! ParseCmdArgs(&Args, argc, argv) )
{
viClose(defaultRM);
return -1;
}
Error Code 4-19
Programming Examples
// Find the instrument
if ( Args.bUSB )
{
// Look on USB for something made by Pendulum with model
// code 0x0091.
// For this sample program we'll just pick the first
// found, if any.
sprintf(Command, "USB?*INSTR{VI_ATTR_MANF_ID==0x14EB &&
VI_ATTR_MODEL_CODE==0x0091}");
}
else // GPIB
sprintf(Command, "GPIB::%d::INSTR", Args.nAddr);
Status = viFindRsrc(defaultRM, Command, &fList, &numInstrs,
Desc);
if (Status != VI_SUCCESS)
{
fprintf(stderr, "Didn't find instrument\n");
viClose(defaultRM);
return(-1);
}
// Open communication with the device.
if (viOpen(defaultRM, Desc, VI_NULL, VI_NULL, &Instr) !=
VI_SUCCESS)
QuitMsg("Couldn't open connection to the instrument\n");
// Set short timeout for message-based communication (1 s)
if (viSetAttribute(Instr, VI_ATTR_TMO_VALUE, 1000) !=
VI_SUCCESS)
QuitMsg("Failed to set timeout\n");
// Clear the instrument
if (viClear(Instr) != VI_SUCCESS)
QuitMsg("Couldn't clear the instrument\n");
// Check IDN.
if (WriteDev("*idn?") != VI_SUCCESS) Quit();
if (ReadDev(Buffer, BUFSIZE, &ReadLength) != VI_SUCCESS)
Quit();
Buffer[ReadLength] = 0; // Null terminate.
printf("%s\n", Buffer);
// Initialize the instrument.
printf("Testing %s with pacing: %g\n", Args.Func,
Args.Pacing);
printf("Press any key to cancel.\n");
fflush(stdout);
if (WriteDev("*cls;*rst") != VI_SUCCESS) Quit();
if (WriteDev("*ese 0;*sre 0") != VI_SUCCESS) Quit();
// Set Meas Func
4-20 Error Code
Programming Examples
sprintf(Command, "CONF:%s", Args.Func);
if (WriteDev(Command) != VI_SUCCESS) Quit();
// Do a measurement to check if all is set up OK.
if (WriteDev("inp:lev:auto off;:inp:lev 0;:form:bord swap")
!= VI_SUCCESS) Quit();
if (WriteDev("form asc;:form:tinf on") != VI_SUCCESS)
Quit();
if (WriteDev("read?") != VI_SUCCESS) Quit();
if (ReadDev(Buffer, BUFSIZE, &ReadLength) != VI_SUCCESS)
Quit();
Buffer[ReadLength] = 0; // Null terminate.
if (sscanf(Buffer, "%lf", &Val) != 1)
QuitMsg("Failed to scan test measurement\n");
if ( CheckMeas(Val, Args) )
{
fprintf(stderr, "Bad result: %s = %g %s\n", Args.Func,
Val, (Args.bPeriod ? "s" : "Hz"));
sprintf(Command, "Connect a %lg Hz signal to A and try
again\n", Args.RefFreq);
QuitMsg(Command);
}
// Set the timeout for message-based communication (10 s)
if (viSetAttribute(Instr, VI_ATTR_TMO_VALUE, 10000) !=
VI_SUCCESS)
QuitMsg("Failed to set timeout\n");
// Set up for "infinite" number of measurements
printf("\n");
sprintf(Command, "trig:coun 1;:arm:coun inf");
if (WriteDev(Command) != VI_SUCCESS) Quit();
// set pacing. note: for freq:btb meas time is actual pacing
if ( Args.bPeriod )
sprintf(Command, "trig:sour tim;:trig:tim %lg",
Args.Pacing);
else
sprintf(Command, "sens:acq:aper %lg", Args.Pacing);
if (WriteDev(Command) != VI_SUCCESS) Quit();
// FORMat PACKed is the recommended format for maximum fetch
// speed and for best timestamp resolution.
sprintf(Command, "form pack;:form:tinf on;:disp:enab off");
if (WriteDev(Command) != VI_SUCCESS) Quit();
PrevTSVal = 0;
Failed = false;
Sleep(500);
// Start the measurement.
if (WriteDev("init") != VI_SUCCESS) Quit();
Error Code 4-21
Programming Examples
// Fetch the measurement results as it goes.
Count = 0;
while (true)
{
CheckUserCancel();
//
//
//
if
if
The 'max' parameter means fetch as many samples as is
currently available for fetching (but no more than
the upper limit, which by default is 10000).
(WriteDev("fetc:arr? max") != VI_SUCCESS) Quit();
(ReadDev(Buffer, BUFSIZE, &ReadLength) != VI_SUCCESS)
Quit();
Buffer[ReadLength] = 0; // Null terminate.
pBuf = Buffer;
// Check for fetc:arr? max 'no data' marker.
char *p = pBuf;
if (*p++ == '#' && *p++ == '1' && *p == '0') {
// There's no data available at the moment. Wait a
// bit with the next fetch attempt in order to avoid
// swamping the instrument with useless operations
// which could actually starve the measurement
// handling in the instrument.
Sleep(20);
continue;
}
// Scan FORMat PACKed header.
if (*pBuf++ != '#') {
printf("Failed to scan packed header start\n");
WriteDev("abort");
Quit();
}
Digits = *pBuf++ - '0';
if (Digits < 1 || Digits > 9) {
printf("Failed to scan packed header size\n");
WriteDev("abort");
Quit();
}
int Size = 0;
for (i=0; i<Digits; i++) {
Size = 10 * Size + (int)(*pBuf++ - '0');
}
// With format packed and format:tinf on each sample is
// a double format measurement value and a 64 bit
// integer timestamp (in ps), for a total of
// 16 bytes / sample.
Samples = Size / 16;
4-22 Error Code
Programming Examples
for (i=0; i<Samples; i++) {
Val = *((double*)pBuf);
pBuf += 8;
if (i == 0 && _isnan(Val)) {
// Invalid value response.
printf("The instrument is apparently no longer
measuring.\n");
Failed = true;
break;
}
TSVal = *((__int64*)pBuf);
pBuf += 8;
//
//
//
//
if
Do something with the fetched result. For this
test just check that the measurement result seems
reasonable and that the timestamps increase as
they should.
(CheckMeas(Val, Args))
printf("Bad result of measurement %lf: %g %s\n",
(double)Count, Val, (Args.bPeriod ? "s" : "Hz"));
// Check that the timestamps keep increasing during
// the test run.
if (TSVal <= PrevTSVal) {
printf("Invalid timestamp, sample %lf, prev =
%lf, Cur = %lf\n",
(double)Count, (double)PrevTSVal * 1e-12,
(double)TSVal * 1e-12);
}
// Check for gaps in the measurement data. This will
// happen if we try to measure faster than we can
// keep up with fetching.
if (Count != 0 &&
fabs((double)(TSVal - PrevTSVal) * 1e-12 Args.Pacing) >
1.5 * Args.Pacing) {
printf("Gap: %lf -> %lf\n",
(double)PrevTSVal * 1e-12,
(double)TSVal * 1e-12);
}
PrevTSVal = TSVal;
Count++;
// Display some progress.
if (Count % 10000 == 0) {
printf("Sample %.0lf, value %.8le, timestamp
%lf\n",
(double)Count, Val, (double)TSVal *
1e-12);
}
Error Code 4-23
Programming Examples
}
if (Failed) {
break;
}
}
ReportAndQuit();
return(0);
}
4-24 Error Code
Chapter 5
Instrument Model
Instrument Model
Introduction
The figure below shows how the instrument functions are categorized. This instrument model is fully compatible with
the SCPI generalized instrument model.
The generalized SCPI instrument model,
contains three major instrument categories as shown in the following table:
Function Instrument
Examples
Type
Signal ac- Sense inVoltmeter,
quisition struments
Oscilloscope,
Counter
Signal
Source in- Pulse generagenerastruments
tor,
tion
Power supply
Signal
Switch inScanner,
routing
struments
(de)-multiplexer
Inputs
An instrument may use a combination of
the above functions. The counters belong
to the signal acquisition category, and
only that category is described in this
manual.
The instrument model in Figure 5-1 defines where elements of the counter language are assigned in the command
hierarchy. The major signal function areas are shown broken into blocks. Each
of these blocks are major command
sub-trees in the counter command language.
The instrument model also shows how
measurement data and applied signals
flow through the instrument. The model
does not include the administrative data
flow associated with queries, commands,
performing calibrations etc.
Channels
1
A
DISPlay
2
B
3
C
4
E
Measurement Function
FORMat
OUTPut
TRIGger
Figure 5-1
Model '9X' instrument model.
5-2 Introduction
MEMory
GPIB
Instrument Model
Measurement
Function Block
The measurement function block converts
the input signals into an internal data format that is available for formatting into
GPIB bus data. The measurement function is divided into three different blocks:
INPut, SENSe and CALCulate. See
Figure 5-2.
n INPut
The INPut block performs all the signal
conditioning of the input signal before it
is converted into data by the SENSe
block. The INPut block includes coupling, impedance, filtering etc.
A
INPut1
B
INPut2
The SENSe block converts the signals
into internal data that can be processed by
the CALCulate block. The SENSe commands control various characteristics of
the measurement and acquisition process.
These include: gate time, measurement
function, resolution, etc.
n CALCulate
The CALCulate block performs all the
necessary calculations to get the required
data. These calculations include: calibration, statistics, mathematics, etc.
1
DISPlay
2
3
C
E
n SENSe
4
INPut4
SENSe
÷2
10MHz
clock
CALCulate
GPIB
5
6
OUTPut
7
TRIGger
Figure 5-2
FORMat
MEMory
Model '9X' measurement model.
Measurement Function Block 5-3
Instrument Model
Other Subsystems
In addition to the major functions (subsystems), there are several other subsystems in the instrument model.
The different blocks have the following
functions.
n CALibration
This subsystem controls the calibration of
the interpolators used to increase the resolution of the counter.
n DISPlay
n SYSTem
This subsystem controls some system parameters like timeout.
n TEST
This subsystem tests the hardware and
software of the counter and reports errors.
n TRIGger
The trigger block provides the counter
with synchronization capability with external events. Commands in this block
control the trigger and arming functions
of the Timer/ Counter.
Commands in this subsystem control
what data is to be present on the display
and whether the display is on or off.
n FORMat
The FORMat block converts the internal
data representation to the data transferred
over the external GPIB interface. Commands in this block control the data type
to be sent over the external interface.
n MEMory
The MEMory block holds macro and instrument state data inside the counter.
n STATus
This subsystem can be used to get information about what is happening in the instrument at the moment.
n Synchronization
This subsystem can be used to synchronize the measurements with the controller.
5-4 Other Subsystems
Order of Execution
– All commands in the counters are sequential, i.e., they are executed in the same order as they are received.
– If a new measurement command is received when a measurement is already in
progress, the measurement in progress will
be aborted unless XWAI is used before the
command.
Instrument Model
the instrument you are using. See Figure
5-3.
MEASurement
Function
n MEASure?
In addition to the subsystems of the instrument model, which control the instrument functions, SCPI has signal-oriented
functions to obtain measurement results.
This group of MEASure functions has a
different level of compatibility and flexibility. The parameters used with commands from the MEASure group describe
the signal you are going to measure. This
means that the MEASure functions give
compatibility between instruments, since
you don’t need to know anything about
A
INPut1
B
INPut2
n CONFigure; READ?
The CONFigure command makes the
counter choose an optimal setting for the
specified measurement. CONFigure
may cause any device setting to change.
1
DISPlay
2
3
C
E
This is the most simple command to use,
but it does not offer much flexibility. The
MEASure? query lets the counter configure itself for an optimal measurement,
start the data acquisition, and return the
result.
4
INPut4
GPIB
CALCulate
SENSe
÷2
10MHz
clock
FORMat
FETch?
5
6
OUTPut
7
TRIGger
MEMory
READ?
CONFigure
MEASure?
Figure 5-3
Model '9X' measurement function.
MEASurement Function 5-5
Instrument Model
READ? starts the acquisition and returns
the result.
This sequence does the same as the MEASure command, but now it is possible to
insert commands between CONFigure
and READ? to adjust the setting of a particular function (called fine tuning). For
instance, you can set an input attenuator
at a required value.
n CONFigure; INITiate;FETCh?
The READ? command can be divided
into the INITiate command, which starts
the measurement, and the FETCh? command, which requests the instrument to
return the measuring results to the controller.
Versatility of Measurement
Commands
MEASure?
Simple to use; few
additional possibilities.
CONFigure
READ?
Somewhat more
difficult; some extra
possibilities.
CONFigure
INITiate
FETCh?
Most difficult to
use; many extra
features.
5-6 MEASurement Function
Chapter 6
Using the
Subsystems
Using the Subsystems
Introduction
Although SCPI is intended to be self explanatory, we feel that some hints and
tips on how to use the different subsystems may be useful. This chapter does not
explain each and every command, but
only those for which we believe extra explanations are necessary.
6-2 Introduction
Using the Subsystems
Calculate Subsystem
The calculate subsystem processes the
measuring results. Here you can recalculate the result using mathematics, make
statistics and set upper and lower limits
for the measurement result. The counter
itself monitors the result and alerts you
when the limits are exceeded.
n Mathematics
The mathematical functions are the same
as on the front panel.
n Statistics
The '9X' can calculate and display the
MIN, MAX, MEAN and standard deviation of a given number of samples. The
statistical functions are the same as on the
front panel.
n Limit Monitoring
Limit monitoring makes it is possible to
get a service request when the measurement value falls below a lower limit or
rises above an upper limit. Two status
bits are defined to support limit monitoring. One is set when the results are
greater than the UPPer limit, the other is
set when the result is less than the
LOWer limit. The bits are enabled using
the standard *SRE command and
:STAT:DREG0:ENAB. Using both these
bits, it is possible to get a service request
when a value passes out of a band (
UPPer is set at the upper band border and
LOWer at the lower border) OR when a
measurement value enters a band
(LOWer set at the upper band border and
UPPer set at the lower border).
Turning the limit monitoring calculations
on/off will not influence the status register mask bits which determine whether or
not a service request will be generated
when a limit is reached. Note that the calculate subsystem is automatically enabled
when limit monitoring is switched on.
This means that other enabled calculate
sub-blocks are indirectly switched on.
Calculate Subsystem 6-3
Using the Subsystems
Configure Function
The CONFigure command sets up the
counter to make the same measurements
as the MEASure query, but without initiating the measurement and fetching the
result. Use configure when you want to
change any parameters before making the
measurement.
Read more about Configure under MEASure.
6-4 Configure Function
Using the Subsystems
Format Subsystem
Time Stamp
Readout Format
When :FORMat:TINFormation is set to
ON, the readout will consist of two values instead of one for :FETCh:SCALar?,
:READ:SCALar? and :MEASure:SCALar?.
An overview of the different output formats can be gained by studying
Chapter 8, Command Reference.
See the following subdivisions with page
references:
P. 8-33 ff. — Fetch Function
P. 8-37 ff. — Format Subsystem
P. 8-73
— Measurement Function
The first will be the measured value, expressed in the basic unit of the measurement function, and the next one will be
the timestamp value in seconds.
In :FORMat ASCii mode, the result will
be given as a floating-point number, followed by a floating point timestamp
value.
In :FORMat REAL mode, the result will
be given as an eight-byte block containing the floating-point measured value,
followed by an eight-byte block containing the floating-point timestamp value.
When doing readouts in array form, with
:FETCh :ARRay?, :READ :ARRay? or
:MEASure :ARRay?, the response will
consist of alternating measurement values
and timestamp values, formatted in a similar way as for scalar readout. All values
will be separated by commas.
Format Subsystem 6-5
Using the Subsystems
Input Subsystems
Figure 6-1
Summary of Model ‘9X’ input amplifier settings.
6-6 Input Subsystems
Using the Subsystems
Measurement Function
The Measure function group has a different level of compatibility and flexibility
than other commands. The parameters
used with commands from the Measure
group describe the signal you are going to
measure. This means that the Measure
functions give compatibility between instruments, since you don’t need to know
anything about the instrument you are using.
MEASure?
This is the most simple query to use, but
it does not offer much flexibility. The
MEASure? query lets the instrument configure itself for an optimal measurement,
starts the data acquisition, and returns the
result.
n Example:
SEND® MEASure:FREQ?
This will execute a frequency measurement
and the result will be sent to the controller.
The instrument will select a setting for this
purpose by itself, and will carry out the required measurement as “well” as possible;
moreover, it will automatically start the
measurement and send the result to the
controller.
You may add parameters to give more
details about the signal you are going to
measure, for example:
SEND® MEASure:FREQ?8208MHz,1
Where: 20 MHz is the expected value,
which can, of course, also be sent as
20E6, and 1 is the required resolution.
(1 Hz)
Also the channel numbers can be specified, for example:
SEND® MEASure:FREQ?8(@3)
SEND® MEASure:FREQ?820E6,
1,(@1)
CONFigure; READ?
The CONFigure command causes the instrument to choose an optimal setting for
the specified measurement. CONFigure
may cause any device setting to change.
READ? starts the acquisition and returns
the result.
This sequence operates in the same way
as the MEASure command, but now it is
possible to insert commands between
CONFigure and READ? to fine-tune the
setting of a particular function. For example, you can change the input impedance
from 1 MW to 50 W.
Measurement Function 6-7
Using the Subsystems
n Example:
SEND® CONFigure:FREQ82E6,1
2E6 is the expected value
1 is the required resolution (1Hz)
20E6 is the expected signal value
1 is the required resolution
SEND® INPut:IMPedance81E6
Sets input impedance to 1 MW
SEND® INPut:IMPedance850
SEND® INITiate
Sets input impedance to 50 W
Starts measurement
SEND® READ?
SEND® FETCh?
Starts the measurement and returns the
result.
Fetches the result
CONFigure;INITiate;FETCh?
The READ? command can be divided
into the INITiate command, which starts
the measurement, and the FETCh? command, which requests the instrument to
return the measuring results to the controller.
n Example:
SEND® CONFigure:FREQ820E6,1
6-8 Measurement Function
Versatility of measurement commands
MEASure?
CONFigure
READ?
CONFigure
INITiate
FETCh?
Simple to use, few additional possibilities.
Somewhat more difficult,
but some extra possibilities.
Most difficult to use, but
many extra features.
Using the Subsystems
Sense Command
Subsystems
Depending on application, you can select
different input channels and input characteristics.
n Switchbox
In automatic test systems, it is difficult to
swap BNC cables when you need to measure on several measuring points. With
the '9X' you can select from two different
basic inputs (A and B), on which the
counter can measure directly without the
need for external switching devices.
n Prescaling
For all measuring functions except time
interval, rise/fall time, phase and time
stamping, the maximum input A or B frequency is 300 MHz.
For the measuring functions explicitly
mentioned above, the counter has a max
repetition rate of 160 MHz.
For the measuring functions Frequency
and Period Average, the signal to Input A
or Input B is prescaled by a factor of 2.
For Frequency in Burst, PRF and Number of Cycles in Burst, the signal is
prescaled by a factor of 2 if the command
:SENSe:FREQuency:BURSt:PREScaler is
set to ON. This is also the default condition.
Sense Command Subsystems 6-9
Using the Subsystems
Status Subsystem
Introduction
Status reporting is a method to let the
controller know what the counter is doing. You can ask the counter what status
it is in whenever you want to know.
You can select some conditions in the
counter that should be reported in the Status Byte Register. You can also select if
some bits in the Status Byte should generate a Service Request (SRQ).
(An SRQ is the instrument’s way to call
the controller for help.)
Status Reporting Model
n The Status Structure
The status reporting model used is standardized in IEEE 488.2 and SCPI, so
you will find similar status reporting in
most modern instruments. Figure 6-6
shows an overview of the complete status
register structure. It has four registers,
two queues, and a status byte:
– The Standard Event Register reports the
standardized IEEE 488.2 errors and conditions.
– The Operation Status Register reports the
status of the measurement cycle (see also
ARM-TRIG model, page 6-23).
6-10 Status Subsystem
– The Questionable Data Register reports
when the output data from the counter may
not be trusted.
– The Device Register 0 reports when the
measuring result has exceeded preprogrammed limits.
– The Output Queue status reports if there
is output data to be fetched.
– The Error Queue status reports if there
are error messages available in the error
queue.
– The Status Byte contains eight bits. Each
bit shows if there is information to be
fetched in the above described registers
and queues of the status structure.
Using the Registers
Each status register monitors several conditions at once. If something happens to
any one of the monitored conditions, a
summary bit is set true in the Status Byte
Register.
Enable registers are available so that you
can select what conditions should be reported in the status byte, and what bits in
the status byte should cause SRQ.
+
A register bit is TRUE, i.e., something has happened, when it is
set to 1. It is FALSE when set to
0.
Using the Subsystems
Note that all event registers and the status
byte record positive events. That is when
a condition changes from inactive to active, the bit in the event register is set
true. When the condition changes from
active to inactive, the event register bits
are not affected at all.
Example:
When you read the contents of a register,
the counter answers with the decimal sum
of the bits in the register.
– Bit 5 is true showing that a command error
The counter answers 40 when you ask for
the contents of the Standard Event Status
Register.
– Convert this to binary form. It will give
you 101000.
has occurred.
Questionable Data Register
Standard Event Register
Condition Register
Enable Register
Logical OR
Error Queue
Event Register
Output Queue
Event Register
Enable Register
Logical OR
Device Register 0
Operation Status Register
Condition Register
Event Register
Event Register
Enable Register
Enable Register
Logical OR
Logical OR
7 6 5 4 3 2 1 0
Status Byte Register
Service Request Enable
Logical OR
SRQ message
Figure 6-2
Model ‘9X’ status register structure.
Status Subsystem 6-11
Using the Subsystems
– Bit 3 is also true, showing that a device
– You set all bits true in 8-bit registers by
dependent error has occurred.
Use the same technique when you program the enable registers.
– Select which bits should be true.
– Convert the binary expression to decimal
data.
– Send the decimal data to the instrument.
Clearing/Setting all bits
– You can clear an enable register by pro-
n Using the Queues
The two queues, where the counter stores
output data and error messages, may contain data or be empty. Both these queues
have their own status bit in the Status
Byte. If this bit is true there is data to be
fetched.
When the controller reads data, it will
also remove the data from the queue. The
queue status bit in the status byte will remain true for as long as the queue holds
O
PR
R =
M QS Ope
SS
= rat
ES = MRe ion
B as que Sta
= te st
Ev r S s tus
M
AV
en umSe Bi
t S m rvi t
=
ta ar ce
Q M
tu y
U es
E s
s St
Bi at
= ag
t us
Q e
EA
u
A
es v
V
=
tio ail
N
na ab
ot Erro
b l le
us r
e in
ed Av
Da o
D
a
ila
ta utp
R
EG
ut
bl
e
qu
0
in
=
eu
th
D
e
e
ev
er
ic
ro
e
rq
R
eg
ue
is
ue
te
r0
gramming it to zero. You can set all bits
true in a 16-bit event enable register by
programming it to 32767 (bit 16 not used).
programming them to 255 (Service Request Enable and Standard Event Enable.)
Service
Request
Generation
SRQ
signal
RQS
OPR
6 ESB MAV QUE EAV 1
128 MSS 32
16
8
4
2
Service Request Enable
Logical OR
Figure 6-3
DREG0
The status byte bits.
6-12 Status Subsystem
1
Status Byte
Register
Using the Subsystems
one or more data bytes. When the queue
is empty, the queue status bit is set false.
Status of the Output Queue (MAV)
The MAV (message available) queue status message appears in bit 4 of the status
byte register. It indicates if there are bytes
ready to be read over the GPIB in the
GPIB output queue of the instrument.
The output queue is where the formatted
data appears before it is transferred to the
controller.
The controller reads this queue by addressing the instrument as a talker. The
command to do this differs between different programming languages. Examples
are IOENTERS and IBREAD.
Status of the Error Message Queue
(EAV)
The EAV (error message available)
queue status message appears in bit 2 of
the status byte register. Use the
:SYSTem:ERRor? query to read the error messages. Chapter 7 explains all possible error messages .
n Using the Status Byte
The status byte is an eight bit status message. It is sent to the controller as a response to a serial poll or a *STB? query,
see Figure 6-3. Each bit in the status byte
contains a summary message from the
status structure. You can select what bits
in the status byte should generate a service request to alert the controller.
When a service request occurs, the
SRQ-line of the GPIB will be activated.
Whether or not the controller will react
on the service request depends on the
controller program. The controller may
be interrupted on occurrence of a service
request, it may regularly test the
SRQ-line, it may regularly make serial
poll or *STB?, or the controller may not
react at all. The preferred method is to
use SRQ because it presents a minimum
of disturbance to the measurement process.
Selecting Summary Message to Generate SRQ
The counter does not generate any SRQ
by default. You must first select which
summary message(s) from the status byte
register should give SRQ. You do that
with the Service Request Enable command *SRE <bit mask>.
Example:
*SRE816
This sets bit 4 (16=24) in the service request
enable register (see Figure 6-4). This
makes the instrument signal SRQ
when a message is available in the
output queue.
RQS/MSS
The original status byte of IEEE 488.1 is
sent as a response to a serial poll, and bit
6 means requested service, RQS.
IEEE 488.2 added the *STB? query and
expanded the status byte with a slightly
different bit 6, the MSS. This bit is true
as long as there is unfetched data in any
of the status event registers.
– The Requested Service bit, RQS, is set true
when a service request has been signalled.
If you read the status byte via a Serial Poll,
bit 6 represents RQS. Reading the status
byte with a serial poll will set the RQS bit
false, showing that the status byte has been
read.
– The Master Summary Status bit, MSS, is
set true if any of the bits that generates
Status Subsystem 6-13
Using the Subsystems
SRQ is true. If you read the status byte using *STB?, bit 6 represents MSS. MSS remains true until all event registers are
cleared and all queues are empty.
Setting up the Counter to
Report Status
Include the following steps in your program when you want to use the status reporting feature.
– *CLS Clears all event registers and the error queue
Using the Serial Poll (IEEE-488.1 defined).
– Response:
– Bit 6: RQS message, shows that the
counter has requested service via the
SRQ signal.
– Other bits show their summary mes-
sages
– A serial poll sets the RQS bit
FALSE, but does not change other
bits.
– *ESE <bit mask> Selects what conditions in the Standard Event Status register
should be reported in bit 5 of the status
byte
Using the Common Query *STB?
– Response:
– :STATus:OPERation:ENABle <bit
– Bit 6: MSS message, shows that
mask> Selects which conditions in the
Operation Status register should be reported in bit 7 of the status byte
– :STATus:QUEStionable:ENABle
<bit mask> Selects which conditions in
the Questionable Status register should be
reported in bit 3 of the status byte
there is a reason for service request.
– Other bits show their summary mes-
sages.
– Reading the response will not alter
the status byte.
– :STATus:DREGister0:ENABle
<bit mask> Selects which conditions
in Device Register 0 should be reported in
bit 0 of the status byte
– *SRE <bit mask> Selects which bits
in the status byte should cause a Service
Request
A programming example using status reporting is available in Chapter 7.
Reading and Clearing Status
n Status Byte
As explained earlier, you can read the
status byte register in two ways:
6-14 Status Subsystem
n Status Event Registers
You read the Status Event registers with
the following queries:
– *ESR? Reads the Standard Event Status
register
– :STATus:OPERation?
Reads the
Operation Status Event register
– :STATus:QUEStionable? Reads the
Questionable Status Event register
– :STATus:DREGister0? Reads the
Device Event register
When you read these registers, you will
clear the register you read and the summary message bit in the status byte.
Using the Subsystems
You can also clear all event registers with
the *CLS (Clear Status) command.
n Status Condition Registers
Two of the status register structures also
have condition registers: The Status Operation and the Status Questionable register.
The condition registers differ from the
event registers in that they are not
latched. That is, if a condition in the
counter goes on and then off, the condition register indicates true while the condition is on and false when the condition
goes off. The Event register that monitors
the same condition continues to indicate
true until you read the register.
– :STATus:OPERation:CONDition?
Reads the Operation Status Condition register
– :STATus:QUEStionable:CONDition? Reads the Questionable Status
Condition register
Reading the condition register will not affect the contents of the register.
Why Two Types of Registers?
Let’s say that the counter measures continuously and you want to monitor the
measurement cycle by reading the Operation Status register.
Reading the Event Register will always
show that a measurement has started, that
waiting for triggering and bus arming has
occurred and that the measurement is
stopped. This information is not very useful.
Reading the Condition Register on the
other hand gives only the status of the
measurement cycle, for instance “Measurement stopped”.
+
Although it is possible to read the
condition registers directly, we
recommend that you use SRQ
when monitoring the measurement cycle. The measurement
cycle is disturbed when you read
condition registers.
n Summary:
The way to work when writing your bus
program is as follows:
Set up
– Set up the enable registers so that the
events you are interested in are summarized in the status byte.
– Set up the enable masks so that the conditions you want to be alerted about generate
SRQ. It is good practice to generate SRQ
on the EAV bit. So, enable the EAV-bit via
*SRE.
Check & Action
– Check if an SRQ has been received.
– Make a serial poll of the instruments
on the bus until you find the instrument that issued the SRQ (the instrument that has RQS bit true in the Status Byte).
– When you find it, check which bits
in the Status Byte Register are true.
– Let’s say that bit 7, OPR, is true.
Then read the contents of the Operation Status Register. In this register
you can see what caused the SRQ.
– Take appropriate actions depending
on the reason for the SRQ.
Status Subsystem 6-15
Using the Subsystems
Standard Status Registers
These registers are called the standard
status data structure because they are
mandatory in all instruments that fulfill
the IEEE 488.2 standard.
example, to call for the attention of the
controller by generating a service request.
n Standard Event Status Register
Bit 7 (weight 128) — Power-on (PON)
Shows that the counter’s power supply has
been turned off and on (since the last time
the controller read or cleared this register).
Figure 6-5
Bits in the standard event
status register
Bit 6 (weight 64)—User Request (URQ)
Shows that the user has pressed a key on
the front panel. The URQ bit will be set
regardless of the remote local state of the
counter. The purpose of this signal is, for
Standard Event
Status Register
* ESR?
PON URQ CME EXE DDE QYE RQC OPC
7 6 5 4 3 2 1 0
* ESE <NRf > Standard Event Status Enable
* ESE?
Output
Queue
Logical OR
Output Queue not empty
Service
Request
Generation
SRQ
signal
Status Byte
Register
RQS
7 6 ESB MAV 3 2 1 0
MSS
Service Request Enable
<. . . r ead by * STB?
* SRE <NRf >
* SRE?
Logical OR
Figure 6-4
Standard status data structures, overview.
6-16 Status Subsystem
Using the Subsystems
Bit 5 (weight 32) — Command Error
(CME)
has completed all previously started actions.
Shows that the instrument has detected a
command error. This means that it has received data that violates the syntax rules
for program messages.
n Summary, Standard Event
Bit 4 (weight 16) — Execution Error
(EXE)
Enable reporting of Standard Event Status in the status byte.
Shows that the counter detected an error
while trying to execute a command. (See
‘Error reporting’ on page 3-17.) The
command is syntactically correct, but the
counter cannot execute it, for example
because a parameter is out of range.
Bit 3 (weight 8) — Device-dependent
Error (DDE)
Status Reporting
*ESE <bit mask>
*SRE 32
Enable SRQ when the Standard Event
structure has something to report.
ESR?
Reading and clearing the event register of
the Standard Event structure.
A device-dependent error is any device
operation that did not execute properly
because of some internal condition, for
instance error queue overflow. This bit
shows that the error was not a command,
query or execution error.
Bit 2 (weight 4) — Query Error (QYE)
The output queue control detects query errors. For example the QYE bit shows the
unterminated, interrupted, and deadlock
conditions. For more details, see ‘Error reporting’ on page 3-17.
Bit 1 (weight 2)—Request Control (RQC)
Shows the controller that the device
wants to become the active controller-in-charge. Not used in this counter.
Bit 0 (weight 1) — Operation Complete
(OPC)
The counter only sets this bit TRUE in
response to the operation complete command (*OPC). It shows that the counter
Status Subsystem 6-17
Using the Subsystems
SCPI-defined Status
Registers
The counter has two 16-bit SCPI-defined
status structures: The operation status
register and the questionable data register. These are 16 bits wide, while the status byte and the standard status groups
are 8 bits wide.
Questionable Data Register
Standard Event Register
Condition Register
Event Register
Enable Register
Logical OR
Error Queue
Output Queue
Event Register
Operation Status Register
Enable Register
Logical OR
Device Register 0
Condition Register
Event Register
Event Register
Enable Register
Enable Register
Logical OR
Logical OR
7 6 5 4 3 2 1 0
Status Byte Register
Service Request Enable
Logical OR
SRQ signal
Figure 6-6
Status structure 7, Operation Status Group, and Status structure 3,
Questionable Data Group are SCPI defined.
6-18 Status Subsystem
Using the Subsystems
n Operation Status Group
This group reports the status of the counter measurement cycle.
Operation Status Group
15
Reporting
WFA WFT MST
6 5 4
8
256
64
32
This bit shows that the counter is measuring. It is set when the measurement or sequence of measurements starts.
n Summary, Operation Status
STATus: OPERat i on: CONDi t i on?
STATus: OPERat i on: EVENt ?
MSP
Bit 4 (weight 16) — Measurement
Started (MST)
0
16
Measurement stopped
Waiting for arming
Waiting for triggering
Measurement started
:STAT:OPER:ENAB
Enable reporting of Operation Status in
the status byte.
*SRE 128
Enable SRQ when operation status has
someting to report.
:STAT:OPER?
Figure 6-7
Bits in the Opeation Status Register.
Reading and clearing the event register of
the Operation Status Register structure
:STAT:OPER:COND?
Bit 8 (weight 256) — Measurement
Stopped (MSP)
Reading the condition register of the Operation Status Register structure.
This bit shows that the counter is not measuring. It is set when the measurement, or
sequence of measurements, stops.
Bit 6 (weight 64) — Wait for Bus Arming (WFA)
This bit shows that the counter is waiting
for bus arming in the arm state of the trigger model.
Bit 5 (weight 32) — Waiting for Trigger
and/or External Arming (WFT)
This bit shows when the counter is ready
to start a new measurement via the trigger
control option (488.2), for the shortest
possible trigger delay. The counter is now
in the wait for the trigger state of the trigger model.
Status Subsystem 6-19
Using the Subsystems
Questionable Data/Signal
Status Group
Bit 10 (weight 1024) — Timeout for
Measurement (TIO)
This group reports when the output data
from the counter may not be trusted.
The counter sets this bit true when it
abandons the measurement because the
internal timeout has elapsed, or no signal
has been detected.
See
also
:SYST:TOUT
and
:SYST:SDET.
Questionable Data/Signal Status
Group STAT: QUESt : COND?
Bit 8 (weight 256) Overflow (OFL)
STAT: QUES?
UEP
TIO
OFL
1514 10
16384
Unexpected
parameter
8
1024
0
256
Overflow
Time out for measurement
The counter sets this bit true when it cannot complete the measurement due to
overflow.
n Summary, Questionable
Data/Signal Status Reporting
:STAT:QUES:ENAB <bit mask>
Figure 6-8
Bits in Questionable data
register.
Enable reporting of Questionable
data/signal status in the status byte.
*SRE 8
Bit 14 (weight 16384) — Unexpected
Parameter (UEP)
Enable SRQ when data/signal is questionable.
This bit shows that the counter has received a parameter that it cannot execute,
although the parameter is valid according
to SCPI. This means that when this bit is
true, the instrument has not performed a
measurement exactly as requested.
:STAT:QUES?
Reading and clearing the event register of
the Questionable data/signal Register
structure.
:STAT:QUES:COND?
Reading the condition register of Questionable data/signal Register structure.
6-20 Status Subsystem
Using the Subsystems
Device-defined Status Structure
The counter has one device-defined status
structure called the Device Register 0. It
summarizes this structure in bit 0 of the
status byte. Its purpose is to report when
the measuring result has exceeded preprogrammed limits.
Questionable Data Register
Standard Event Register
Condition Register
Event Register
Enable Register
Logical OR
Error Queue
Output Queue
Event Register
Enable Register
Logical OR
Device Register 0
Operation Status Register
Condition Register
Event Register
Event Register
Enable Register
Enable Register
Logical OR
Logical OR
7 6 5 4 3 2 1 0
Status Byte Register
Service Request Enable
Logical OR
SRQ signal
Figure 6-9
Device-defined status data structures ( model ).
Status Subsystem 6-21
Using the Subsystems
You set the limits with the following
commands in the calculate subsystem.
:CALCulate:LIMit:UPPer and
:CALCulate:LIMit:LOWer
Device Status Register 0
STAT:DREG0:COND?
STAT:DREG0?
2
1
4
0
2
Monitoring of low limit
Monitoring of high limit
Figure 6-10
Enable SRQ when a limit is exceeded.
:STAT:DREG0?
Reading and clearing the event register of
Device Register structure 0.
Bit Definition
15
*SRE 1
Bits in the Device Status
Register number 0.
:STATus:DREGister0?
Reads out the contents of
the Device Status event
Register 0 and clears the
register.
Bit 2 (weight 4) — Monitor of Low Limit
This bit is set when the low limit is
passed from above.
Bit 1 (weight 2) — Monitor of High Limit
This bit is set when the high limit is
passed from below.
n Summary, Device-defined
Status Reporting
:STAT:DREG0:ENAB <bit mask>
Enable reporting of device-defined status
in the status byte.
6-22 Status Subsystem
– If bit 1 is true, the high limit has been exceeded.
– If bit 2 is true, the low limit has been exceeded.
Power-on Status Clear
Power-on clears all event enable registers
and the service request enable register if
the power-on status clear flag is set
TRUE (see the common command
*PSC.)
n Preset the Status Reporting
Structure
You can preset the complete status structure to a known state with a single command, the STATus:PRESet command,
which does the following:
– Disables all bits in the Standard Event
Register, the Operation Status Register, and
the Questionable Data Register
– Enables all bits in Device Register 0
– Leaves the Service Request Enable Register unaffected.
Using the Subsystems
Trigger/Arming Subsystem
The SCPI TRIGger subsystem enables synchronization of instrument actions with
specified internal or external events. The
following list gives some examples.
Instrument Action
Some examples of events to synchronize
with are as follows:
–
–
–
–
measurement
–
–
–
–
–
–
other instrument ready
bus trigger
external signal level or pulse
10 occurrences of a pulse on the external
trigger input
The ARM-TRIG Trigger
Configuration
gives a typical trigger configuration, the
ARM-TRIG model. The configuration
contains two event-detection layers: the
‘Wait for ARM’ and ‘Wait for TRIG’
states.
ABORt
Default state
*RST
after power-on
or reset
pon
Initiated
Trigger system
initiated
Still initiated
Completed No.
of ARM loops
Wait for ARM
Arm Layer
1 second after input signal is present
ARM conditions
satisfied
sourcing output signal
switching system ready
No longer
initiated
Trigger system initiated
signal switching
input signal present
Idle
Trigger Layer
Completed
No. of TRIGger
loops
Wait for TRIG
TRIGger conditions
satisfied
Instrument
Actions
complete
Instrument
Actions
Figure 6-11
Generalized ARM-TRIG
model.
Trigger/Arming Subsystem 6-23
Using the Subsystems
This trigger configuration is sufficient for
most instruments. More complex instruments, such as the '9X', have more ARM
layers.
IDLE
state
*RST
ABORt
pon
INIT[:IMM] or
INIT:CONT ON?
The ‘Wait for TRIG’ event-detection
layer is always the last to be crossed before instrument actions can take place.
Yes
No
The trigger system will exit from the
IDLE state when the instrument receives
an INITiate:IMMediate. The instrument will pass directly through the
INITIATED state downward to the next
event-detection layers (if the instrument
contains any more layers).
The trigger system will return to the INITIATED state when all events required
by the detection layers have occurred and
the instrument has made the intended
measurement. When you program the
trigger system to INITiate:CONTinuous ON, the instrument will directly
exit the INITIATED state moving downward and will repeat the whole flow described
above.
When
INITiate:CONTinuous is OFF,
the trigger system will return to the IDLE
state.
INITIATED
state
INIT[:IMM] or
INIT:CONT ON?
Structure of the IDLE and
INITIATED States
When you turn on the power or send
*RST or :ABORT to the instrument, it
sets the trigger system in the IDLE state;
see Figure 6-12.
No
Yes
Figure 6-12
Flow diagram of IDLE
and INITIADED layers.
n Structure of an Event-detection
Layer
The
general
structure
of
all
event-detection layers is identical and is
roughly depicted by the flow diagram in .
In each layer there are several programmable conditions, which must be satisfied
to pass by the layer in a downward direction:
n Forward Traversing an
Event-detection Layer
After initiating the loop counters, the instrument waits for the event to be detected. You can select the event to be
detected by using the <layer>:SOURce
command. For example:
:ARM:LAYer2:SOURce BUS
You can specify a more precise characteristic of the event to occur. For example:
:ARM:LAYer:DELay 0.1
You may program a certain delay between the occurrence of the event and entering into the next layer (or starting the
device actions when in the TRIGger
6-24 Trigger/Arming Subsystem
Using the Subsystems
layer). This delay can be programmed by
using the <layer>:DELay command.
n Backward Traversing an
Event-detection Layer
The number of times a layer event has to
initiate a device action can be programmed by using the <layer>:COUNt
command. For example:
:TRIGger:COUNt 3 causes the instrument to measure three times, each
measurement being triggered by the specified events.
Triggering
n *TRG Trigger Command
The trigger command has the same function as the Group Execute Trigger command GET, defined by IEEE 488.1.
When to use *TRG and GET
The *TRG and the GET commands have
the same effect on the instrument. If the
Counter is in idle, i.e., not parsing or executing any commands, GET will execute
much faster than *TRG since the instrument must always parse *TRG.
Trigger/Arming Subsystem 6-25
Using the Subsystems
Select
Source
IMMediate
Arming Start
Layer 2
(bus trig)
Event
detection
<layer>
:SOURce
BUS
<layer>:IMMediate
Event detection layer
<layer>:COUNt
Layer loop
counter = 0
Yes
No
Completed
No. of layer
loop counts?
Select
Source
Select
Characteristics
EXTernal4
IM M e d ia te
<layer>
:SOURce
:SLOPe
Event
detection
<layer>:DELay
Wait :DELay
Arming Start
Layer 1
(External control)
Increment
layer-loop
counter by 1
Event detection layer
<layer>:COUNt
Layer loop
counter = 0
No
Select
Source
IMMediate
<layer>
:SOURce
Yes
Completed
No. of layer
loop counts?
Event
detection
Increment
layer-loop
counter by 1
Event detection layer
Figure 6-13
Structure of event detection layers.
6-26 Trigger/Arming Subsystem
Trigger Start
Layer 1
(Number of
measurements
on each arm)
Chapter 7
Error Messages
Error Messages
Read the Error/Event Queue
empty, and the
query will return:
:SYSTem:ERRor?
You read the error queue with the :SYS0, “No error”
Tem:ERRor? query.
Example:
SEND® :SYSTem:ERRor?
READ¬ –100, “Command Error”
When errors occur and you do not read
these errors, the Error Queue may overflow. Then the instrument will overwrite
the last error in the queue with:
The query returns the error number fol–350, “Queue overflow”
lowed by the error description.
If more errors occur they will be disIf more than one error occurred, the query
carded.
will return the error that occurred first.
Read more about how to use erWhen you read an error, you will also reror reporting in the Introduction to
move it from the queue. You can read the
SCPI chapter
next error by repeating the query. When
you have read all errors, the queue is
+
Command Errors
Error
Number
0
–100
–101
–102
–103
–104
Error Description
Description/Explanation/Examples
No error
Command error
This is the generic syntax error for devices that cannot detect more specific errors. This code indicates
only that a Command Error defined in IEEE-488.2,
11.5.1.1.4 has occurred.
Invalid character
A syntactic element contains a character which is invalid for that type; for example, a header containing
an ampersand, SETUP&. This error might be used
in place of errors –114, –121, –141, and perhaps
some others.
Syntax error
An unrecognized command or data type was encounSyntax error; unrec- tered; for example, a string was received when the
counter does not accept strings.
ognized data
Invalid separator
The parser was expecting a separator and encountered an illegal character; for example, the semicolon was omitted after a program message unit,
*EMC1:CH1:VOLTS5.
Data type error
The parser recognized a data element different than
one allowed; for example, numeric or string data
was expected but block data was encountered.
7-2 Error Code 0 to -104
Error Messages
Command Errors
Error
Number
Error Description
Description/Explanation/Examples
–105
GET not allowed
–108
Parameter not allowed
–109
Missing parameter
–110
Command header
error
–111
Header separator
error
–112
Program mnemonic
too long
Undefined header
A Group Execute Trigger was received within a program message (see IEEE-488.2, 7.7).
More parameters were received than expected for
the header; for example, the *EMC common command accepts only one parameter, so receiving
*EMC0,,1 is not allowed.
Fewer parameters were received than required for
the header; for example, the *EMC common command requires one parameter, so receiving *EMC is
not allowed.
An error was detected in the header. This error
message is used when the counter cannot detect
the more specific errors described for errors –111
though –119.
A character that is not a legal header separator was
encountered while parsing the header; for example,
no space followed the header, thus *GMC"MACRO"
is an error.
The header contains more than 12 characters (see
IEEE-488.2, 7.6.1.4.1).
The header is syntactically correct, but it is undefined for this specific counter; for example, *XYZ is
not defined for any device.
Indicates that a non-header character has been encountered in what the parser expects is a header element.
This error, as well as errors –121 through –129, are
generated when parsing a data element that appears to be of a numeric type. This particular error
message is used when the counter cannot detect a
more specific error.
–113
–114
Header suffix out of
range
–120
Numeric data error
Numeric data error;
overflow from conversion
Numeric data error;
underflow from conversion
Numeric data error;
not a number from
conversion
Invalid character in An invalid character for the data type being parsed
number
was encountered; for example, an alpha in a decimal numeric or a “0" in octal data.
–121
Error Code -105 to -121 7-3
Error Messages
Command Errors
Error
Number
–123
–124
–128
–130
–131
–134
–138
–140
–141
–144
–148
–150
–151
Error Description
Exponent too large
Description/Explanation/Examples
The magnitude of the exponent was larger than
32000 (see IEEE-488.2, 7.7.2.4.1).
Too many digits
The mantissa of a decimal numeric data element contained more than 255 digits excluding leading zeros
(see IEEE-488.2, 7.7.2.4.1).
Numeric data not al- A legal numeric data element was received, but the
lowed
counter does not accept it in this position for the
header.
Suffix error
This error as well as errors –131 through –139 is
generated when parsing a suffix. This particular error message is used when the counter cannot detect
a more specific error.
Invalid suffix
The suffix does not follow the syntax described in
IEEE-488.2, 7.7.3.2, or the suffix is inappropriate for
this counter.
Suffix too long
The suffix contained more than 12 characters (see
IEEE-488.2, 7.7.3.4).
Suffix not allowed
A suffix was encountered after a numeric element
that does not allow suffixes.
Character data error This error as well as errors 141 through –149 is generated when parsing a character data element. This particular error message is used when the counter cannot
detect a more specific error.
Invalid character
Either the character data element contains an invalid
data
character or the particular element received is not
valid for the header.
Character data too The character data element contains more than 12
long
characters (see IEEE-488.2, 7.7.1.4).
Character data not A legal character data element was encountered
allowed
where prohibited by the counter.
String data error
This error as well as errors –151 through –159 is generated when parsing a string data element. This particular error message is used when the counter cannot
detect a more specific error.
Invalid string data
A string data element was expected, but was invalid
Invalid string data; for some reason (see IEEE-488.2, 7.7.5.2); for exunexpected end of ample, an END message was received before the
terminal quote character.
message
7-4 Error Code -123 to -151
Error Messages
Command Errors
Error
Number
–158
–160
–161
–168
–170
Error Description
Description/Explanation/Examples
String data not allowed
Block data error
A string data element was encountered but was not allowed at this point in parsing.
This error as well as errors –161 through –169 is
generated when parsing a block data element. This
particular error message is used when the instrument cannot detect a more specific error.
Invalid block data
A block data element was expected, but was invalid
for some reason (see IEEE-488.2, 7.7.6.2); for example, an END message was received before the
length was satisfied.
Block data not alA legal block data element was encountered but
lowed
was not allowed by the counter at this point in parsing.
Expression data er- This error as well as errors –171 through –179 is
ror
generated when parsing an expression data element. This particular error message is used if the
counter cannot detect a more specific error.
Expression data er- The floating-point operations specified in the expresror; floating-point
sion caused a floating-point error.
underflow
Expression data error; floating-point
overflow
Expression data error; not a number
Expression data er- Two channel list specifications, giving primary and
ror; different number secondary channels for 2-channel measurements,
of channels given
contained a different number of channels.
Error Code -158 to -170 7-5
Error Messages
Command Errors
Error
Number
–171
–178
–180
–181
–183
–184
Error Description
Description/Explanation/Examples
Invalid expression
data
The expression data element was invalid (see
IEEE-488.2, 7.7.7.2); for example, unmatched parentheses or an illegal character were used.
A mnemonic data element in the expression was not
valid.
The expression contained a hexadecimal element
not permitted in expressions.
End of message occurred before the closing parenthesis.
Invalid expression
data; bad mnemonic
Invalid expression
data; illegal element
Invalid expression
data; unexpected
end of message
Invalid expression
data; unrecognized
expression type
Expression data not
allowed
Macro error
The expression could not be recognized as either a
mathematical expression, a data element list or a
channel list.
A legal expression data was encountered but was
not allowed by the counter at this point in parsing.
This error as well as errors –181 through –189 is
generated when defining a macro or executing a
macro. This particular error message is used when
the counter cannot detect a more specific error.
Invalid outside
Indicates that a macro parameter placeholder
macro definition
($<number) was encountered outside of a macro
definition.
Invalid inside macro Indicates that the program message unit sequence,
definition
sent with a *DDT or *DMC command, is syntactically invalid (see IEEE-10.7.6.3).
Macro parameter
Indicates that a command inside the macro definition had the wrong number or type of parameters.
error
Macro parameter
The parameter numbers given are not continuous;
error; unused paone or more numbers have been skipped.
rameter
Macro parameter er- The’$’ sign was not followed by a single digit beror; badly formed
tween 1 and 9.
placeholder
The macro was invoked with a different number of
Macro parameter
parameters than used in the definition.
error; parameter
count mismatch
7-6 Error Code -171 to -184
Error Messages
Execution errors
Error
Number
Error Description
description/explanation/examples
–200
Execution error
This is the generic syntax error for devices that cannot detect more specific errors. This code indicates
only that an Execution Error as defined in
IEEE-488.2, 11.5.1.1.5 has occurred.
–210
Trigger error
–211
Trigger ignored
–212
–213
–214
–215
–220
–221
Indicates that a GET, *TRG, or triggering signal was
received and recognized by the counter but was ignored because of counter timing considerations; for
example, the counter was not ready to respond.
Arm ignored
Indicates that an arming signal was received and
recognized by the counter but was ignored.
Init ignored
Indicates that a request for a measurement initiation
was ignored because another measurement was already in progress.
Trigger deadlock
Indicates that the trigger source for the initiation of a
measurement is set to GET and subsequent measurement query is received. The measurement cannot be started until a GET is received, but the GET
would cause an INTERRUPTED error.
Arm deadlock
Indicates that the arm source for the initiation of a
measurement is set to GET and subsequent measurement query is received. The measurement cannot be started until a GET is received, but the GET
would cause an INTERRUPTED error.
Parameter error
Indicates that a program-data-element related error
occurred. This error message is used when the
counter cannot detect the more specific errors –221
to –229.
Settings conflict
Indicates that a legal program data element was
parsed but could not be executed due to the current
Settings conflict;
PUD memory is pro- counter state (see IEEE-488.2, 6.4.5.3 and
11.5.1.1.5.)
tected
Settings conflict; invalid combination of
channel and function
Error Code -200 to -221 7-7
Error Messages
Execution errors
Error
Number
–222
–223
–224
–230
–231
–240
Error Description
description/explanation/examples
Data out of range
Indicates that a legal program data element was
parsed but could not be executed because the interpreted value was outside the legal range as defined
by the counter (see IEEE-488.2, 11.5.1.1.5.).
The expression was too large for the internal floating-point format.
Data below minimum for this function/parameter.
Data out of range;
exponent too large
Data out of range;
below minimum
Data out of range;
above maximum
Data out of range;
(Save/recall memory
number)
Too much data
Too much data;
*PUD string too
long
Too much
data;String or block
too long
Illegal parameter
value
Data corrupt or
stale
Data questionable
Data questionable;
one or more data elements ignored
Hardware error
7-8 Error Code -222 to -240
Data above maximum for this function/ parameter.
A number outside 0 to 19 was given for the save/recall memory.
Indicates that a legal program data element of block,
expression, or string type received that contained
more data than the counter could handle due to
memory or related counter-specific requirements.
Used where exact value, from a list of possible values, was expected.
Possibly invalid data; new reading started but not
completed since last access.
One or more data elements sent with a MEASure or
CONFigure command was ignored by the counter.
Indicates that a legal program command or query
could not be executed because of a hardware problem in the counter. Definition of what constitutes a
hardware problem is completely device specific. This
error message is used when the counter cannot detect the more specific errors described for errors
–241 through –249.
Error Messages
Execution errors
Error
Number
Error Description
description/explanation/examples
–241
Hardware missing
Hardware missing;
(prescaler)"
–254
Media full
–258
Media protected
–260
Expression error
–261
Math error in expression
–270
Macro error
–271
Macro error; out of
name space
Macro error; out of
definition space
Macro syntax error
Indicates that a legal program command or query
could not be executed because of missing counter
hardware; for example, an option was not installed.
Definition of what constitutes missing hardware is completely device specific.
Indicates that a legal program command or query
could not be executed because the media was full;
for example, there is no room on the disk. The definition of what constitutes a full media is device specific.
Indicates that a legal program command or query
could not be executed because the media was protected; for example, the write-protect tab on a disk
was present. The definition of what constitutes protected media is device specific.
Indicates that an expression-program data-elementrelated error occurred. This error message is used
when the counter cannot detect the more specific
errors described for errors –261 through –269.
Indicates that a syntactically correct expression program data element could not be executed due to a
math error; for example, a divide-by-zero was attempted.
Indicates that a macro-related execution error occurred. This error message is used when the counter
cannot detect the more specific error described for errors –271 through –279.
No room for any more macro names.
–272
No room for this macro definition.
Indicates that a syntactically correct macro program
data sequence, according to IEEE-488.2 10.7.2,
could not be executed due to a syntax error within
the macro definition (see IEEE-488.2, 10.7.6.3)
Macro execution er- Indicates that a syntactically correct macro program
ror
data sequence could not be executed due to some
error in the macro definition (see IEEE-488.2,
10.7.6.3)
Error Code -241 to -272 7-9
Error Messages
Execution errors
Error
Number
–273
–274
–275
–276
–277
–278
Error Description
description/explanation/examples
Indicates that the macro label defined in the *DMC
command was a legal string syntax, but could not be
accepted by the counter (see IEEE-488.2, 10.7.3 and
10.7.6.2); for example, the label was too long, the same
as a common command header, or contained invalid
header syntax.
Macro parameter
Indicates that the macro definition improperly used a
error
macro parameter place holder (see IEEE-488.2,
10.7.3).
Macro definition too Indicates that a syntactically correct macro program
long
data sequence could not be executed because the
string or block contents were too long for the counter to handle (see IEEE-488.2, 10.7.6.1).
Macro recursion er- Indicates that a syntactically correct macro program
ror
data sequence could not be executed because the
counter found it to be recursive (see IEEE-488.2,
10.7.6.6).
Macro redefinition
Indicates that a syntactically correct macro label in
not allowed
the *DMC command could not be executed because
the macro label was already defined (see
IEEE-488.2, 10.7.6.4).
Macro header not
Indicates that a syntactically correct macro label in
found
the *GMC? query could not be executed because
the header was not previously defined.
Illegal macro label
7-10 Error Code -273 to -278
Error Messages
Standardized Device specific errors
Error
Number
Error Description
description/explanation/examples
–330
Device specific error This code indicates only that a Device-Dependent
Error as defined in IEEE-488.2, 11.5.1.1.6 has occurred. Contact your local service center.
Memory error
Indicates that an error was detected in the counter’s
memory. Contact your local service center.
PUD memory lost
Indicates that the protected user data saved by the
*PUD command has been lost. Contact your local
service center.
Save/recall memory Indicates that the nonvolatile calibration data used
lost
by the *SAV? command has been lost. Contact your
local service center.
Self-test failed
Contact your local service center.
–350
Queue overflow
–300
–311
–312
–314
A specific code entered into the queue in lieu of the
code that caused the error. This code indicates that
there is no room in the queue and an error occurred
but was not recorded.
Error Code -300 to -350 7-11
Error Messages
Query errors
Error
Number
Error Description
description/explanation/examples
–400
Query error
–410
Query
INTERRUPTED
This code indicates only that a Query Error as defined in IEEE-488.2, 11.5.1.1.7 and 6.3 has occurred.
Indicates that a condition causing an INTERRUPTED Query error occurred (see IEEE-488.2,
6.3.2.3); for example, a query was followed by DAB
or GET before a response was completely sent.
The additional information indicates the IEEE-488.2
message exchange state where the error occurred.
–420
–430
–440
Query INTERRUPTED; in send
state
Query INTERRUPTED; in query
state
Query INTERRUPTED; in response state
Query
UNTERMINATED
Query
UNTERMINATED;
in idle state
Query
UNTERMINATED;
in read state
Query
UNTERMINATED;
in send state
Query
DEADLOCKED
Query
UNTERMINATED
after indefinite response
7-12 Error Code -400 to -440
Indicates that a condition causing an
UNTERMINATED Query error occurred (see
IEEE-488.2, 6.3.2.2); for example, the counter was
addressed to talk and an incomplete program message was received.
The additional information indicates the IEEE-488.2
message exchange state where the error occurred
Indicates that a condition causing an DEADLOCKED
Query error occurred (see IEEE-488.2, 6.3.1.7); for
example, both input buffer and output buffer are full
and the counter cannot continue.
Indicates that a query was received in the same program message after an query requesting an indefinite response was executed (see IEEE-488.2,
6.5.7.5.7.)
Error Messages
Device specific errors
Error
Number
(1)100
(1)101
(1)102
(1)110
(1)120
(1)130
(1)131
(1)132
(1)133
(1)134
(1)135
(1)136
(1)137
(1)138
(1)139
(1)150
Error Description
description/explanation/examples
Device operation
gave floating-point
underflow
Device operation
gave floating-point
overflow
Device operation
gave ‘not a number’
A floating-point error occurred during a counter operation.
Invalid measurement function
Save/recall memory
protected
Unsupported command
Unsupported
boolean command
Unsupported decimal command
Unsupported enumerated command
Unsupported auto
command
Unsupported single
shot command
Command queue
full; last command
discarded
The counter was requested to set a measurement
function it could not make.
An attempt was made to write in a protected memory.
Indicates a mismatch between bus and counter capabilities.
A floating-point error occurred during a counter operation.
A floating-point error occurred during a counter operation.
The counter has an internal command queue with
room for about 100 commands. A large number of
commands arrived fast without any intervening
query.
Inappropriate suffix A suffix unit was not appropriate for the command.
unit
Recognized units are Hz (Hertz), s (seconds), Ohm
(W) and V (Volt).
Unexpected comA command reached counter execution which
mand to device exe- should have been handled by the bus.
cution
Unexpected query
A query reached counter execution which should
to device execution
have been handled by the bus.
Bad math expresOnly a fixed, specific math expression is recognized
sion format
by the counter, and this was not it.
Error Code (1)100 to (1)150 7-13
Error Messages
Device specific errors
Error
Number
(1)160
(1)170
(1)190
(1)191
(1)200
(1)201
(1)202
(1)203
(1)204
(1)205
(1)210
(1)211
(1)212
(1)213
(1)214
Error Description
description/explanation/examples
Measurement broken off
Instrument set to
default
Error during calibration
Hysteresis calibration failed
A new bus command caused a running measurement to be broken off.
An internal setting inconsistency caused the instrument to go to default setting.
An error has occurred during calibration of the instrument.
The input hysteresis values found by the calibration
routine was out of range. Did you remember to remove the input signal?
Message exchange An error occurred in the message exchange handler
error
(generic error).
Reset during bus in- The instrument was waiting for more bus input, but
put
the waiting was broken by the operator.
Reset during bus
The instrument was waiting for more bus output to be
output
read, but the waiting was broken by the operator.
Bad message exAn internal error in the message exchange handler.
change control state
Unexpected reason A spurious GPIB interrupt occurred, not conforming
for GPIB interrupt
to any valid reason like an incoming byte, address
change, etc.
No listener on bus This error is generated when the counter is an active talker, and tries to send a byte on the bus, but
when trying to rethere are no active listeners.
spond
(This may occur if the controller issues the device
talker address before its own listener address, which
some PC controller cards has been known to do)
Mnemonic table er- An abnormal condition occurred in connection with
ror
the mnemonics tables (generic error).
Wrong macro table
The macro definitions have been corrupted (could
checksum found
be loss of memory).
Wrong hash table
The hash table has been corrupted. Could be bad
checksum found
memory chips or address logic. Contact your local
service center.
RAM failure to hold The memory did not retain information written to it.
information (hash
Could be bad memory chips or address logic. Contable)
tact your local service center.
Hash table overflow The hash table was too small to hold all mnemonics. Ordinarily indicates a failure to read (RAM or
ROM) correctly. Contact your local service center.
7-14 Error Code (1)160 to (1)214
Error Messages
Device specific errors
Error
Number
Error Description
description/explanation/examples
(1)220
Parser error
Generic error in the parser.
(1)221
Illegal parser call
The parser was called when it should not be active.
(1)222
Unrecognized input
character
Internal parser error
A character not in the valid IEEE488.2 character set
was part of a command.
The parser reached an unexpected internal state.
Response formatter
error
Bad response formatter call
Bad response formatter call (eom)
Invalid function
code to response
formatter
Invalid header type
to response formatter
Invalid data type to
response formatter
Unrecognized error
number in error
queue
Generic error in the response formatter.
(1)223
(1)230
(1)231
(1)232
(1)233
(1)234
(1)235
(1)240
The response formatter was called when it should
not be active.
The response formatter was called to output an end
of message, when it should not be active.
The response formatter was requested to output
data for an unrecognized function.
The response formatter was called with bad data for
the response header (normally empty)
The response formatter was called with bad data for
the response data.
An error number was found in the error queue for
which no matching error information was found.
Error Code (1)220 to (1)240 7-15
Error Messages
This page is intentionally left blank.
7-16 Error Code
Chapter 8
Command Reference
This page is intentionally left blank.
8-2 Command Reference
Abort
:ABORt
Command Reference 8-3
:ABORt
Abort Measurement
The ABORt command terminates a measurement. The trigger subsystem state is
set to “idle-state”. The command does not invalidate already finished results when
breaking an array measurement. This means that you can fetch a partial result after an abort.
Type of command:
Aborts all previous measurements if *WAI is not used.
Complies with standards:
SCPI 1991.0, confirmed.
8-4 Command Reference
Arming Subsystem
:ARM
[ :STARt | :SEQuence [ 1 ] ]
:LAYer2
:[ IMMediate ]
:SOURce
[ :LAYer [ 1 ] ]
:COUNt
:DELay
:SLOPe
:SOURce
:STOP | :SEQuence2
8
BUS | IMMediate
8
8
8
8
<Numeric value> | MIN | MAX | INF *
<Numeric value> | MIN | MAX
POSitive | NEGative
EXTernal1 | EXTernal2 | External4 | IMMediate
[ :LAYer [ 1 ] ]
:SLOPe
:SOURce
:TIMer
8 POSitive | NEGative
8 EXTernal1 | EXTernal2 | EXTernal4 | TIMer | IMMediate
8 <Numeric value> | MIN | MAX
* The INFinity parameter is only accepted by the CNT-91
Command Reference 8-5
:ARM :COUNt
8 <Numeric value>|MIN|MAX|INFinity *
No. of Measurements on each Bus arm
This count variable controls the upward exit of the “wait-for-bus-arm” state
(:ARM:STARt:LAY1). The counter loops the trigger subsystem downwards COUNt
number of times before it exits to the idle state.
This means that a COUNt No. of measurements can be done for each Bus arming
or INITiate.
L
The actual number of measurements made on each INIT is equal to:
(:ARM:START:COUNT)*(:TRIG:START:COUNT)
Parameters:
<Numeric value> is an integer between 1 and 2 147 483 647 (231-1). (The integer 1 switches
the function OFF.)
MIN gives 1
MAX gives 2 147 483 647
* CNT-91 only: INFinity makes the arm loop continue indefinitely, or rather until other device-dependent parameters set limits. In practice, timestamping will probably collapse
after more than 100 days of non-aborted operation. The INFinity parameter is mainly
intended for continuous measurements, i.e. without defined end, where intermediate results can be fetched on the fly.
Returned format:
<Numeric value>|INF*
Example:
SEND® :ARM:COUN8100¿
*RST condition:
1
Complies with standards:
SCPI 1991.0, confirmed
8-6 Command Reference
:ARM :DELay
8 <Numeric value> | MIN | MAX
Delay after External Start Arming
This command sets a delay between the pulse on the selected arming input and
the time when the counter starts measuring.
Range: 20 ns to 2 s, 10 ns resolution.
Parameters:
<Numeric value> is a number between 20*10–9 and 2 s.
MIN gives 0 which switches the delay OFF.
MAX gives 2 s
Returned format:
<Numeric value>¿
Example:
SEND® :ARM:DEL 80.1¿
*RST condition:
0
Complies with standards:
SCPI 1991.0, confirmed.
:ARM :LAYer2
Bus Arming Override
This command overrides the waiting for bus arm, provided the source is set to bus.
When this command is issued, the counter will immediately exit the “wait-for-busarm” state.
The counter generates an error if it receives this command when the trigger subsystem is not in the “wait-for-bus-arm” state.
If the Arming source is set to Immediate, this command is ignored.
Example:
SEND® :ARM:LAY2¿
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-7
:ARM :LAYer2 :SOURce
8 «BUS | IMMediate»
Bus Arming On/Off
Switches between Bus and Immediate mode for the “wait-for-bus-arm” function,
(layer 2). GET and *TRG triggers the counter if Bus is selected as source.
If the counter receives GET/ *TRG when not in “wait-for-bus-arm” state, it ignores
the trigger and generates an error.
It also generates an error if it receives GET/ *TRG and bus arming is switched off
(set to IMMediate).
Returned format:
BUS|IMM¿
Example:
SEND® :ARM:LAY2:SOUR 8 BUS¿
Complies with standards:
SCPI 1991.0, confirmed.
:ARM :SLOPe
8 «POSitive|NEGative»
External Arming Start Slope
Sets the slope for the start arming condition.
Returned format:
POS|NEG¿
Example:
SEND® :ARM:SLOP 8 NEG¿
*RST condition:
POS
Complies with standards:
SCPI 1991.0, confirmed.
8-8 Command Reference
:ARM :SOURce
8 «EXTernal1 | EXTernal2 | EXTernal4 | IMMediate»
External Start Arming Source
Selects START arming input or switches off the start arming function. When
switched off the DELay is inactive.
Parameters:
EXTernal1 is input A
EXTernal2 is input B
EXTernal4 is input E
IMMediate is Start arming OFF
Note: For the Totalize function in the CNT-91, IMM means manual start-stop using
the commands :TOT:GATE 8 ON|OFF¿
Returned format:
EXT1 | EXT2 | EXT4 | IMM¿
Example:
SEND® :ARM:SOUR 8 EXT4¿
*RST condition:
IMM
Complies with standards:
SCPI 1991.0, confirmed.
:ARM :STOP :SLOPe
8 «POSitive | NEGative»
External Stop Arming Slope
Sets the slope for the stop arming condition.
Returned format:
POS|NEG¿
Example:
SEND® :ARM:STOP:SLOP 8 NEG¿
*RST condition:
POS
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-9
:ARM :STOP :SOURce
8 «EXTernal1 | EXTernal2 | EXTernal4 | TIMer | IMMediate»
External Stop Arming Source
Selects STOP arming input or switches off the STOP arming function. The CNT-91
has also a programmable timer that is accessible in Totalize mode.
Parameters:
EXTernal1 is input A
EXTernal2 is input B
EXTernal4 is input E
TIMe is timed STOP in Totalize measurements (CNT-91 only). The time is set with
the command :ARM:STOP:TIM 8 <stop delay time>.
IMMediate is Stop arming OFF
EXT1 | EXT2 | EXT4 | TIM | IMM¿
Returned format:
Example:
SEND® :ARM:STOP:SOUR 8 EXT4¿
*RST condition:
IMM
Complies with standards:
SCPI 1991.0, confirmed.
:ARM :STOP :TIMer
8 <Numeric value> | MIN | MAX
CNT-91
Setting Gate Time in Timed Totalize Measurements
This command sets a delay between a pulse on the selected start arming input, i.e.
when totalizing starts, and the point of time when totalizing stops.
Range: 20 ns to 2 s, 10 ns resolution.
Parameters:
<Numeric value> is a number between 20*10 -9 and 2 s.
MIN gives 20*10 -9 s.
MAX gives 2 s
Returned format:
<Numeric value>¿
Example:
SEND® :ARM:STOP:TIM 8 0.1¿
*RST condition:
0
8-10 Command Reference
Calculate Subsystem
:CALCulate
8 ON|OFF
:STATe
:DATA?
:IMMediate
:MATH
[:EXPRession]
:STATe
:AVERage
[:STATe]
:TYPE
:COUNt
:CURRent?
8 (<Numeric expression>)
8 ON|OFF
8 ON|OFF
8 MIN|MAX|MEAN|SDEViation|ADEViation *
8 <Numeric value>|MIN|MAX
:LIMit
[:STATe]
8 ON|OFF
:FAIL?
:CLEar
[:IMMediate]
:AUTO
:FCOunt
8 ON|OFF
[:TOTal]?
:LOWer?
:TOTal?
:UPPer?
:PCOunt[:TOTal]?
:UPPer
[:DATA]
:STATe
:LOWer
[:DATA]
:STATe
:TOTalize
:TYPE
+
8 <Numeric value>|MIN|MAX
8 ON|OFF
8 <Numeric value>|MIN|MAX
8 ON|OFF
8 APLUSB|AMINUSB|ADIVB
* Totalize Manual can not be used together with the Statistics functions.
Command Reference 8-11
:CALCulate :AVERage :ALL?
The Main Calculated Statistics Parameters
Returns mean value, standard deviation, min and max value from the current statistics sampling.
Returned format:
<mean value>, <standard deviation>, <min value>, <max value>¿
:CALCulate :AVERage :COUNt
8 < No. of samples>
Sample Size for Statistics
Sets the number of samples to use in statistics sampling.
Parameters:
9
<No. of samples> is an integer in the range 2 to 2*10 .
Returned format:
< No. of samples>¿
*RST condition:
100
8-12 Command Reference
:CALCulate :AVERage :COUNt :CURRent?
Number of Statistics Samples Gathered
Returns the number of samples currently gathered in the current statistics sampling.
Returned format:
<No. of samples>¿
:CALCulate :AVERage :STATe
8 < Boolean >
Enable Statistics
Switches On/Off the statistical function. Note that the CALCulate subsystem is automatically enabled when the statistical functions are switched on. This means that
other enabled calculate sub-blocks are indirectly switched on. The statistics must
be enabled before the measurements are performed. When the statistical function
is enabled, the counter will keep the trigger subsystem initiated until the
:CALC:AVER:COUNT variable is reached. This is done without any change in the
trigger subsystem settings. Consider that the trigger subsystem is programmed to
perform 1000 measurements when initiated. In such a case, the counter must
make 10000 measurements if the statistical function requires 9500 measurements
because the number of measurements must be a multiple of the number of measurements programmed in trigger subsystem (1000 in this example).
Parameters
<Boolean> = ( 1/ON | 0/OFF )
Returned format:
1|0¿
*RST condition:
OFF
+
You cannot combine Statistics with array readouts, so if you want to store and
fetch individual values in a block measurement, you have to make sure the default command :CALC:AVER:STATE OFF is active.
Command Reference 8-13
:CALCulate :AVERage :TYPE
8 «MAX|MIN|MEAN|SDEViation|ADEViation»
Statistical Type
Selects the statistical function to be performed.
+
You must use :CALC:DATA? to read the result of statistical operations. :READ?,
:FETC? will only send the results that the statistical operation is based on.
Parameters:
MAX returns the max. value of all samples taken under :CALC:AVER control.
MIN returns the min. value of all samples taken under :CALC:AVER control.
1 N
MEAN returns the mean value of the samples taken: x = å X i
N i =1
N
SDEV returns the standard deviation: s =
å(x
- x )2
N-1
N -1
ADEV returns the Allan deviation s =
i
i =1
å(x
i +1
- x i )2
i =1
2(N - 1)
Returned format:
MAX|MIN|MEAN|SDEV|ADEV¿
*RST condition:
MEAN
:CALCulate :DATA?
Fetch calculated data
Fetches data calculated in the post processing block. Use this command to fetch
the calculated result without making a new measurement.
Returned Format:
<Decimal data>¿
Example:
SEND® :CALC:MATH:STAT8ON;:CALC:MATH8(((18*8X)8-810.7E6)8/81)
;:init; *OPC
Wait for operation complete
SEND® :CALC:DATA?
READ¬ <Measurement 8 result 8 minus 8 10.7E6>
*RST condition:
Event, no *RST condition.
Complies with standards:
SCPI 1991.0, Confirmed
8-14 Command Reference
:CALCulate :IMMediate
Recalculate Data
This event causes the calculate subsystem to reprocess the statistical function on
the sense data without reacquiring the data. Query returns this reprocessed data.
<Decimal data>¿
Where: <Decimal data> is the recalculated data.
Returned format:
Example:
SEND® :CALC:AVER:STAT 8 ON;TYPE 8 SDEV;:INIT;*OPC
Wait for operation complete
SEND®
READ¬
SEND®
SEND®
READ¬
:CALC:DATA?
<Value 8 of 8 standard 8 deviation>
:CALC:AVER:TYPE 8 MEAN
:CALC:IMM?
<Mean 8 value>
*RST condition:
Event, no *RST condition.
Complies with standards:
SCPI 1991.0, Confirmed.
:CALCulate :LIMit
8 <Boolean>
Enable Monitoring of Parameter Limits
Turns On/Off the limit-monitoring calculations.
Limit monitoring makes it is possible to get a service request when the measurement value falls below a lower limit, or rises above an upper limit.
Two status bits are defined to support limit-monitoring. One is set when the results
are greater than the UPPer limit, the other is set when the result is less than the
LOWer limit. The bits are enabled using the standard *SRE command and
:STAT:DREG0:ENAB. Using both these bits, it is possible to get a service request
when a value passes out of a band ( UPPer is set at the upper band border and
LOWer at the lower border) OR when a measurement value enters a band (LOWer
set at the upper band border and UPPer set at the lower border).
Turning the limit-monitoring calculations On/Off will not influence the status register
mask bits, which determine whether or not a service request will be generated
when a limit is reached. Note that the calculate subsystem is automatically enabled
when limit-monitoring is switched on. This means that other enabled calculate
sub-blocks are indirectly switched on.
Parameters
<Boolean> = ( 1/ON | 0/OFF )
Returned format:
1|0¿
*RST condition:
OFF
See also:
Example 1 in Chapter 4 deals with limit-monitoring.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-15
:CALCulate :LIMit :CLEar
Clear Limit Failure Count
The command resets the counter that reports its result over the
:CALCulate:LIMit:FCOunt? query command.
:CALCulate :LIMit :CLEar :AUTO
8 <Boolean>
Automatic Reset of Limit Failure Count
The command activates (ON) or deactivates (OFF) automatic reset by :INIT of
the counter that reports its result over the :CALCulate:LIMit:FCOunt? query
command.
Parameters
<Boolean> = ( 1/ON | 0/OFF )
*RST condition:
OFF
8-16 Command Reference
:CALCulate :LIMit :FAIL?
Limit Fail
Returns a 1 if the limit testing has failed (the measurement result has passed the
limit), and a 0 if the limit testing has passed.
The following events reset the fail flag:
– Power-on
– *RST
– A:CALC:LIM:STAT8OFF ® :CALC:LIM:STAT8ON transition
– Reading a 1 with this command.
Returned format:
1| 0¿
Example:
SEND® SENS:FUNC8‘FREQ’;:CALC:LIM:STAT8ON;:CALC:LIM:UPPER
81E3;READ?;*WAI;:CALC:LIM:FAIL?
READ¬ 1
if frequency is above 1kHz, otherwise 0
Complies with standards:
SCPI 1991.0, confirmed.
:CALCulate :LIMit :FCOunt :LOWer?
Number of Limit Failure Counts
The command returns the number of times the set lower limit has been passed
since the counter was last reset by :CALC:LIM:CLEAR or automatically by :INIT
if :CALC:LIM:CLEAR:AUTO ON has been activated.
Returned format:
< No. of counts>¿
Command Reference 8-17
:CALCulate :LIMit :FCOunt?
Number of Limit Failure Counts
The command returns the total number of times the set lower and upper limits
have been passed since the counter was last reset by :CALC:LIM:CLEAR or automatically by :INIT if :CALC:LIM:CLEAR:AUTO ON has been activated.
In other words, the returned value is the sum of the values returned by :CALCulate:LIMit:FCOunt:LOWer? and :CALCulate:LIMit:FCOunt:UPPer?
Returned format:
< No. of counts>¿
:CALCulate :LIMit :FCOunt :UPPer?
Number of Limit Failure Counts
The command returns the number of times the set upper limit has been passed
since the counter was last reset by :CALC:LIM:CLEAR or automatically by :INIT
if :CALC:LIM:CLEAR:AUTO ON has been activated.
Returned format:
< No. of counts>¿
8-18 Command Reference
:CALCulate :LIMit :PCOunt?
Number of Pass Counts
The command returns the number of measurement results between the set lower
and upper limits since the counter was last reset by :CALC:LIM:CLEAR or automatically by :INIT if :CALC:LIM:CLEAR:AUTO ON has been activated..
< No. of counts>¿
Returned format:
:CALCulate :LIMit :LOWer
8 «<Decimal data>|MAX|MIN»
Set Low Limit
Sets the value of the ‘Lower Limit’ , i.e., the lowest measurement result allowed before the counter generates a 1 that can be read with :CALCulate:LIMit:FAIL?,
or by reading the corresponding status byte.
Parameters
Parameter range: –9.9*10+37 to +9.9*10+37.
Returned format:
< Decimal data>¿
*RST condition:
0
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-19
:CALCulate :LIMit :LOWer :STATe
8 <Boolean>
Check Against Lower Limit
Selects if the measured value should be checked against the lower limit.
Parameters
<Boolean> = ( 1/ON | 0/OFF )
Returned format:
1| 0 ¿
*RST condition:
0
Complies with standards:
SCPI 1991.0 confirmed.
:CALCulate :LIMit :UPPer
8 «<Decimal data>|MAX|MIN»
Set Upper Limit
Sets the value of the ‘Upper Limit’, i.e., the highest measurement result allowed
before the counter generates a 1 that can be read with :CALCulate:LIMit:FAIL?, or by reading the corresponding status byte.
Parameters
Range: –9.9*10+37 to +9.9*10+37
Returned format:
<Decimal data>¿
*RST condition:
0
Complies with standards:
SCPI 1991.0, confirmed.
8-20 Command Reference
:CALCulate :LIMit :UPPer :STATe
8 <Boolean>
Check Against Upper Limit
Selects if the measured value should be checked against the upper limit.
Parameters
<Boolean> = ( 1/ON | 0/OFF )
Returned format:
1| 0 ¿
*RST condition:
0
Complies with standards:
SCPI 1991.0, confirmed.
:CALCulate :MATH
8 (<expression>)
Select Mathematical Expression
Defines the mathematical expression used for mathematical operations.
+
The data type <expression data> must be typed within parentheses.
Parameters
<expression> is one of the following five mathematical expressions:
((K8*8X)8+8L) or ((K8/8X)8+8L) or (((K8*8X)8+8L)8/8M) or
(((K8/8X)8+8L)8/8M) or ((X8/8M)8-81) No deviations are allowed.
K, L and M can be any positive or negative numerical constant.
Each operator must be surrounded by space characters.
Example
SEND®:CALC:MATH 8 (((64 8 * 8 X) 8 + 8 -1.07e7) 8 / 8 1e6)
*RST condition:
K=1, L=0, M=1
(( 1 * X ) + 0 ) (No calculation)
Returned format:
<expression>¿
Complies with standards:
SCPI 1991.0 Confirmed.
Command Reference 8-21
:CALCulate :MATH :STATe
8 <Boolean>
Enable Mathematics
Switches on/off the mathematical function. Note that the CALCulate subsystem is
automatically enabled when MATH operations are switched on. This means that
other enabled calculate sub-blocks are indirectly switched on. Switching off mathematics, however, does not switch off the CALCulate subsystem.
Parameters:
<Boolean> = ( 1/ON | 0/OFF )
Returned format:
1|0
Example
SEND®:CALC:MATH:STAT 8 1
This example switches on mathematics.
*RST condition:
OFF
Complies with standards:
SCPI 1991.0, confirmed.
:CALCulate :STATe
8 <Boolean>
Enable Calculation
Switches on/off the complete post-processing block. If disabled, neither mathematics or limit-monitoring can be done.
Parameter
<Boolean> = ( 1/ON | 0/OFF )
Example
SEND® :CALC:STAT 8 1
Switches on Post Processing.
Returned format:
1|0¿
*RST condition:
OFF
Complies with standards:
SCPI 1991.0, Confirmed
8-22 Command Reference
:CALCulate :TOTalize :TYPE
CNT-91
8 APLUSB|AMINUSB|ADIVB
Select Postprocessing for Totalize
If both counting registers (primary and secondary channel) are being used, you can
manipulate the measurement results before presentation by selecting one of three
postprocessing formulas that operate directly on the raw data.
Parameters
APLUSB selects the expression A + B to add the results in the two registers.
AMINUSB selects the expression A - B to subtract the value in register B from the
value in register A.
ADIVB selects the expression A / B to calculate the ratio of the contents in registers A and B.
Example
SEND® :CALC:TOT:TYPE ADIVB
Selects the formula A / B.
Returned format:
APLUSB|AMINUSB|ADIVB¿
*RST condition:
Command Reference 8-23
This page is intentionally left blank.
8-24 Command Reference
Calibration Subsystem
:CALibration
:INTerpolator
:AUTO
8 <Boolean>
Command Reference 8-25
:CALibration :INTerpolator :AUTO
8 <Boolean>
Calibration of Interpolator
The '9X' is a reciprocal counter that uses an interpolating technique to increase the
resolution. In time measurements, for example, interpolation increases the resolution from 10 ns to 0.1 ns.
The counter calibrates the interpolators automatically once for every measurement
when this command is ON. When this command is OFF, the counter does no calibrations but uses the values from the last preceding calibration. The intention of
this command is to turn off the auto calibration for applications that dump measurements into the internal memory. This will increase the measurement speed.
Parameters
<Boolean> = ( 1 | ON / 0 | OFF )
Returned format:
*RST condition:
1|0¿
ON
8-26 Command Reference
Configure Function
Set up Instrument for Measurement
:CONFigure
[:SCALar]<Measuring Function>
:ARRay<Measuring Function>
+
8 <Parameters>,(<Channels>)]
8 (<Array Size>)[,<Parameters>,(<Channels>)]
The array size for :MEASure and :CONFigure, and the channels, are expression
data that must be in parentheses ( ).
Measuring Function, Parameters and Channels are explained on page 8-54.
The counter uses the default Parameters and Channels when you omit them in
the command.
8-27 Command Reference
:CONFigure :<Measuring Function>
[8 <parameters>[,(<channels>)]]
Configure the counter for a single measurement
Use the configure command instead of the measure query when you want to
change other settings, for instance, the input settings before making the measurement and fetching the result.
The :CONFigure command controls the settings of the Input, Sense and Trigger subsystems in the counter in order to make the best possible measurement. It also
switches off any calculations with :CALC:STATE 8 OFF.
:READ? or :INITiate;:FETCh? will make the measurement and read the resulting
measured value.
Since you may not know exactly what settings the counter has chosen to configure
itself for the measurement, send an *RST before doing other manual set up measurements.
Parameters
<Measuring Function>, <Parameters> and <Channels> are defined on page 8-54.
The optional parameter :SCALar means that one measurement is to be done.
<String>¿
<String> contains the current measuring function and channel. The response is a
<String data element> containing the same answer as for [:SENSe]:FUNCtion?.
Returned format:
Example:
SEND® :CONF:FREQ:RAT8(@3),(@1)
Configures the counter for freq. ratio C/A.
See also:
‘Explanations of the Measuring Functions’ starting on page 8-59.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-28
:CONFigure :ARRay :<Measuring Function>
8 (<array size>)[,<parameters> [,(<channels>)]]
Configure the counter for an array of measurements
The :CONFigure:ARRay command differs from the :CONFigure command in
that it sets up the counter to perform the number of measurements you choose in
the <array size>.
To perform the selected function, you must trigger the counter with the :READ:ARRay? or :INITiate;:FETCh:ARRay? queries.
Parameters
<array size> sets the number of measurements in the array. See table be-
low.
<Measuring Function>, <Parameters>, and <Channels> are defined on page 8-54.
Example:
SEND® :CONF:ARR:PER 8 (7),5E–3,1E–6,(@4)
This example sets up the counter to make seven period measurements. The expected result is 5 ms, and the required resolution is 1 ms. The EXT ARM input is
the measuring input.
To make the measurements and fetch the seven measurement results:
SEND® :READ:ARR? 8 7
READ¬ 5.23421E-3,5.12311E-3,5.87526E-3, 8
5.50345E-3,5.33901E-3,5.25501E-3, 8 5.03571E-3
Array Size
Function
Freq, Per &
most other
functions
Interpolator Calibration ON
Interpolator Calibration OFF
CNT-90
CNT-91
CNT-90
CNT-91
375 k
1.9 M
750 k
3.8 M
NA
3.8 M
Smart Freq
& Per
30 k
Volt (Max,
Min, PTP)
10 k
Volt Ratio
30 k
Totalize
NA
3.8 M
Note: To find out the maximum number in your particular case, do the following:
1. Make all settings not affected by CONFigure
2. Send :CONF:ARR:<meas. func> MAX,(@<channel>)
3. Send Query :TRIG:COUN? to see the maximum number of samples for this
measurement
Complies with standards:
SCPI 1991.0, confirmed.
8-29 Command Reference
:CONFigure :TOTalize [:CONTinuous]
CNT-91
[8 (@«1|2»)][,(@«1|2»)]
Totalize Manually
This is a count/totalize function controlled from the GPIB interface using the command SENS:TOT:GATE8ON|OFF.
The counter counts up for each event on the primary input channel. The same applies to the secondary channel if it has been activated. The result is one or two values depending on the presence of the secondary channel. In addition to selecting
totalizing, the :CONF:TOT:CONT command also selects positive trigger slope. If
you want to count negative slopes on input A, send :INPut:SLOPe8 NEG after
the :CONF:TOT:CONT command. The results of successive ON-OFF periods are
accumulated.
Postprocessing of two-channel results is done by means of the :CALCulate command. See page 8-23. Arming is used for realizing non-manual functions like
Tot A gated by B or Tot A-B timed. See page 8-10.
Parameters
(@«1|2») is the primary channel:
,(@«1|2») is the secondary channel:
(@1) stands for input A
(@2) stands for input B
+
This measurement cannot be made as a :MEASure, it must be made as a
:CONFigure followed by :INIT:CONT8ON, gate control with :SENS:TOT:GATE
«ON|OFF» and completed with a :FETCh:ARR? <array size>.
Example:
SEND® :CONF:TOT;:INP:SLOPe NEG
This example sets up the counter to totalize the negative slopes on Input A and
disable the secondary channel. (Same as (@1))
*RST condition
(@1),(@2)
Normal Program Sequence for Totalizing on A
CONF:TOT:CONT8(@1)
INIT:CONT8ON
TOT:GATE8ON
FETC:ARR?8–1
TOT:GATE8OFF
FETC:ARR?8–1
+
Set up the counter for totalize on A, reset registers
Initiate the counter continuously
Start totalizing
Read intermediate results without stopping the totalizing
Stop totalizing
Fetch the final result from the totalizing
Intermediate results
When totalizing you often want to read intermediate results without stopping the
totalizing process. :FETC:ARR?8–1 always outputs the current register value.
8-30 Command Reference
Display Subsystem
:DISPlay
:ENABle 8
ON OFF
8-31 Command Reference
:DISPlay :ENABle
8 < Boolean >
Display State
Turns On/Off the updating of the entire display section. This can be used for security reasons or to improve the GPIB speed, since the display does not need to be
updated.
Parameters:
<Boolean> = (1 / ON | 0 / OFF)
Returned format:
1|0 ¿
*RST condition:
ON
Complies with standards:
SCPI 1991.0, confirmed.
8-32 Command Reference
Fetch Function
:FETCh
[:SCALar]?
:ARRay? 8
<Array Size>|MAX *
* CNT-91 only
Command Reference 8-33
:FETCh?
Fetch One Result
The fetch query retrieves one measuring result from the measurement result buffer
of the counter without making new measurements. Fetch does not work unless a
measurement has been made by the :INITiate, :MEASure?, or :READ? commands.
If the counter has made an array of measurements, :FETCh? fetches the first
measuring results first. The second :FETCh? fetches the second result and so on.
When the last measuring result has been fetched, fetch starts over again with the
first result.
The same measuring result can be fetched again and again, as long as the result
is valid, i.e., until the following occurs:
–
–
–
–
*RST is received.
an :INITiate, 8 :MEASure or :READ command is executed
any reconfiguration is done.
an acquisition of a new reading is started.
If the measuring result in the output buffer is invalid but a new measurement has
been started, the fetch query completes when a new measuring result becomes
valid. If no new measurement has been started, an error is returned.
The optional :SCALar means that one result is retrieved.
<data>¿
The format of the returned data is determined by the format commands :FORMat
and :FORMat:BORDer. See also examples on page 8-39.
Returned format:
FORMAT
PACKED
OFF
REAL
<Val>
#18<Val>
#18<Val>
ON
:FORMAT:TINF
ASCii
<Val>,<TS>
#18<Val>,#18<TS>
#216<Val><TS>
Val = measurement value (double precision in REAL and PACKed)
TS = timestamp value (double precision in REAL and int64 ps in PACKed)
If no valid result can be returned, e.g. due to time-out, the returned data will depend on the chosen GPIB mode according to the table under :FETCh:ARRay?
Complies with standards:
SCPI 1991.0, confirmed.
8-34 Command Reference
:FETCh :ARRay?
8 <fetch array size>|MAX *
Fetch an Array of Results
:FETCh:ARRay? query differs from the :FETCh? query by fetching several measuring results at once.
An array of measurements must first be made by the commands. :INITiate,
:MEASure:ARRay? or :CONFigure:ARRay;:READ?
If the array size is set to a positive value, the first measurement made is the first
result to be fetched.
When the counter has made an array of measurements, :FETCh:ARRay? 8 10
fetches the first 10 measuring results from the output queue. The second
:FETCh:ARRay? 8 10 fetches the result 11 to 20, and so on. When the last measuring result has been fetched, fetch:array starts over again with the first result.
In totalizing for instance, you may want to read the last measurement result instead
of the first one. This is possible if you set the array size to a negative number. Example: :FETCh:ARRay? 8 –5 fetches the last five results. The output queue
pointer is not altered when the array size is negative. That is, the example above
always gives the last five results every time the command is sent.
:FETCh:ARRay? 8 –1 is useful to fetch intermediate results in free-running or array measurements without interrupting the measurement.
Parameters
:ARRay means that an array of retrievals is made for each :FETCh command.
<fetch array size> is the number of retrievals in the array. This number must not
exceed the number of results in the measurement result buffer. The maximum limit
is 10000 due to the physical size of the output buffer.
* CNT-91 only: MAX means that all the results in the output buffer will be fetched.
<data>[,<data>]¿
The format of the returned data is determined by the format commands :FORMat
and :FORMat:FIXed.
Returned format:
Example:
If :MEAS:ARR:FREQ? 8 (4) gives the results 1.1000,1.2000,1.3000,1.4000
:FETC:ARR 8 2 fetches the results 1.1000,1.2000
:FETC:ARR 8 2 once more fetches the results 1.3000,1.4000
:FETC:ARR 8 –1 always fetches the last result 1.4000
Val = measurement value (double precision in REAL and PACKed)
TS = timestamp value (double precision in REAL and int64 ps in PACKed)
If no valid result can be returned, e.g. due to time-out, the returned data will depend on the chosen GPIB mode according to the table below.
Command Reference 8-35
GPIB MODE
FORMAT
NATIVE
COMPATIBLE
ASCii <LF>
9.91E37
REAL #18<Binary NaN>
#18<9.91E37 in binary format>
PACKED #18<Binary NaN>
#18<9.91E37 in binary format>
NaN = Not a Number, a standardized bit pattern indicating that the transferred data
is not a valid result.
FORMAT
+
OFF
ON
:FORMAT:TINF
ASCii
<Val>,<Val>,...
REAL
#18<Val>,#18<Val>,...
<Val>,<TS>,<Val>,... #18<Val>,#18<TS>,
#18<Val>,...
PACKED
#ddd<Val><Val><Val>...
#ddd<Val><TS><Val>...
You cannot combine Statistics with array readouts, so if you want to store and
fetch individual values in a block measurement, you have to make sure the
default command :CALC:AVER:STATE OFF is active.
A ‘FETC:ARR? MAX’ during an ongoing array measurement will fetch as many
samples as currently available for immediate fetch (but no more than 10000).
Note 1: With no new measurements since the last fetch, and a measurement still in
progress, the result will be ‘data corrupt or stale’, otherwise it will wrap to the beginning. This is not an error as such, just indicating a fact.
Note 2: When format packed is used and the size is not known in advance, the
data header looks a bit different from normal, e.g. a single value with a timestamp
will look like ‘#6000016<16 data bytes>’ instead of ‘#216<16 data bytes>’.
Complies with standards:
SCPI 1991.0, confirmed.
8-36 Command Reference
Format Subsystem
:FORMat
[:DATA]
:BORDer
:SMAX
:TINFormation[:STATe]
8
8
8
8
ASCii | REAL | PACKed
NORMal | SWAPped
<Numeric value> *
<Boolean>
* CNT-91 only
Command Reference 8-37
:FORMat
8 ASCii|REAL|PACKed
Response Data Type
Sets the format in which the result will be sent on the bus.
Parameters:
ASCii: The length will be automatically controlled by the resolution of each measurement result.
REAL: The length parameter is ignored; the output is always in 8-byte format.
PACKed: See REAL.
Returned format:
ASC|REAL|PACK¿
*RST condition:
ASCii
See also:
:FORMat:TINFormation and :FETCh? commands
Complies with standards:
SCPI 1991.0, confirmed.
:FORMat :BORDer
8 NORMal|SWAPped
Response Byte Order
Sets the order in which response data bytes formatted as REAL or PACKED are
sent on the bus.
Parameters:
NORMal: Response data is sent with the MSB first and the LSB last (big-endian order)
SWAPped: Response data is sent with the LSB first and the MSB last (little-endian order)
Returned format:
*RST condition:
See also:
NORM|SWAP¿
NORMal
:FORMat command
8-38 Command Reference
:FORMat :SMAX
CNT-91
8 <Numeric value>
Upper Limit for Array Size
Sets or queries the upper limit for :FETCh:ARRay? MAX command in number of
samples. The command is intended for use with any controllers or application programs that cannot read large amounts of data, when the functionality of the
:FETCh:ARRay? MAX command is still interesting.
Parameter:
Integer N, where 4 £ N £ 10000
Returned format:
<Numeric value)¿
Power ON default value:
*RST condition:
10000
Not affected
Format Examples:
The response formats for REAL and PACKed are described on page 8-34, but also
depend on the setting of FORMAT:BORDer. If you are using an Intel platform, you
will either have to swap all bytes, or set FORMAT:BORDER SWAP to get little-endian byte order as opposed to the normal big-endian order.
Here is a sample with the same measurement result in various formats:
FORMAT ASCII
+4.9999999999E+05,+7.6433000000000E+02\n
FORMAT:BORDER SWAP;:FORMAT REAL;:FETC?
23 31 38 ad 74 fd ff 7f 84 1e 41 2c 23 31 38 71 3d 0a d7 a3 e2 87 40 0a
The bit pattern is interpreted as #18<Val>,#18<TS>\n. Val and TS are 64-bit double precision floating point numbers, least significant byte first.
FORMAT:BORDER SWAP;:FORMAT PACK;:FETC?
23 32 31 36 ad 74 fd ff 7f 84 1e 41 00 24 24 72 27 b7 02 00 0a
The bit pattern is interpreted as #216<Val><TS>\n. Val is a 64-bit double precision
floating point number, while TS is a 64 bit integer with number of picoseconds
since a reference time, least significant byte first.
FORMAT:BORDER NORM;:FORMAT REAL;:FETC?
23 31 38 41 1e 84 7f ff fd 74 ad 2c 23 31 38 40 87 e2 a3 d7 0a 3d 71 0a
The bit pattern is interpreted as #18<Val>,#18<TS>\n. Val and TS are 64-bit double precision floating point numbers, most significant byte first.
FORMAT:BORDER NORM;:FORMAT PACK;:FETC?
23 32 31 36 41 1e 84 7f ff fd 74 ad 00 02 b7 27 72 24 24 00 0a
The bit patttern is interpreted as #216<Val><TS>\n. Val is a 64-bit double precision
floating point number, while TS is a 64 bit integer with number of picoseconds
since a reference time, most significant byte first.
8-39 Command Reference
:FORMat :TINFormation
8 Boolean
Timestamping On/Off
This command turns on/off the time stamping of measurements. Time stamping is
always done at the start of a measurement with full measurement resolution, and is
saved in the measurement buffer together with the measurement result.
The setting of this command will affect the output format of the MEASure, READ
and FETCh queries. See the FETCH function on page 8-33 ff.
For :FETCh:SCALar?, :READ:SCALar? and :MEASure:SCALar? the readout will consist of two values instead of one. The first will be the measured value and the next
one will be the timestamp value.
In :FORMat ASCii mode, both the measured value and the timestamp value will be
given as floating-point numbers expressed in the basic units (e.g. Hz - s or s - s).
In :FORMat REAL mode, the result will be given as an eight-byte block containing
the floating-point measured value, followed by an eight-byte block containing the
floating point timestamp value.
In :FORMat PACKed mode, the result will be given as an eight-byte block containing the floating-point measured value followed by an eight-byte block containing
the timestamp value expressed as a 64-bit integer (int64), the implicit unit being ps.
When doing readouts in array form, with :FETCh :ARRay?, :READ :ARRay?, or
:MEASure :ARRay? , the response will consist of alternating measurement values
and timestamp values, formatted in a similar way as for scalar readout. All values
will be separated by commas. See also the :MEASure:ARRay:TSTAmp? command
on page 8-73 for more information on the output format.
Parameters
<Boolean> = (1 / ON | 0 / OFF)
Returned format:
1|0 ¿
*RST condition:
OFF
8-40 Command Reference
Hard Copy
:HCOPy
:SDUMp
:DATA?
8-41 Command Reference
:HCOPy :SDUMp :DATA?
Screen Dump
Return block data containing screen dump in Windows BMP format.
Returned Format:
#43942<Binary BMP Data>
The '4' means that the following four digits (3942) tell how many data bytes will
succeed. The proper screen data is preceded by a 62-byte header, which means
that 3942 - 62 = 3880 bytes carry the pixel information. The number of pixels is
consequently 3880 x 8 = 31040. The display geometry is 320 x 97 = 31040.
8-42 Command Reference
Initiate Subsystem
:INITiate
[:IMMediate ]
:CONTinuous 8
ON | OFF
Command Reference 8-43
:INITiate
Initiate Measurement
The :INITiate command initiates a measurement. Executing an :INITiate
command changes the counter’s trigger subsystem state from “idle-state” to
“wait-for-bus-arm-state” (see Figure 6-11). The trigger subsystem will continue to
the other states, depending on programming. With the *RST setting, the trigger
subsystem will bypass all its states and make a measurement, then return to idle
state. See also ‘How to use the Trigger Subsystem’ at the end of this chapter.
Complies with standards:
SCPI 1991.0, confirmed.
:INITiate :CONTinuous
8 <Boolean>
Continuously Initiated
The trigger system could continuously be initiated with this command. When Continuous is OFF, the trigger system remains in the “idle-state” until Continuous is set
to ON or the :INITiate is received. When Continuous is set to ON, the completion of a measurement cycle immediately starts a new trigger cycle without entering
the “idle-state”, i.e., the counter is continuously measuring and storing response
data.
Returned format:
1|0¿
*RST condition:
OFF
Complies with standards:
SCPI 1991.0, confirmed.
8-44 Command Reference
Input Subsystems
n INPUT A
:INPut[1]
8 <Numeric value>|MIN|MAX (1|10)
8 AC|DC
8 <Numeric value>|MIN|MAX
:ATTenuation
:COUPling
:IMPedance
[:EVENt]
:LEVel
:AUTO
:RELative
:SLOPe
:FILTer
8
8
8
8
<Numeric value>|MIN|MAX
ON|OFF|ONCE
<Numeric value>
POS|NEG
[:LPASs]
[:STATe]
:DIGital
:FREQuency
8 ON|OFF
8 ON|OFF
8 <Numeric value>|MIN|MAX
n INPUT B
:INPut2
8 <Numeric value>|MIN|MAX (1|10)
8 AC|DC
8 <Numeric value>|MIN|MAX
:ATTenuation
:COUPling
:IMPedance
[:EVENt]
:LEVel
:AUTO
:RELative
:SLOPe
:FILTer
8
8
8
8
<Numeric value>|MIN|MAX
ON|OFF|ONCE
<Numeric value>
POS|NEG
[:LPASs]
[:STATe]
:DIGital
:FREQuency
8 ON|OFF
8 ON|OFF
8 <Numeric value>|MIN|MAX
n INPUT E
:INPut4
[:EVENt]
:SLOPe
8 POS|NEG
Command Reference 8-45
:INPut«[1]|2» :ATTenuation
8 «<Numeric value>|MAX|MIN»
Attenuation
Attenuates the input signal by 1 or 10. The attenuation is automatically set if the input level is set to AUTO.
Parameters:
<Numeric values> £ 5, and MIN gives attenuation 1.
<Numeric values> > 5, and MAX gives attenuation 10.
Returned format:
1.00000000000E+000|1.00000000000E+001 ¿
Example for Input A (1)
SEND® :INP:ATT 8 10
Example for Input B (2)
SEND® :INP2:ATT 8 10
Input A (1) and Input B (2): 1 (but set by autotrigger since AUTO is on after *RST. (:INP:LEV:AUTO 8 ON).
*RST condition
Complies with standards:
SCPI 1991.0, confirmed.
:INPut«[1]|2» :COUPling
8 «AC|DC»
AC/DC Coupling
Selects AC coupling (normally used for frequency measurements), or DC coupling (normally used for time measurements).
Returned format:
AC|DC¿
Example for Input A (1)
SEND® :INP:COUP 8 DC
Example for Input B (2)
SEND® :INP2:COUP 8 AC
*RST condition
Input A (1): AC
Input B (2): AC
Complies with standards:
SCPI 1991.0, confirmed.
8-46 Command Reference
:INPut«[1]|2» :FILTer
8 <Boolean>
Analog Low Pass Filter
Switches on or off the analog low pass filter on input 1 (A) and/or input 2 (B). It has
a cutoff frequency of 100 kHz.
Parameters:
<Boolean> is «1 | ON» | «0 | OFF»
Returned format:
*RST condition
1|0¿
OFF
Complies with standards:
SCPI 1991.0, confirmed.
:INPut«[1]|2» :FILTer :DIGital
8 <Boolean>
Digital Low Pass Filter
Switches on or off the digital low pass filter on input 1 (A) and/or input 2 (B). The
cutoff frequency is set by the command:
:INPut«[1]|2»:FILTer:DIGital:FREQuency8<Numeric value>
Parameters:
<Boolean> is «1 | ON» | «0 | OFF»
Returned format:
*RST condition:
1|0¿
OFF
Command Reference 8-47
:INPut«[1]|2» :FILTer :DIGital :FREQuency
8<Numeric value>|MIN|MAX
Set the Digital Low Pass Filter Cutoff Frequency
Any frequency between 1 Hz and 50 MHz can be entered. The filter is activated by
the command:
:INPut«[1]|2»:FILTer:DIGital8ON|OFF
Parameters:
<Numeric value> is a value between 1 and 50*106
MIN means 1 Hz
MAX means 50 MHz
Returned format:
*RST condition:
<Numeric value>¿
100 kHz
:INPut«[1]|2» :IMPedance
8 «<Decimal data>|MAX|MIN»
Input Impedance
The impedance can be set to 50 W or 1 MW.
Parameters
MIN or <Decimal data> that rounds off to 50 or less, sets the input impedance to 50 W
MAX or <Decimal data> that rounds off to 1001 or more, sets the impedance to 1 MW.
Returned format:
5.00000000000E+001|1.00000000000E+6¿
Example for Input A (1)
SEND® :INP:IMP 8 50
Sets the input A impedance to 50 W.
Example for Input B (2)
SEND® :INP2:IMP 8 50
Sets the input B impedance to 50 W.
*RST condition
1 MW
Complies with standards:
SCPI 1991.0, confirmed.
8-48 Command Reference
:INPut«[1]|2» :LEVel
8 «<Decimal data>|MAX|MIN»
Fixed Trigger Level
Input A and input B can be individually set to autotrigger or to fixed trigger levels of
between –5 V and +5 V in steps of 2.5 mV. If the attenuator is set to 10X, the
range is –50 V and +50 V in 25 mV steps. Setting an absolute trigger level turns off
autotrigger for the selected channel.
For autotrigger, see the next command.
<Decimal data> is a number between –5 V and +5 V if att = 1X and between –50 V and +50 V if att = 10X.
Parameters:
+
MAX gives +5 V or +50 V and MIN gives –5 V or -50 V, depending on the
attenuator setting. See above.
Returned format:
<Decimal data>¿
Example for Input A (1)
SEND® :INP:LEV 8 0.01
Example for Input B (2)
SEND® :INP2:LEV 8 2.0
*RST condition
0 (but controlled by Autotrigger since AUTO is on after *RST)
:INPut«[1]|2» :LEVel :AUTO
8 «<Boolean> | ONCE»
Autotrigger
If set to AUTO, the counter automatically controls the trigger level.
The autotrigger function normally sets the trigger levels to 50 % of the signal amplitude. A few exceptions exist, however:
A:
Rise/Fall time measurements: Here the Input 1 (A) trigger level is set to 10% resp.
90% and the Input 2 (B) trigger level is set to 90% resp. 10% of the amplitude.
B:
Frequency and Period Average mode: The input trigger levels are set to 70% respectively 30% of the amplitude.
C:
Functions for which AUTO does not work are Frequency or Period Back-to-Back,
Time Interval Error (TIE) and Totalize. If one of these is selected, an AUTO ONCE
is performed instead.
ONCE means that the counter makes one automatic calculation of the trigger level
at the beginning of a measurement. This value is then fixed until another
level-setting command is sent to the counter, or until a new measurement is
initiated.
Command Reference 8-49
In this way you can benefit from the automatic trigger level adjustment without sacrificing measurement speed.
+
From the bus, input A and input B are always set to autotrigger individually.
Parameters:
<Boolean> = ( 1/ON | 0/OFF | ONCE)
Example for Input A (1)
SEND® :INP:LEV:AUTO 8 OFF
Example for Input B (2)
SEND® :INP2:LEV:AUTO 8 ON
Returned format:
*RST condition:
1|0|ONCE¿
ON
:INPut«[1]|2» :LEVel :RELative
8 <Numeric value>
Relative Trigger Level
When autotrigger is active, the relative trigger levels are normally fixed at values
that depend on the selected function, for instance 10% (Inp A) and 90% (Inp B) for
Rise Time, 50% (Inp A & Inp B) for Time Interval, 70% (Inp A) and 30% (Inp B) for
Frequency. At times you may want to change these values. Since the default values are restored automatically after changing function, this command may have to
be sent repeatedly. The two input channels are programmed separately and are
consequently not interdependent.
The command itself does not switch on autotrigger, so if you want to set relative
levels after having used abolute levels, you must also send the command
:INP:LEV:AUTO ON (see above), unless you have changed measurement function.
Parameters
<Numeric value> is a positive number between 0 and 100 (%).
Example
SEND® :INP:LEV:REL 8 20 (Inp A set to 20% to measure ECL rise time)
SEND® :INP2:LEV:REL 8 80 (Inp B set to 80% to measure ECL rise time)
Returned format:
*RST condition:
<Numeric value>¿
Depending on function (see description above).
8-50 Command Reference
:INPut«[1]|2» :SLOPe
8 «POS|NEG»
Trigger Slope
Selects if the counter should trigger on a positive or a negative transition. Selecting
negative slope is useful for Time Interval measurements.
The slope is fixed for Pos/Neg Pulse Width/Duty Factor and Rise/Fall Time.
Arming slope is not affected by this command. Use :ARM:STARt:SLOPe and
:ARM:STOP:SLOPe instead.
Returned format:
POS | NEG ¿
Example for Input A (1)
SEND® :INP:SLOP 8 POS
Example for Input B (2)
SEND® :INP2:SLOP 8 NEG
*RST condition
POS
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-51
This page is intentionally left blank.
8-52 Command Reference
Measurement Function
Set up the Instrument, Perform Measurement, and Read Data
:MEASure
[:SCALar]<Measuring Function>?
[<Parameters>][,(<Channels>)]
:ARRay<Measuring Function>?
:MEMory?
:MEMory<N>?
+
8 (<Array Size>)[,<Parameters>][,(<Channels>)]
8 [<N>]
The array size for :MEASure and :CONFigure, and the channels, are expression
data that must be within parentheses ( ).
The question mark at the end of the commands is only valid for :MEASure,
where a result is expected. It must be deleted for :CONFigure, which is a setting command only.
The default channels, which the counter use when you omit the channels in the
command, are printed in italics in the channel list on the following pages.
+
If you want to check what function and channels the counter is currently using,
send :CONF?
This query gives the same answer as :FUNC? in the SENSe subsystem
Command Reference 8-53
:MEASure|:CONFigure
[:SCALar]
[:VOLTage]
:FREQuency
[:CW]?
[_
:BTBack? *
[_
:BURSt?
[_
:POWer[:AC]? **
[_
:PRF?
[_
:RATio?
[_
:NCYCles?
[_
:PDUTycycle|:DCYCle?[ _
:NDUTycycle?
[_
:MAXimum?
[_
:MINimum?
[_
:PTPeak?
[_
:RATio?
[_
:PSLEwrate?
[_
:NSLEwrate?
[_
:PERiod?
[_
:BTBack? *
[_
:PERiod:AVERage?
[_
:PHASe?
[_
«:RISE:TIME|:RTIM»? [ _
«:FALL:TIME|:FTIM»? [ _
:TINTerval?
[_
:PWIDth?
[_
:NWIDth?
[_
:TOTalize?
_
:[CONTinuous] *** [ _
[<exp. value>[,<resol.>],][(@1|@2|@3|@4|@6)]]
[<exp. value>[,<resol.>],][(@1|@2)]]
[<exp. value>[,<resol.>],][(@1|@2|@3)]]
(@3)]
[<exp. value>[,<resol.>],][(@1|@2|@3)]]
[<exp. value>[,<resol.>],][(@1|@2|@3),(@1|@2|@3)]]
(@1|@2|@3)]
[<reference>,][(@1|@2)]]
[<reference>,][(@1|@2)]]
(@1|@2)]
(@1|@2)]
(@1|@2)]
(@1|@2),(@1|@2)]
(@1|@2)]
(@1|@2)]
[<exp. value>[,<resol.>],][(@1|@2|@3)]]
[<exp. value>[,<resol.>],][(@1|@2)]]
[<exp. value>[,<resol.>],][(@1|@2|@3)]]
[<exp. value>[,<resol.>],][(@1|@2),(@1|@2)]]
[<lo thresh.>[,<hi thresh.>[,<exp. value>[,<resol.>]]],][(@1|@2)]]
[<lo thresh.>[,<hi thresh.>[,<exp. value>[,<resol.>]]],][(@1|@2)]]
[<exp. value>[,<resol.>],][(@1|@2),(@1|@2)]]
[<reference>,][(@1|@2)]]
[<reference>,][(@1|@2)]]
[(@1|@2)][,(@1)|@2)]]
(@1) means input A
(@2) means input B
(@3) means input C (RF input option)
(@4) means the rear panel arming input
(@6) means the internal reference
* CNT 91 only
** CNT-90XL only
*** CNT-91 only, in combination with :CONFigure, not :MEASure
8-54 Command Reference
:ARRay
[:VOLTage]
:FREQuency
[:CW]?
_
:BTBack? *
_
:BURSt?
_
:POWer[:AC]? **
_
:PRF?
_
:RATio?
_
:NCYCles?
_
:PDUTycycle|:DCYCle? _
:NDUTycycle?
_
:MAXimum?
_
:MINimum?
_
:PTPeak?
_
:RATio?
_
:PSLEwrate?
_
:NSLEwrate?
_
:PERiod?
_
:BTBack? *
_
:PERiod:AVERage?
_
:PHASe?
_
«:RISE:TIME|:RTIM»? _
«:FALL:TIME|:FTIM»? _
:TIError?
_
:TINTerval?
_
:PWIDth?
_
:NWIDth?
_
:STSTamp?
_
:TSTAmp?
_
:TOTalize?
_
:[CONTinuous] *** [ _
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2|@3|@4|@6)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2|@3)]]
(<Size>)[,(@3)]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2|@3)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2|@3),(@1|@2|@3)]]
(<Size>)[,(@1|@2|@3)]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2)]]
(<Size>)[,(@1|@2)]
(<Size>)[,(@1|@2)]
(<Size>)[,(@1|@2)]
(<Size>)[,(@1|@2),(@1|@2)]
(<Size>)[,(@1|@2)]
(<Size>)[,(@1|@2)]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2|@3)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2|@3)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2),(@1|@2)]]
(<Size>)[,[<lo thresh.>[,<hi thresh.>[,<exp. value>[,<resol.>]]],][(@1|@2)]]
(<Size>)[,[<lo thresh.>[,<hi thresh.>[,<exp. value>[,<resol.>]]],][(@1|@2)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2),(@1|@2)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2)]]
(<Size>)[,[<exp. value>[,<resol.>],][(@1|@2)]]
(<Size>)[,(@1|@2)]
(<Size>)[,(@1|@2)]
[(@1|@2)][,(@1)|@2)]]
(@1) means input A
(@2) means input B
(@3) means input C (RF input option)
(@4) means the rear panel arming input
(@6) means the internal reference
* CNT-91 only
** CNT-90XL only
*** CNT-91 only, in combination with :CONFigure, not :MEASure
Command Reference 8-55
:MEASure :<Measuring Function>?
[8 [<parameters>][ ,(<channels>)]]
Make one measurement
The measure query makes a complete measurement, including configuration and
readout of data. Use measure when you can accept the generic measurement
without fine tuning.
+
When a CONFigure command or MEASure? query is issued, all counter settings
are set to the *RST settings., except those specified as <parameters> and
<channels> in the CONFigure command or MEASure? query.
The :MEASure? query is a compound query identical to:
:ABORt;:CONFigure:<Meas_func>;:READ?
Parameters:
<Measuring Function>, <Parameters> and <Channels> are defined on page 8-54.
You may omit <parameters> and <Channels>, which are then set to default.
Returned format:
<data>¿
Where: The format of the returned data is determined by the format commands: :FORMat and
:FORMat:FIXed.
Example:
SEND® :MEAS:FREQ? 8 (@3)
READ¬ 1.78112526833E+009
This example measures the frequency on the C-input and outputs the result to the
controller.
Type of command:
See also:
Aborts all previous measurement commands if *WAI is not used.
‘Explanations of the Measuring Functions’ starting on page 8-59.
Complies with standards:
SCPI 1991.0, confirmed.
8-56 Command Reference
:MEASure :ARRay :<Measuring Function>?
8 (<array size>)[,[<parameters>] [,(<channels>)]]
Make an array of measurements
The :MEASure:ARRay query differs from the :MEASure query in that it performs
the number of measurements you decide in the <array size> and sends all the
measuring results in one string to the controller.
+
The array size for :MEASure and :CONFigure, and the channels, are expression
data that must be in parentheses ( ).
The :MEASure:ARRay query is a compound query identical to:
:ABORt;:CONFigure:ARRay:<Meas-func> 8 (<array-size>); :READ:ARRay? 8
(<array-size>)
Parameters:
<array size> sets the number of measurements in the array. The maximum number is limited to
10000 due to the physical size of the output buffer. See also FETCH:ARR? and
READ:ARR?
Returned format:
<Measuring result>{[,<measuring result>]}¿
Example:
SEND® :MEAS:ARR:FREQ? 8 (10)
Ten measuring results will be returned.
Type of command:
Aborts all previous measurement commands if not *WAI is used, see page 8-142 .
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-57
:MEASure :MEMory<N>?
Memory Recall, Measure and Fetch Result
Use this command when you want to measure several parameters fast.
:MEAS:MEM1? recalls the contents of memory 1 and reads out the result,
:MEAS:MEM2? recalls the contents of memory two and reads out the result etc.
The equivalent command sequence is *RCL1;READ?
The allowed range for <N> is 1 to 9. Use the somewhat slower
:MEAS:MEMory?8N command described below if you must use memories 10 to
19.
Returned format:
<measurement result>¿
Complies with standards:
SCPI 1991.0, confirmed
:MEASure :MEMory?
8 <N>
Memory Recall, Measure and Fetch Result
Same as above command but somewhat slower. Allows use of all memories (1 to
19).
:MEAS:MEM 8 13
This example recalls the instrument setting in memory number 13, makes a measurement, and fetches the result.
Example:
Complies with standards:
SCPI 1991.0, confirmed
8-58 Command Reference
EXPLANATIONS OF THE MEASURING
FUNCTIONS
This sub-chapter explains the various measurements that can be
done with :MEASure and :CONFigure;:READ?. Only the queries
for single measurements using the measure command are given
here, but all of the information is also valid for the :CONFigure
command and for both scalar (single) and array measurements.
Command Reference 8-59
:MEASure :FREQuency?
[8 [<expected value>[,<resolution>]] [,<(@«1|2|3|4|6»)>]]
Frequency
Traditional frequency measurements. The counter uses the <expected value> and
<resolution> to calculate the Measurement Time (:SENSe:ACQuisition:APERture).
Example:
SEND® :MEAS:FREQ? 8 (@3)
READ¬ 1.78112526833E+009
This example measures the frequency at input C.
+
The channel is expression data and it must be in parentheses ( ).
Parameters:
<expected value> is the expected frequency,
<resolution> is the required resolution.
<(@«1|2|3|4|6»)> is the channel to measure on:
(@1) means input A1
(@2) means input B1
(@3) means input C (RF input option)
(@4) means input E (Rear panel arming input)
(@6) means the internal reference
If you omit the channel, the instrument measures on input A (@1).
1 These channels are prescaled by 2 when measuring frequency, and prescaled by
1 for all other functions. An exception is burst frequency measurements, where you
can choose between the two factors. See the next command and the command
:SENSe:FREQuency:PREScaler:STATe on page 8-94. There is a tradeoff between the minimum number of pulses in a burst and the frequency range.
Complies with standards:
SCPI 1991.0, confirmed.
8-60 Command Reference
:MEASure :FREQuency :BURSt?
[8 [<expected value>[,<resolution>]] [,<(@«1|2|3|4»)>]]
Burst Carrier Frequency
Measures the carrier frequency of a burst. The burst duration must be less than
50% of the pulse repetition frequency (PRF).
How to measure bursts is described in detail in the Operators Manual.
The counter uses <expected value> and <resolution> to select a Measurement
Time ([:SENSe]:ACQuisition:APERture), see page 8-92, and then sets the
sync delay (:FREQuency:BURSt:SYNC:PERiod) to 1.5 * Measurement Time.
See page 8-95.
Parameters:
<expected value> is the expected carrier frequency,
<resolution> is the required resolution, e.g., 1 gives 1Hz resolution.
<(@«1|2|3|4»)> is the measurement channel:
(@1) means input A1
(@2) means input B1
(@3) means input C (RF input, option for CNT-90, standard for CNT-90XL)
(@4) means input E (Rear panel arming input)
If you omit the channel, the instrument measures on input A (@1).
1 The prescaling factor for these channels can be set to 1 or 2 by means of the
command :SENSe:FREQuency:PREScaler:STATe. See page 8-94.
Complies with standards:
CNT-90XL
SCPI 1992.0, confirmed.
:MEASure :FREQuency :POWer [:AC]?
[8(@3)]
Power C
Measures the power of the signal on input C in dBm or W. Use the command
:FREQ:POW:UNIT DBM|W to select measurement unit.
Parameters:
(@3) is the measurement channel number of the RF input C.
It is redundant in this case, as there is no other RF channel available.
Command Reference 8-61
:MEASure :FREQuency :PRF?
[8 [<exp. val.>[,<res.>]][,<(@«1|2|3|4»)>]]
Pulse Repetition Frequency
Measures the PRF (Pulse Repetition Frequency) of a burst signal.The burst duration must be less than 50% of the pulse repetition frequency (PRF).
+
It is better to set up the measurement with the [:SENS]:FUNC “:FREQ:PRF”
command when measuring pulse repetition frequency. This command will allow
you to set a suitable sync delay with the :FREQuency:BURSt:SYNC:PERiod
command.
How to measure bursts is described in detail in the Operators Manual.
Parameters:
<exp. val.> is the expected PRF, <res.> is the required resolution.
<(@«1|2|3|4»)> is the measurement channel:
(@1) means input A
(@2) means input B
(@3) means input C (RF-input option)
(@4) means input E (Rear panel arming input)
If you omit the channel, the instrument measures on input A (@1).
The <expected value> and <resolution> are used to calculate the Measurement
Time ([:SENSe]:ACQuisition:APERture). The Sync. Delay is always 10 ms
(default value)
Complies with standards:
SCPI 1992.0, confirmed.
8-62 Command Reference
:MEASure :FREQuency :RATio?
[8 [<expected value> [,<resolution>]][,<(@«1|2|3»)>,<(@«1|2|3»)>]]
Frequency Ratio
Frequency ratio measurements between two inputs.
Example:
SEND® :MEAS:FREQ:RAT? 8 (@1),(@3)
READ¬ 2.345625764333E+000
This example measures the ratio between input A and input C.
+
The channel is expression data and must be within parentheses ( ).
Parameters:
<expected value> and <resolution> are ignored
<(@«1|2|3»)>,<(@«1|2|3»)> are the measurement channels:
(@1) means input A
(@2) means input B
(@3) means input C (RF input option)
If you omit the channels, the instrument measures between input A and input B.
Complies with standards:
SCPI 1991.0, confirmed.
:MEASure [:VOLT] :NCYCles?
[8 [(@1|@2|@3)]
Number of Cycles in Burst
If :FREQ:BURSt is active, this function measures the number of cycles in each
burst.
Returned format:
<Numeric value (integer)>
Example:
SEND® :MEAS:NCYC? (@3)
READ¬ 2356¿
This example shows a measurement on the RF channel.
+
The channel is expression data and must be within parentheses ( ).
<(@«1|2|3»)>,<(@«1|2|3»)> are the measurement channels:
(@1) means input A
(@2) means input B
(@3) means input C (RF input option)
Command Reference 8-63
:MEASure «:PDUTycycle | :DCYCle»?
[8 [<threshold>] [,(@«1|2»)]]
Positive duty cycle: Duty Factor
Traditional duty cycle measurement is performed. That is, the ratio between the on
time and the off time of the input pulse is measured.
Parameters
<threshold> parameter sets the trigger levels in volts. If omitted, the auto trigger level is set to
50 percent of the signal.
(@«1|2») is the measurement channel:
(@1) means input A
(@2) means input B
If you omit the channel, the instrument measures on input A (@1).
Example:
SEND® MEAS:PDUT?
READ¬ +5.097555E-001
In this example, the duty cycle is 50.97%
Complies with standards:
SCPI 1991.0, confirmed.
:MEASure :NDUTycycle?
[8 [<threshold>] [,(@«1|2»)]]
Negative duty cycle: Duty Factor
Traditional duty cycle measurement is performed. That is, the ratio between the on
time and the off time of the input pulse is measured.
Parameters
<threshold> parameter sets the trigger levels in volts. If omitted, the auto trigger level is set to
50 percent of the signal.
(@«1|2») is the measurement channel:
(@1) means input A
(@2) means input B
If you omit the channel, the instrument measures on input A (@1).
Example:
SEND® MEAS:PDUT?
READ¬ +5.097555E-001
In this example, the duty cycle is 50.97%
Complies with standards:
SCPI 1991.0, confirmed.
8-64 Command Reference
:MEASure [:VOLT] :MAXimum?
[ 8 («@1|@2»)]
Positive Peak Voltage
This command measures the positive peak voltage with the input DC coupled.
Parameters:
(«@1|@2») is the measurement channel
(@1) means input A
(@2) means input B
Complies with standards:
SCPI 1991.0, confirmed.
:MEASure [:VOLT] :MINimum?
[ 8 («@1|@2»)]
Negative Peak Voltage
This command measures the negative peak voltage with the input DC coupled
Parameters:
(«@1|@2») is the measurement channel
(@1) means input A
(@2) means input B
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-65
:MEASure [:VOLT] :PTPeak?
[8 (@«1|2»)].
Peak-to-Peak Voltage
This command measures the peak-to-peak voltage on either main input channel.
Parameters:
(@«1|2») is the measurement channel
(@1) means input A
(@2) means input B
Complies with standards:
SCPI 1991.0, confirmed.
:MEASure [:VOLT] :RATio?
[8(@1|@2),(@1|@2)]
Peak-to-Peak Voltage Ratio in dB
This command measures the peak-to-peak voltage ratio in dB between the selected channels.
Parameters:
(@«1|2») is the measurement channel
(@1) means input A
(@2) means input B
8-66 Command Reference
:MEASure [:VOLT] :PSLEwrate?
[8(@1|@2)]
Positive Slew Rate
This command measures the positive slew rate in V/s on either main input channel.
Parameters:
(@«1|2») is the measurement channel
(@1) means input A
(@2) means input B
:MEASure [:VOLT] :NSLEwrate?
[8(@1|@2)]
Negative Slew Rate
This command measures the negative slew rate in V/s on either main input channel.
Parameters:
(@«1|2») is the measurement channel
(@1) means input A
(@2) means input B
Command Reference 8-67
:MEASure :PERiod?
[8 [<expected value> [,<resolution>]][,<(@«1|2|3»)>]]
Period
A traditional period time measurement is performed on a single period. Measuring
time set by the :ACQ:APER command does not affect the measurement.
The <expected value> and <resolution> are used to calculate the Measurement
Time ([:SENSe]:ACQuisition:APERture).
Parameters:
<expected value> is the expected Period,
<resolution> is the required resolution,
<(@«1|2|3»)> is the measurement channel:
(@1) means input A
(@2) means input B
(@3) means input C (RF input option)
If you omit the channel, the instrument measures on input A (@1).
Complies with standards:
SCPI 1991.0, confirmed.
:MEASure :PERiod :AVERage?
[8 [<expected value> [,<resolution>]][,<(@«1|2|3»)>]]
Period
A traditional period time measurement is performed on multiple periods. Measuring
time set by the :ACQ:APER command determines the resolution.
The <expected value> and <resolution> are used to calculate the Measurement
Time ([:SENSe]:ACQuisition:APERture).
Parameters:
<expected value> is the expected Period,
<resolution> is the required resolution,
<(@«1|2|3»)> is the measurement channel:
(@1) means input A
(@2) means input B
(@3) means input C (RF input option)
If you omit the channel, the instrument measures on input A (@1).
Complies with standards:
SCPI 1991.0, confirmed.
8-68 Command Reference
:MEASure :PHASe?
[8 [<expected value>[,<resolution>]] [,(@«1|2»),(@«1|2»)]]
Phase
A traditional PHASe measurement is performed.
Parameters:
<expected value> and <resolution> are ignored by the counter
The first (@«1|2») is the start channel and the second (@«1|2») is the stop channel
(@1) means input A
(@2) means input B
If you omit the channel, the instrument measures between input A and input B.
Complies with standards:
SCPI 1991-0, approved.
:MEASure «:RISE :TIME | :RTIM»?
[8 [<lower threshold> [,<upper threshold>[,<expected value>[,<resolution>]]]] [,(@1|@2)]
Rise Time
The transition time from 10% to 90% of the signal amplitude is measured.The measurement is always a single measurement and the Auto-trigger is always on, setting the trigger levels to 10% and 90 % of the amplitude. If you need an average
transition time measurement or other trigger levels, use the :SENSe subsystem
and manually set trigger levels instead.
Parameters:
<lower threshold>, <upper threshold>, <expected value> and <resolution are all ignored by
the counter
<(@1)>or<(@2) is the measurement channel, i.e., input A or input B.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-69
:MEASure «:FALL :TIME | :FTIM»?
[8 [<lower threshold> [,<upper threshold>[,<expected value>[,<resolution>]]]]
[,(@1|@2)]]
Fall Time
The transition time from 90% to 10% of the signal amplitude is measured.
The measurement is always a single measurement and the Auto-trigger is always
on, setting the trigger levels to 90% and 10 % of the amplitude. If you need an average transition time measurement, or other trigger levels, use the :SENSe subsystem and manually set trigger levels instead.
Parameters:
<lower threshold>, <upper threshold>, <expected value> and <resolution> are all ignored by
the counter
<(@1)> or <(@2)> is the measurement channel, i.e. input A or input B.
Complies with standards:
SCPI 1991.0, confirmed.
:MEASure :TINTerval?
8 (@«1|2»),(@«1|2»)]
Time Interval
Traditional time-interval measurements are performed. The trigger levels are set
automatically, and positive slope is used. The first channel in the channel list is the
start channel, and the second is the stop channel.
Parameters:
The first (@«1|2|4») is the start channel and the second (@«1|2|4») is the stop channel
(@1) means input A
(@2) means input B
If you omit the channel, input A is the start channel, and input B is the stop channel.
8-70 Command Reference
:MEASure :PWIDth?
[8 [<threshold>] [,<(@«1|2»)>]]
Positive Pulse Width
A positive pulse width measurement is performed.
This is always a single measurement. If you need an average pulse width measurement, use the :SENSe subsystem instead.
Parameters
<threshold> parameter sets the trigger levels in volts. If omitted, the auto trigger level is set to
50 percent of the signal.
<(@«1|2»)> is the measurement channel:
(@1) means input A
(@2) means input B
If you omit the channel, the instrument measures on input A.
Complies with standards:
SCPI 1991.0, confirmed.
:MEASure :NWIDth?
[8 [<threshold>] [,<(@«1|2»)>]]
Negative Pulse Width
A negative pulse width measurement is performed.
This is always a single measurement. If you need an average pulse width measurement, use the :SENSe subsystem instead.
Parameters
<threshold> parameter sets the trigger levels in volts. If omitted, the auto trigger level is set to
50 percent of the signal.
<(@«1|2»)> is the measurement channel:
(@1) means input A
(@2) means input B
If you omit the channel, the instrument measures on input A.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-71
:MEASure :ARRay :STSTamp?
8(<array size>)[,(@1)|(@2)]
CNT-91
Single Time Stamp
A time stamp (TS) is taken of the trigger level crossing on the selected input channel. The commands :MEAS and :CONF automatically invoke :FORM:TINF ON to
get the time stamp data, but when :FUNC is used instead, you should normally let
it be preceded by the :FORMat:TINFormation ON command explicitly. Otherwise
the TS1 values will be omitted. See Returned format below.
The deadtime to the next TS is due to pacing and interpolator calibration and can
go down to 4 µs. The X counter records the number of trigger level crossings.
Depending on the state of the command :FORMat:TINFormation, one or two values are output for each TS. If OFF, only the content of the X counter at the
timestamp is output. If ON, both the X counter and the TS value are read and output as two values, separated by a comma in ASCII and REAL mode.
Parameters
Array size is the number of TS. One TS can contain 1or 2 numeric values depending on the state of the :FORM:TINF command.
Returned Format:
<number of trg lvl crossings>,(<TS for trg lvl crossing>,)...deadtime...<number of
trg lvl crossings>,(<TS for trg lvl crossing>,)...deadtime...etc.
The format is set by the :FORMat command, and the data in parentheses is sent if
:FORM:TINF ON is active.
1
TS is the time stamp value in seconds since a certain start event that is not available for external control. Consequently the TS values can only be used for relative
time measurements.
8-72 Command Reference
:MEASure :ARRay :TSTAmp?
8(<array size>)[,(@1)|(@2)]
Time Stamp
Time stamps are taken of all positive and negative trigger level crossings of the selected input channel. The commands :MEAS and :CONF automatically invoke
:FORMat:TINFormation ON to get the time stamp data, but when :FUNC is used
instead, you should normally let it be preceded by the :FORMat:TINFormation ON
command explicitly. Otherwise the TS1 values will be omitted. See Returned format
below.
Measurements are performed in groups of four TS results, two positive and two
negative, with no deadtime between the values. Deadtime between groups is affected by pacing and interpolator calibration, down to 4 ms.
Measurement results of 0 indicate negative trigger level crossings, whereas positive values indicate the number of positive trigger level crossings since the last reset.
Parameters:
<array size> sets the number of samples. One complete group requires an array
size of 4. It can contain 4 or 8 numeric values depending on whether :FORMat:TINFormation is OFF or ON. See the first paragraph above.
Returned format:
<zero result>,<TS for neg. crossing>,<number of pos. crossings>,<TS for pos.
crossing>,<zero result>,<TS for neg. crossing>,<number of pos. crossings>,<TS
for pos. crossing>...deadtime...<zero result>,<TS for neg. crossing>... etc.
1
TS is the time stamp value in seconds since a certain start event that is not available for external control. Consequently the TS values can only be used for relative
time measurements.
Command Reference 8-73
:MEASure: ARRay: FREQuency: BTBack?
8(<array size>)[,(@1)|(@2)]
CNT-91
Frequency Back-to-Back
This is the inverse function of Period Back-to-Back. See below. In STATISTICS
mode measurement time is used for pacing the time stamps. The pacing parameter
is not used in this case. Thus a series of consecutive frequency average measurements without dead time can be made in order to fulfil the requirements for correct
calculation of Allan variance or deviation.
Parameters
<array size> sets the number of samples.
(@1)|(@2) is the measurement channel:
(@1) means input A
(@2) means input B
:MEASure: ARRay: PERiod: BTBack?
8(<array size>)[,(@1)|(@2)]
CNT-91
Single Period Back-to-Back
Every positive or negative zero crossing (depending on the selected slope) up to
the maximum frequency (125 kHz with interpolator calibration ON or 250 kHz with
interpolator calibration OFF) is time-stamped. For every new time stamp the previous value is subtracted from the current value, and the result is stored.
In STATISTICS mode the array contains all periods up to the maximum input frequency (see above). For higher frequencies the average period time during the 4
or 8 µs observation time is stored. So, for higher frequencies the actual function is
rather Period Average Back-to-Back.
The main purpose of this function is to make continuous measurements of relatively long period times without losing single periods due to result processing. A
typical example is the 1-pps timebase output from GPS receivers.
Parameters
<array size> sets the number of samples.
(@1)|(@2) is the measurement channel:
(@1) means input A
(@2) means input B
8-74 Command Reference
CNT-91
:MEASure: ARRay: TIError?
8 (array size)[,[<exp value>[,<resol>],][(@1|(@2)]]
Time Interval Error (TIE)
This command automatically performs TIE measurements on clock signals from a
predefined collection of system frequencies. See list on page 8-100.
TIE is defined as positive and increasing if the measured frequency exceeds the
reference frequency.
Command Reference 8-75
This page is intentionally left blank.
8-76 Command Reference
Memory Subsystem
:MEMory
:DATA
:RECord
:COUNt? 8 [<Dataset Number>]
:DELete 8 <Dataset Number>
:FETCh? 8 <Dataset Number>
:ARRay? 8 <Dataset Number>,<Number
:STARt 8 <Dataset Number>
:NAME? 8 [<Dataset Number>]
:SAVE 8 <Dataset Number>[,<Label>]
:SETTings? 8 <Dataset Number>
:DELete
:FREE
:MACRo 8
:MACRo?
‘<Macro name>’
:NSTates?
Related Common Commands:
*DMC
*EMC
*GMC?
*LMC?
*LRN?
*PMC
*RCL
*RMC
*SAV
8-77 Command Reference
of Samples>|MAX
:MEMory :DATA :RECord :COUNt?
8 [<Dataset Number>]
Number of Samples in Dataset
If the optional <Dataset Number> parameter is specified, the command returns the
number of samples in the corresponding FLASH memory position 0-7.
If no parameter is specified, a comma-separated list is returned, containing the
number of samples in each of the eight FLASH memory positions 0-7.
:MEMory :DATA :RECord :DELete
8 <Dataset Number>
Erase Dataset
The command erases the measurement data array in the FLASH memory position
with the number (0-7) given in the command parameter <Dataset Number>.
8-78 Command Reference
:MEMory :DATA :RECord :FETCh?
8 <Dataset Number>
Fetch Sample in Dataset
The command fetches one sample from the FLASH memory position with the number (0-7) given in the command parameter <Dataset Number>.
Set the start position with the command :MEMory:DATA:RECord:FETCh:STARt.
:MEMory :DATA :RECord :FETCh :ARRay?
8 <Dataset Number>,<Number of Samples>|MAXimum
Fetch Array of Samples in Dataset
The command fetches an array of samples from the FLASH memory position with
the number (0-7) given in the command parameter <Dataset Number>.
You can either specify the number of samples to be fetched or get all samples (up
to 32000) by using the MAXimum parameter.
Command Reference 8-79
:MEMory :DATA :RECord :FETCh :STARt
8 <Dataset Number>
Set Start Position for Dataset Fetch
The data pointer is set to the first sample in the Dataset entered as a number (0-7)
in the command parameter <Dataset Number>.
:MEMory :DATA :RECord :NAME?
8 [<Dataset Number>]
Get Name of Dataset
If the optional <Dataset Number> parameter is specified, the command returns the
name assigned to the Dataset.
If no parameter is given, the command returns a comma-separated list of all
Dataset Names.
8-80 Command Reference
:MEMory :DATA :RECord :SAVE
8 <Dataset Number>[,<Label>]
Save Measurement Data Array to Internal FLASH Memory
One of the eight (0-7) memory positions must be entered, but you can also enter
an optional name (max 6 characters) for easier recognition.
A default name will be assigned automatically if you omit the <Label> parameter. It
represents the abbreviated measurement function and the channel. For example:
Period Single A will read PerA.
If the instrument is not in Hold when this command is sent, then Execution Error
(-200) will be placed in the error queue.
If the instrument is not in Statistics Mode when this command is sent, then Settings
Conflict Error (-221) will be placed in the error queue.
If specified <Dataset> already contains data, then Directory Full Error (-255) will be
placed in the error queue.
If there are more than 32000 samples to save, only the last 32000 will be saved
without notification to the operator.
:MEMory :DATA :RECord :SETTings?
8 <Dataset Number>
Recall Instrument Settings Used for Specified Dataset
The command returns the instrument settings used when the specified <Dataset>
was saved. The format is the same as for :SYSTem:SET.
Command Reference 8-81
:MEMory :DELete :MACRo
8 ‘<Macro name>’
Delete one Macro
This command removes an individual MACRo1.
Parameters
‘<Macro name>’ is the name of the macro you want to delete.
+
<Macro name> is String data that must be surrounded by quotation marks.
See also:
*PMC, if you want to delete all macros.
1 The IEEE488.2 command *RMC (Remove Macro command) will also work. It
performs exactly the same action as :MEMory:DELete:MACRo.
:MEMory :FREE :MACRo?
Memory Free for Macros
This command gives information of the free memory available for MACRos in the
counter. If no macros are specified, 1160 bytes are available.
Returned format:
<Bytes available>, <Bytes used>¿
Complies with standards:
SCPI 1991.0, confirmed.
8-82 Command Reference
:MEMory :NSTates?
Memory States
The Number of States query (only) requests the number of *SAV/ *RCL instrument
setting memory states available in the counter. The counter responds with a value
that is one greater than the maximum that can be sent as a parameter to the *SAV
and *RCL commands. (States are numbered from 0 to max–1.)
Returned format:
<the number of states available>¿
Complies with standards:
SCPI 1991.0, confirmed
Command Reference 8-83
This page is intentionally left blank.
8-84 Command Reference
Output Subsystem
Control the pulse output (CNT-91 only)
:OUTPut
:POLarity
:TYPE
8 NORMal | INVerted *
8 PULSe | GATE | ALARm | OFF
* Only for ALARM, “high” is NORMAL
+
See SOURCE Subsystem on page 8-103 for time parameter setting commands.
Command Reference 8-85
:OUTPut :POLarity
8 NORMal | INVerted
CNT-91
Output Polarity
The command controls the polarity of the pulse output, but only if it is configured
as an alarm circuit. See also the command :OUTPut:TYPE.
Parameters
NORMal means that the output level is high when the alarm has been activated.
INVerted means that the output level is low when the alarm has been activated.
The output amplitude is fixed at TTL levels in 50 W.
:OUTPut :TYPE
8 PULSe | GATE | ALARm | OFF
CNT-91
Output Configuration
The command controls the rear panel pulse output configuration.
Parameters
PULSe means that the output serves as a fixed TTL level pulse generator.
Note: See SOURCE Subsystem on page 8-103 for time parameter setting commands.
GATE (low level) means that the output signals a pending measurement.
ALARm (low or high level) means that the output indicates an alarm condition.
Note: See command :OUTPut:POLarity to change the active polarity.
OFF (low level) means no activity.
8-86 Command Reference
Read Function
Perform Measurement and Read Data
:READ
[:SCALar]?
:ARRay? 8
<Array Size>|MAX
Command Reference 8-87
:READ?
Read one Result
The read function performs new measurements and reads out a measuring result
without reprogramming the counter. Using the :READ? query in conjunction with
the :CONFigure command gives you a measure capability where you can fine tune
the measurement.
If the counter is set up to do an array of measurements, :READ? makes all the
measurements in the array, stores the results in the output buffer, and fetches the
first measuring result. Use FETCh? to fetch other measuring results from the output buffer. The :READ? query is identical to :ABORt;:INITiate;:FETCh?
<data>¿
The format of the returned data is determined by the format commands :FORMat
and FORMat:FIXed.
Returned format:
Example:
SEND® :CONF:FREQ;:INP:FILT 8 ON;:READ?
This example configures the counter to make a standard frequency measurement
with the 100 kHz filter on. The counter is triggered, and data from the measurement are read out with the :READ? query.
SEND® :READ?
This makes a new measurement and fetches the result without changing the programming of the counter.
Type of command:
Aborts all previous measurement commands if *WAI is not used. See
page 8-142.
Complies with standards:
SCPI 1991.0, confirmed.
8-88 Command Reference
:READ :ARRay?
8 «<array size for FETCh>|MAX»
Read an array of results
The :READ:ARRay? query differs from the :READ? query by reading out several
results at once after making the number of measurements previously set up by
:CONFigure:ARRay 8 or 8 :MEASure:ARRAy?.
The :READ:ARRay? query is identical to:
:ABORt;:INITiate;:FETCh:ARRay?_<array size for FETCh>
+
The <array size for FETCh> does not tell :READ to make that many measurements, only to fetch that many results. :CONF:ARR, 8 :MEAS:ARR,
:ARM:LAY1:COUN or :TRIG:LAY1:COUN sets the number of measurements.
Parameters:
<array size for FETCh> sets the number of measurement results in the array. The size must be
equal to or less than the number of measurements in the output buffer. The maximum
limit is 10000 due to the physical size of the output buffer.
MAX means that all the results in the output buffer will be fetched.
<data>[,<data>]¿
The format of the returned data is determined by the format commands :FORMat
and :FORMat:FIXed.
Returned format:
SEND® :ARM:COUN 8 10;:READ:ARR? 8 5
This example configures the counter to make an array of 10 standard measurements. The counter is triggered and data from the first five measurements are read
out with the :READ? query.
Type of command:
+
Aborts all previous measurement commands if *WAI is not used.
You cannot combine Statistics with array readouts, so if you want to store and
fetch individual values in a block measurement, you have to make sure the default command :CALC:AVER:STATE OFF is active.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-89
This page is intentionally left blank.
8-90 Command Reference
Sense Command Subsystem
n Sense Subsystem Command Tree
[:SENSe]
:ACQuisition
8 <meas time> | MIN | MAX
:APERture
:HOFF
8
8
8
8
[:STATe]
:MODE
:TIME
:AUTO
:FREQuency
ON | OFF
TIME
<numeric value> | MIN | MAX
ONCE
:BURSt
:APERture
:STARt
:DELay
:SYNC
:PERiod
:PREScaler
[:STATe]
:POWer
:UNIT *
:RANGe
:LOWer
:REGRession
:FUNCtion
:HF
8 <numeric value> | MIN | MAX
8 <numeric value> | MIN | MAX
8 <numeric value> | MIN | MAX
8 ON | OFF
8 DBM | W
8 <Miinimum frequency for autotrigger> | MIN | MAX
8 ON | OFF | AUTO
8 ‘Measuring function [ Primary channel [ , Secondary channel ] ]
:ACQuisition
[:STATe] *
:FREQuency
:CENTer *
:ROSCillator
:SOURce
:TIError
:FREQuency
:AUTO
:TINTerval
:AUTO
:TOTalize
8 <boolean>
8 <numeric value>
8 INTernal | EXTernal
8 <numeric value>
8 ON | OFF
8 ON | OFF
:GATE
[:STATe]
8 ON | OFF
* CNT-90XL only
Command Reference 8-91
:ACQuisition :APERture
8 «<Decimal value > | MIN | MAX»
Set the Measurement Time
Sets the gate time for one measurement.
<decimal value> is 20 ns to 1000 s.
MIN gives 20 ns and MAX gives 1000 s.
Parameters:
Returned format:
<Decimal value >¿
*RST condition:
10 ms
SYST:PRESet condition:
200 ms
:ACQuisition :HOFF
8 <boolean>
Hold Off On/Off
Switches the Hold Off function On/Off.
Parameters:
<Boolean> = 1 / ON | 0 / OFF
Returned format:
1 | 0¿
*RST condition:
OFF
8-92 Command Reference
:ACQuisition :HOFF :TIME
8 «<Decimal value> | MIN | MAX»
Hold Off Time
Sets the Hold Off time value.
Parameters:
<Decimal data> = a number between 20E–9 and 2.0
Returned format:
<Decimal value>¿
*RST condition:
200 ms
:AUTO
8 ONCE | PRESet
Autoset from the Bus
Performs the same task as the front panel button AUTO SET.
Parameters:
ONCE corresponds to pressing AUTO SET once.
PRESet corresponds to double-clicking AUTO SET.
Command Reference 8-93
:FREQuency :BURSt :APERture
8 «<Numeric value>|MIN|MAX»
Burst Measuring Time
Sets the time length within a burst during which the burst frequency is measured.
Parameters:
<Numeric value> = a number between 20 ns and 2 s.
Returned format:
*RST condition:
<Numeric value>¿
200 ms
:FREQuency :BURSt :PREScaler [:STATe]
8 <Boolean>
Prescaler ¸2 on Input A & Input B
The burst frequency limit is 300 MHz if the prescaler is ON and 160 MHz if it is
OFF.
Parameters:
<Boolean> = (1/ON | 0/OFF)
Returned format:
1 | 0¿
*RST condition:
ON
8-94 Command Reference
:FREQuency :BURSt :STARt :DELay
8 «<Numeric value>|MIN|MAX»
Burst Start Delay
Sets the burst start delay, i.e. the time length between the burst start and the actual
start of the burst measuring time. This parameter is used for controlling the point of
time when a measurement sample is taken.
Parameters:
<Numeric value> = a number between 20 ns and 2 s.
Returned format:
*RST condition:
<Numeric value>¿
200 ms
:FREQuency :BURSt :SYNC :PERiod
8 «<Numeric value>|MIN|MAX»
Burst Sync Delay
Sets the synchronization delay time used in burst measurements. A correct value
should be longer than the burst time and shorter than 1/PRF, i.e. the inverse of the
pulse repetition frequency.
Parameters:
<Numeric value> = a number between 1*10-6 and 2 s.
Returned format:
<Numeric value>¿
*RST condition:
400 ms
Command Reference 8-95
:FREQuency :POWer :UNIT
CNT-90XL
8 DBM|W
Input C Measurement Unit
Selects dBm or W as the basic measurement unit to be displayed or read out.
Parameters:
DBM | W
The reference level 0 dBm is 1 mW in 50 W. Increasing the level by 3 dB means doubling the
power. Decreasing the level by 3 dB means halving the power.
Returned format:
DBM | W ¿
*RST condition:
DBM
:FREQuency :RANGe :LOWer
8 «<Numeric value>|MIN|MAX»
High Speed Voltage Measurements
Use this command to speed up voltage measurements and Autotrigger functions
when you don’t need to measure on low frequencies.
Time to determine trigger levels (typical)
Min. frequency limit
(1 Hz)
Default
(100 Hz)
Max. frequency limit
(50 kHz)
8s
80 ms
20 ms
Parameters:
<Numeric value> between 1 and 50000 (Hz)
MIN gives 1 Hz
MAX gives 50 kHz
Returned format:
<Numeric value>¿
*RST condition:
100 (Hz)
Complies with standards:
SCPI 1991.0, confirmed.
8-96 Command Reference
:FREQuency :REGRession
8 ON|OFF|AUTO
Smart Frequency
Despite its name, this command also applies to Period Average.
By means of continuous time stamping and linear regression analysis, the resolution compared to a “normal” reciprocal counter is improved by one or two digits for
measuring times between 200 ms and 100 s.
Not all combinatons of settings will work:
In local mode (front panel control), this function may be overridden by the firmware:
Measurement time < 16 us: On is changed to Auto(Off)
Measurement time > 2.5 s: Off is changed to Auto(On)
External arming: On is changed to Auto(Off)
An info box pops up explaining this.
In remote mode (bus control), no consistency checks are made until you try to issue an INITiate command. If, at that time, the settings are inconsistent, you get a
"Settings conflict" error, and the measurement will not start.
*RST condition:
AUTO
:FUNCtion
8 ‘<Measuring function>[_<Primary channel> [,<Secondary channel>]]’
Select Measuring Function
Selects which measuring function is to be performed and on which channel(s) the
instrument should measure.
Parameters:
<Measuring function> is the function you want to select, according to the SENSe subsystem
command trees on page 8-91.
<Primary channel> is the channel used in all single-channel measurements and the main
channel in dual-channel measurements.
<Secondary channel> is the ‘other’ channel in dual-channel measurements. Only the primary
channel may be programmed for all single channel measurements.
The measuring function and the channels together form one <String> that must
be placed within quotation marks.
+
Returned format:
“<Measuring function>_<Primary channel>[,<Secondary channel>]”¿
Example Select a pulse period measurement on input A (channel 1):
Send ® :FUNC 8 ‘PER 8 1’
*RST condition:
FREQuency_1
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-97
n Functions and Channels
:FREQuency [ :CW ]
:FREQuency [ :CW ] :RATio
:FREQuency:BTBack
:FREQuency :BURSt
:FREQuency :PRF
[8
[8
[8
[8
[8
‘1|2|3|4|6‘]
‘1|2|3,1|2|3‘]
‘1|2‘]
‘1|2|3‘]
‘1|2|3‘]
:NCYCles
:PDUTycycle|:DCYCle
:NDUTycycle
[8
[8
[8
‘1|2|3‘]
‘1|2‘]
‘1|2‘]
:PERiod
:PERiod:BTBack
:PERiod:AVERage
:PHASe
[8
[8
[8
[8
‘1|2|3‘]
‘1|2‘]
‘1|2|3‘]
‘1|2,1|2‘]
:PSLEwrate
:NSLEwrate
[8
[8
‘1|2‘]
‘1|2‘]
:RISE:TIME|:RTIM
:FALL:TIME|:FTIM
[8
[8
‘1|2‘]
‘1|2‘]
:PWIDth
:NWIDth
[8
[8
‘1|2‘]
‘1|2‘]
:TINTerval
[8
‘1|2,1|2‘]
:STSTamp
:TSTAmp
[8
[8
‘1|2‘]
‘1|2‘]
[:VOLT]:MAXimum
[:VOLT]:MINimum
[:VOLT]:PTPeak
[:VOLT]:RATIO
[8
[8
[8
[8
‘1|2‘]
‘1|2‘]
‘1|2‘]
‘1|2,1|2‘]
n Input Channels
1
means input A
2
means input B
3
means input C (RF input option)
4
means input E (rear panel arming input)
6
means the internal reference
8-98 Command Reference
:HF :ACQuisition [:STATe]
CNT-90XL
8 <Boolean>
Input C Acquisition ON/OFF
Switches the automatic acquisition system ON or OFF. ON means Automatic Acquisition, OFF means Manual Acquisition. When the instrument is switched from
remote to local operation, Automatic Acquisition mode is entered, irrespective of
the previous remote setting.
Parameters:
<Boolean> = «1 | ON» | «0 | OFF»
Returned format:
*RST condition:
1|0¿
ON
:HF :FREQuency :CENTer
CNT-90XL
8 <Numeric value>
Center Frequency
Sets the center frequency value for the RF input and is used when Manual Acquisition has been selected.
8
9
9
<Numeric value> = a number between 3*10 (Hz) and 27*10 , 40*10 ,
9
46*10 or 60*10 (Hz), depending on the model number -27G, -40G, -46G or -60G
respectively.
Parameters:
9
Returned format:
<Numeric value>¿
*RST condition:
300 MHz
Command Reference 8-99
:ROSCillator :SOURce
8 «INT|EXT|AUTO»
Select Reference Oscillator
Selects the signal from the external reference input as timebase instead of the internal timebase oscillator. If the parameter is set to the default value AUTO,
external reference will be used, if present.
Returned format:
<INT|EXT|AUTO>¿
*RST condition:
AUTO
Complies with standards:
SCPI 1991.0, confirmed.
:TIError :FREQuency :AUTO
8 «ON|OFF»
CNT-91
Automatic Recognition of Basic Frequency for TIE Measurement
If AUTO is ON, a check measurement is made at the start of the block to determine if the frequency of the input signal, rounded to 4 significant digits, is listed for
automatic recognition, for instance:
4, 8, 15.75, 64 kHz or
1.544, 2.048, 5, 10, 27, 34, 45, 52 MHz
If the command is successful, the found value will be stored and can be recalled
with a query command. Subsequent TIE measurements will use this value until it is
changed by sending this command once more or by sending the setting command
:TIError:FREQuency 8 <Numeric value>, which will deliberately fix the frequency.
Returned format:
*RST condition:
1 | 0¿
OFF¿
8-100 Command Reference
:TIError :FREQuency
CNT-91
8 <Numeric value>
Set Basic TIE Frequency
An arbitrary frequency in the range 1 Hz to 100 MHz can be entered (increment =
1 Hz). Subsequent TIE measurements are made by continuous timestamping of
the input signal and the internal/external timebase clock. Observations of Wander,
for instance, can easily be made by means of this command and the function
:MEASure:ARRay:TIError? in conjunction with the built-in statistics/graphics facilities.
Parameter:
<Numeric value> = a number between 1 and 100*106 Hz in 1 Hz increments.
:TINTerval :AUTO
8 «Boolean»
Smart Time Interval
By means of 4 time stamps (2 on each channel), the counter can determine which
event precedes the other. Thus you don’t have to set aside Input A as the start
channel.
Command Reference 8-101
:TOTalize :GATE
8 ON | OFF
CNT-91
Control the GATE in Totalize Manual Mode
Open/closes the gate for :CONFigure:TOTalize[:CONTinuous].
+
Before opening the gate with this command, the counter must be in the ‘continuously initiated’ state (:INIT:CONT 8 ON), or else the totalizing will not start.
Parameters:
<Boolean> = (1 / ON | 0 / OFF)
Returned format:
<Boolean>¿
Example:
Send ® :CONF:TOT 8 (@1),(@2) // Select totalizing on inputs A & B and reset
registers
Send ® :INIT:CONT 8 ON;TOT:GATE 8 ON // Initiate totalizing
Read ¬ :FETCh:ARRay? 8 -1 // Read intermediate results (A & B)
Send ® TOT:GATE 8 OFF // Stop totalizing
Send ® TOT:GATE 8 ON // Start totalizing and accumulate results
Send ® TOT:GATE 8 OFF // Stop totalizing
Read ¬ :FETCh:ARRay? 8 -1 // Read final results (separated by a comma)
*RST condition:
OFF
8-102 Command Reference
Source Subsystem
Set Time Parameters for Pulse Output (CNT-91 only)
:SOURce
:PULSe
:PERiod 8
:WIDTh 8
<Numeric value>
<Numeric value>
Command Reference 8-103
:SOURce :PULSe :PERiod
8 <Numeric value>
CNT-91
Set Pulse Period
The pulse generator time parameters are activated when the output type is configured to PULSe using the :OUTPut command. See page 8-85.
Parameter:
<Numeric value> = a number between 20*10-9 and 2 s in 10 ns increments.
:SOURce :PULSe :WIDTh
8 <Numeric value>
CNT-91
Set Pulse Width
The pulse generator time parameters are activated when the output type is configured to PULSe using the :OUTPut command. See page 8-85.
Parameter:
<Numeric value> = a number between 10*10-9 and <2 s in 10 ns increments.
8-104 Command Reference
Status Subsystem
:STATus
:DREGister0
:ENABle
[:EVENt]?
8 <bit mask>
:OPERation
:CONDition?
:ENABle
[:EVENt]?
8 <bit mask>
:QUEStionable
:CONDition?
:ENABle
[:EVENt]?
8 <bit mask>
:PRESet
n Related Common Commands:
*CLS
*ESE
*ESR?
*PSC
*SRE
*STB?
8 <bit mask>
8 <bit mask>
8 <bit mask>
Command Reference 8-105
:STATus :DREGister0?
Read Device Status Event Register
This query reads out the contents of the Device Event Register. Reading the Device Event Register clears the register. See Figure 6-10.
Returned format:
<dec.data> = the sum (between 0 and 6) of all bits that are true. See table below:
Bit No.
Weight
Condition
4
16
Rubidium oscillator unlocked.1
3
8
Rubidium oscillator locked.1
2
4
Last measurement below low limit.
1
2
Last measurement above high limit.
1
FW checks the oscillator status approximately once every 10 to 20 ms, sometimes
less frequently depending on the CPU interrupt priority handling, and sets or clears
these bits. The operator can utilize these bits in the same way as other status bits,
i.e. wait for event, read status etc.
:STATus :DREGister0 :ENABle
8 <bit mask>
Enable Device Status Reporting
This command sets the enable bit of the Device Register 0.
Parameters:
<dec.data> = the sum (between 0 and 6) of all bits that are true. See table below:
Bit No.
Weight
Condition
2
4
Enable monitoring of low limit
1
2
Enable monitoring of high limit
Returned format:
<bit mask>¿
8-106 Command Reference
:STATus :OPERation :CONDition?
Read Operation Status Condition Register
Reads out the contents of the operation status condition register. This register reflects the state of the measurement process. See table below.
Returned Format:
<Decimal data> = the sum (between 0 and 368) of all bits that are true. See table below:
Bit No.
Weight
Condition
11
2048
Computing statistics
10
1024
In limit
9
512
Using internal reference
8
256
Meas. stopped / Computing statistics (in compatibility mode)
6
64
Waiting for bus arming
5
32
Waiting for triggering and / or external arming
4
16
Measurement started
0
1
Complies with standards:
Calibrating
SCPI 1991.0, confirmed.
Command Reference 8-107
:STATus :OPERation :ENABle
8 <Decimal data>
Enable Operation Status Reporting
Sets the enable bits of the operation status enable register. This enable register
contains a mask value for the bits to be enabled in the operation status event register. A bit that is set true in the enable register enables the corresponding bit in the
status register. See figure on page 8-107.
An enabled bit will set bit #7, OPR (Operation Status Bit), in the Status Byte Register if the enabled event occurs. See also status reporting on page 3-10.
Power-on will clear this register if power-on clearing is enabled via *PSC.
<dec.data> = the sum (between 0 and 368) of all bits that are true. See table below:
Parameters:
Bit No.
Weight
8
256
No measurement
6
64
Waiting for bus arming
5
32
Waiting for triggering and/or external arming
4
16
Measurement
Returned Format:
Condition
<Decimal data>¿
Example:
SEND® :STAT:OPER:ENAB 8 288
In this example, waiting for triggering, bit 5, and Measurement stopped, bit 8, will
set the OPR-bit of the Status Byte. (This method is faster than using *OPC if you
want to know when the measurement is ready.)
Complies with standards:
SCPI 1991.0, confirmed.
8-108 Command Reference
:STATus: OPERation?
Read Operation Status, Event
Reads out the contents of the operation event status register. Reading the Operation Event Register clears the register. See figure on page 8-107.
Returned Format:
<Decimal data>¿
<dec.data> = the sum (between 0 and 368) of all bits that are true. See table on page 8-108.
Complies with standards:
SCPI 1991.0, confirmed.
:STATus :PRESet
Enable Device Status Reporting
This command has an SCPI standardized effect on the status data structures. The
purpose is to precondition these toward reporting only device-dependent status
data.
– It only affects enable registers. It does not change event and condition registers.
– The IEEE-488.2 enable registers, which are handled with the common commands *SRE and
*ESE remain unchanged.
– The command sets or clears all other enable registers. Those relevant for this counter are as
follows:
– It sets all bits of the Device status Enable Registers to 1.
– It sets all bits of the Questionable Data Status Enable Registers and the Operation Status Enable Registers to 0.
– The following registers never change in the counter, but they do conform to the standard
:STATus:PRESet values.
– All bits in the positive transition filters of Questionable Data and Operation status registers
are 1.
– All bits in the negative transition filters of Questionable Data and Operation status registers
are 0.
Command Reference 8-109
:STATus :QUEStionable :CONDition?
Read Questionable Data/Signal Condition Register
Reads out the contents of the status questionable condition register.
Returned Format:
<dec.data> = the sum (between 0 and 17920) of all bits that are true. See table below:
Bit No.
Weight
Condition
14
16384
Unexpected parameter
11
2048
Out of limit
10
1024
Measurement timeout / Out of limit (in compatibility mode)
9
512
Overflow
8
256
Calibration error
6
64
Phase interpolation calibration off
5
32
Frequency interpolation calibration off
2
4
Complies with standards:
Time interpolation calibration off
SCPI 1991.0, confirmed.
8-110 Command Reference
:STATus :QUEStionable :ENABle
8 <Decimal data>
Enable Questionable Data/Signal Status Reporting
Sets the enable bits of the status questionable enable register. This enable register
contains a mask value for the bits to be enabled in the status questionable event
register. A bit that is set true in the enable register enables the corresponding bit in
the status register. See figure on page 8-110.
An enabled bit will set bit #3, QUE (Questionable Status Bit), in the Status Byte
Register if the enabled event occurs. See also status reporting on page 3-10.
Power-on will clear this register if power-on clearing is enabled via *PSC.
Parameters:
<dec.data> = the sum (between 0 and 17920) of all bits that are true. See the table on page
8-110.
Returned Format:
<Decimal data> ¿
Example:
Send ® :STAT:QUES:ENAB 8 16896
In this example, both ‘unexpected parameter’ bit 14, and ‘overflow’ bit 8, will set the
QUE-bit of the Status Byte when a questionable status occurs.
Complies with standards:
SCPI 1991.0, confirmed.
:STATus :QUEStionable?
Read Questionable Data/Signal Event Register
Reads out the contents of the status questionable event register. Reading the
Status Questionable Event Register clears the register. See figure on page 8-110.
Returned Format:
<dec.data> = the sum (between 0 and 17920) of all bits that are true. See the table on page
8-110.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-111
This page is intentionally left blank.
8-112 Command Reference
System Subsystem
:SYSTem
:COMMunicate
:GPIB
:ADDRess
:ERRor?
8 <Numeric value> | MIN | MAX
:INSTrument
:TBASe
:LOCK?
:LANGuage
:PRESet
:SET
:TALKonly
:TEMPerature?
8 NATive | COMPatible
8 <Block data>
8 ON
:TOUT
[:STATe]
:AUTO
:TIME
:UNPRotect
8 ON | OFF
8 ON | OFF
8 <timeout value>
n Related common commands:
*IDN?
*OPT?
*PUD
*RST
8 <arbitrary block program data>
8-113 Command Reference
:SYSTem :COMMunicate :GPIB :ADDRess
8 «<Numeric value>|MAX|MIN» [,«<Numeric value>|MAX|MIN»]
Set GPIB Address
This command sets the GPIB address. It is valid until a new address is set, either
by sending a new bus command or via the front panel USER OPT menu.
Parameters:
<Numeric value> is a number between 0 and 30.
MIN sets address 0.
MAX sets address 30.
[,<Numeric value>|MAX|MIN] sets a secondary address. This is accepted but not
used in the '9X'.
[:SELF] 8 This optional parameter is accepted by the '9X'.
Returned format:>
<Numeric value>¿
Example:
SEND® :SYST:COMM:GPIB:ADDR 8 12
This example sets the bus address to 12.
Complies with standards:
SCPI 1991.0, confirmed.
:SYSTem :ERRor?
Queries for an ASCii text description of an error that occurred. The error messages
are placed in an error queue, with a FIFO (First In-First Out) structure. This queue
is summarized in the Error AVailable (EAV) bit in the status byte.
Returned format:
<error number>,"<Error Description String>"¿
Where:
<Error Description String> = an error description as ASCii text.
See also:
Chapter 7, error messages.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-114
:SYSTem: INSTRument: TBASe: LOCK?
CNT-91R
Check Rubidium Oscillator Status
Query command returning the status of the rubidium oscillator control loop.
Returned format:>
<Numeric value>¿
A “1” means “locked”
A “0” means “unlocked”.
:SYSTem :LANGuage
8 NATive | COMPatible
Select GPIB Mode
The user can select between two command sets, where native exploits the full
capability of the instrument, and compatible facilitates portability to test systems
using the Agilent counters 53131 and 53132.
The command set described in this manual refers to the native mode only.
8-115 Command Reference
:SYSTem :PRESet
Preset
This command recalls the same default settings that are entered when you press
USER OPT ® Save/Recall ® Recall Setup ® Default.
+
These are not exactly the same settings as after *RST:
:SYST:PRES gives 200 ms Measurement Time
:SYST:PRES activates :INIT:CONT ON
*RST gives 10 ms Measurement Time
*RST activates :INIT:CONT OFF
See page 8-44.
See also:
Default settings after *RST on page 2-2.
Complies with standards:
SCPI 1991.0, confirmed.
:SYSTem :SET
8 <Block data>
Read or Send Settings
Transmits in binary form the complete current state of the instrument. This data
can be sent to the instrument to later restore this setting. This command has the
same function as the *LRN? common command with the exception that it returns
the data only as response to :SYST:SET?. The query form of this command returns a definite block data element.
Parameters:
<Block data> is the instrument setting previously retrieved via the :SYSTem:SET? query.
Returned format:
<Block data>¿
Example:
SEND® :SYST:SET?
READ¬ #41686<data byte 1><data byte 2>...<data byte 1686>
Note: The real number of data bytes will probably differ from the one specified
above and depends on the counter type and the firmware version.
Complies with standards:
SCPI 1991.0, confirmed.
Command Reference 8-116
:SYSTem :TALKonly
CNT-91
8 ON
Enter Talk Only Mode
The main purpose is to transfer streaming data fast in monitoring systems without
predefined limits for time or number of samples. It is a non-reversible command,
i.e. you can only return to normal bus mode by sending IFC or pressing the CANCEL button on the front panel.
The Talk Only output buffer can hold one value. If a new measurement result is
ready for output before the previous one has been transferred, the new value is
rejected and the previous transfer is left undisturbed.
Consequently a pause during the reading will cause the first value read after the
pause to be the first measurement finished after the latest pre-pause value was
read. The second value read will be that of the most recently finished measurement. All values in between are lost. The same applies if there's a pause between
turning on Talk Only and starting to read values. So, a dummy read is recommendable in many cases.
Prerequisites
DISPlay:ENABle should be OFF. FORMat should be REAL or PACKed.
ARM:COUNt and TRIGger:COUNt should both be one. INIT:CONTinuous
should be ON.
Smart Period/Frequency/Time Interval or any functions using voltage measurement
or timestamp can not be used with Talk Only.
:SYSTem :TEMPerature?
Read Temperature
This command returns the temperature in°C at the fan control sensor inside the instrument housing.
Returned format:
<Numeric value>¿
Example:
SEND® :SYST:TEMP?
READ¬ 50
Command Reference 8-117
:SYSTem :TOUT
8 <Boolean>
Timeout On/Off
This command switches the timeout on or off. When timeout is enabled, the measurement attempt will be abandoned when the time set with :SYST:TOUT:TIME
has elapsed. Depending on GPIB mode and output format, a special response
message will be sent to the controller instead of a measurement result, and the
timeout bit in the STATus QUEStionable register will be set.
Returned format:
See table on page 8-36.
Example:
SEND® :SYST:TOUT81;TOUT:TIME80.5;:STAT:QUES:ENAB81024;:*SRE88
This example turns on timeout, sets the timeout to 0.5 s, enables status reporting of
questionable data at timeout, and enables service request on questionable data.
SEND® *STB?
If bit 3 in the status byte is set, read the
questionable data status.
SEND® :STAT:QUES:EVEN?
This query reads the questionable data status.
READ¬ «1024|0»
1024 means timeout has occurred, and 0
means no timeout.
*RST condition:
0
:SYSTem :TOUT :AUTO
8 <Boolean>
Timeout, Automatic
This command is primarily intended for use with long measurement times to quickly
determine if there is any signal at all present at the input, without having to wait for
the entire measurement to time out.
If ON there will be a short timeout of 2 timer ticks (10-20ms) from the INIT/ARM to
the first start trigger, independent of any other timeout setting.
*RST condition:
OFF.
8-118 Command Reference
:SYSTem :TOUT :TIME
8 «<Numeric value>|MIN|MAX»
Timeout, Set
This command sets the timeout in seconds with a resolution of 10 ms.
The 10 ms timer ticks start to be counted after EITHER a measurement INIT (if
Arming is not selected) OR an external arming event (if Arming is selected). The
counting stops at the stop trigger of the measurement. For block measurements a
timeout results in the whole block timing out. The measurement START is not involved. See also :SYST:TOUT:AUTO if you need a command dealing with unnecessarily long timeouts due to absence of input signal.
Note that you must enable timeout using :SYST:TOUT_ON for this setting to take
effect.
Parameters:
<Numeric value> is the timeout in seconds. The range is 0.01 to 1000 (s)
MIN gives 0.01 s
MAX gives 1000 s
Returned format:
*RST condition:
<Numeric value>¿
0.1 (s)
Complies with standards:
SCPI 1991.0, confirmed.
:SYSTem :UNPRotect
Unprotect
This command will unprotect the user data (set/read by *PUD) and front setting
memories 1-10 until the next PMT (Program message terminator) or Device clear
or Reset (*RST). This makes it necessary to send an unprotect command in the
same message as for instance *PUD.
Example
Send ® :SYST:UNPR; *PUD 8 #240Calibrated 8 1992-11-17, 8 inventory No.1234
Where:
# means that <arbitrary block program data> will follow.
2 means that the two following digits will specify the length of the data block
40 is the number of characters in this example
Command Reference 8-119
This page is intentionally left blank.
8-120 Command Reference
Test Subsystem
:TEST
:SELect
8 RAM | ROM | LOGic | DISPlay | ALL
n Related common command:
*TST
Command Reference 8-121
:TEST :SELect
8 «RAM | ROM | LOGic | DISPlay | ALL»
Select Self-tests
Selects which internal self-tests shall be used when self-test is requested by the
*TST command.
Returned format:
«RAM | ROM | LOGic | DISPlay | ALL»¿
*RST condition:
ALL
8-122 Command Reference
Trigger Subsystem
:TRIGger
[ :STARt | :SEQuence [ 1 ] ]
[ :LAYer [ 1 ] ]
:SOURCE
:COUNt 8
<Numeric value> | MIN | MAX
:TIMER
n Related common command:
*TRG
Command Reference 8-123
:TRIGger :COUNt
8 «<Numeric value> | MIN | MAX»
No. of Triggerings on each Ext Arm start
Sets how many measurements the instrument should make for each ARM:STARt
condition, (block arming).
These measurements are done without any additional arming conditions before the
measurement. This also means that stop arming is disabled for the measurements
inside a block.
+
The actual number of measurements made on each INIT equals to:
(:ARM:START:COUN)*(:TRIG:START:COUNT)
Parameters:
<Numeric value> is a number between 1 and 16777215 (224-1).
MAX gives 16777215
MIN gives 1
Example:
SEND® :TRIG:COUN 8 50
Returned format:
*RST condition:
<Numeric value>¿
1
Complies with standards:
SCPI 1991.0, confirmed.
:TRIGger :SOURce
8TIMer | IMMediate
Pacing
Enables or disables the pacing function, i.e. the sample rate control. The pacing
time is set by the :TRIG:TIM command.
Parameters:
TIMer - enables pacing
IMMediate - disables pacing
*RST condition:
IMM
8-124 Command Reference
:TRIGger: TIMer
8<Numeric value> | MIN | MAX
Set Pacing Time
This command sets the sample rate, for instance in conjunction with the statistics
functions.
Parameters:
<Numeric value> is a time length between 2 ms and 500 s, entered in seconds.
MIN means 2 ms.
MAX means 500 s.
Returned format:
*RST condition:
<Numeric value>¿
20 ms
Command Reference 8-125
This page is intentionally left blank.
8-126 Command Reference
Common Commands
*CLS
*DDT
*DMC
*EMC
*ESE
*ESR?
*GMC?
*IDN?
8
8
8
8
<Arbitrary block program data>
<Macro label> , <Program messages>
<Decimal data>
<Decimal data>
8 <Macro label>
*LMC?
*LRN?
*OPC
*OPC?
*OPT?
*PMC
*PSC
*PUD
*RCL
*RMC
*RST
*SAV
*SRE
*STB?
8
8
8
8
<Decimal data>
<Arbitrary block program data>
<Decimal data>
<Macro name>
8 <Decimal data>
8 <Decimal data>
*TRG
*TST?
*WAI
Command Reference 8-127
*CLS
Clear Status Command
The *CLS common command clears the status data structures by clearing all event
registers and the error queue. It does not clear enable registers and transition filters. It clears any pending *WAI, *OPC, and *OPC?.
Example:
Send
® *CLS
Complies with standards:
IEEE 488.2 1987.
*DDT
8<arbitrary block>
Define Device Trigger
Sets or queries the command that the device will execute on receiving the GET interface message or the *TRG common command.
The currently supported DDTs are:
1. #14INIT
4. #15READ?
2. #19INIT;*OPC
5. #215ARM:LAY2;:FETC?
3. #15FETC?
6. #18ARM:LAY2
Example:
Send
®
*DDT8#19INIT;*OPC
*RST condition:
#215ARM:LAY2;:FETC? in native mode and #14INIT in compatible mode
Complies with standards:
IEEE 488.2 1987.
8-128 Command Reference
*DMC
8 <Macro label> , <Program messages>
Define Macro
Allows you to assign a sequence of one or more program message units to a
macro label. The sequence is executed when the macro label is received as a
command or query. Twenty-five macros can be defined at the same time, and each
macro can contain an average of 40 characters.
If a macro has the same name as a command, it masks out the real command with
the same name when macros are enabled. If macros are disabled, the original
command will be executed.
If you define macros when macro execution is disabled, the counter executes the
*DMC command fast, but if macros are enabled, the execution time for this command is longer.
Parameters:
<Macro label> = 1 to 12-character macro label. (String data must be surrounded by “ ” or ‘ ‘
as in the example below.)
<Program messages> = the commands to be executed when the macro label is received, both
block data and string data formats can be used.
Example 1:
SEND® *DMC ‘FREQUENCY?’,":FUNC 8 ‘FREQ 8 1’;:INP:LEV:AUTO 8 ON
;:ARM:START:LAY2:SOURCE 8 BUS;:INIT:CONT 8 ON;*TRG"
This example defines a macro called FREQUENCY?.
SEND® FREQUENCY?
The macro makes a single frequency measurement with automatic trigger level
setting and places the result in the output queue. (Macros must be enabled; otherwise, the :FREQUENCY? query will not execute, see *EMC)).
READ¬+31.415926536E+006
Example 2:
SEND® *DMC 8 ‘AUTOFILT’,":INP:LEV:AUTO 8 $1;:INP:FILT 8
$1;:INP2:LEV:AUTO 8 $1;:INP2:FILT 8 $1"
This example defines a macro called AUTOFILT which takes one Boolean argument, i.e. «ON|OFF» ($1) .
SEND® AUTOFILT 8 OFF
Turns off both the auto function and the analog lowpass filter on both input
channels.
Complies with standards:
IEEE 488.2 1987.
Command Reference 8-129
*EMC
8<Decimal data>
Enable Macros
This command enables and disables expansion and execution of macros. If macros are disabled, the instrument will not recognize a macro although it is defined in
the instrument. (The Enable Macro command takes a long time to execute.)
Parameters:
<Decimal data> = is 0 or 1. A value which rounds to 0 turns off macro execution. Any other
value turns macro execution on.
Note that 1 or 0 is <Decimal data>, not <Boolean>!
ON|OFF is not allowed here!
+
«1|0» ¿
1 indicates that macro expansion is enabled.
0 indicates that macro expansion is disabled.
Returned format:
Example:
SEND®*EMC 8 1
Enables macro expansion and execution.
Complies with standards:
IEEE 488.2 1987.
8-130 Command Reference
*ESE
8<Decimal data>
Standard Event Status Enable
Sets the enable bits of the standard event enable register. This enable register
contains a mask value for the bits to be enabled in the standard event status register. A bit that is set true in the enable register enables the corresponding bit in the
status register. An enabled bit will set the ESB (Event Status Bit) in the Status Byte
Register if the enabled event occurs. See also status reporting on page 3-10.
Parameters:
<dec.data> = the sum (between 0 and 255) of all bits that are true.
Event Status Enable Register (1 = enable)
Bit
Weight
Enables
7
128
PON, Power-on occurred
6
64
URQ, User Request
5
32
CME, Command Error
4
16
EXE, Execution Error
3
8
DDE, Device Dependent Error
2
4
QYE, Query Error
1
2
RQC, Request Control (not used)
0
1
Operation Complete
Returned Format:
<Decimal data> ¿
Example:
SEND® *ESE 8 36
In this example, command error, bit 5, and query error, bit 2, will set the ESB-bit of
the Status Byte if these errors occur.
Figure 8-3
Bits in the standard event status register.
Complies with standards:
IEEE 488.2 1987.
Command Reference 8-131
*ESR?
Event Status Register
Reads out the contents of the standard event status register. Reading the Standard
Event Status Register clears the register.
Returned Format:
<dec.data> = the sum (between 0 and 255) of all bits that are true. See table on page 8-131.
Complies with standards:
IEEE 488.2 1987.
*GMC?
8 < macro label>
Get Macro Definition
This command makes the counter respond with the current definition of the given
macro label.
Parameters:
<Macro label> = the label of the macro for which you want to see the definition. (String data
must be surrounded by “ ” or ‘ ‘ as in the example below.)
Returned Format:
<Block data>¿
Example:
SEND® *GMC? 8 ‘AUTOTRGLVL?’
Gives a block data response, for instance:
READ¬
#242:FUNC ‘FREQ 1’;:INP:LEV:AUTO ONCE;INP:LEV?
Complies with standards:
IEEE 488.2 1987.
8-132 Command Reference
*IDN?
Identification query
Reads out the manufacturer, model, serial number, and firmware level in an ASCii
response data element. The query must be the last query in a program message.
Response is <Manufacturer> , <Model>1 , <Serial Number>, <Firmware Level>.
Example:
SEND ®*IDN?
READ¬ <MANUFACTURER>, <MODEL>1, 1234567, V1.01 28 Jun 2004
Notes:
1
The CNT-91R returns the same string as the standard CNT-91, i.e. “CNT-91”.
Complies with standards:
IEEE 488.2 1987.
*LMC?
Learn Macro
Makes the instrument send a list of string data elements, containing all macro labels defined in the instrument.
Returned Format:
<String> { ,<String> }¿
<String> = a Macro label. (String data will be surrounded by “ ” as in the example below.)
Example:
SEND® *LMC?
May give the following response:
READ¬“AUTOFILT”,"AMPLITUDE?"
Complies with standards:
IEEE 488.2 1987.
Command Reference 8-133
*LRN?
Learn Device Setup
Learn Device Setup Query. Causes a response message that can be sent to the instrument to return it to the state it was in when the *LRN? query was made.
Returned Format:
:SYST:SET_<Block data>¿
Where:
<Block data> is #3104<104 data bytes>
Example
SEND® *LRN?
Complies with standards:
IEEE 488.2 1987.
*OPC
Operation Complete
The Operation Complete command causes the device to set the operation complete bit in the Standard Event Status Register when all pending selected device
operations have been finished. See also Example 4 in Chapter 4.
Example:
Enable OPC-bit
SEND® *ESE 8 1
Start measurement (INIT). *OPC will set the operation complete bit in the status register when the
measurement is done.
SEND® :INIT;*OPC
Wait 1s for the measurement to stop. Read serial poll register, will reset service request
SPOLL
Check the Operation complete bit (0) in the serial poll byte. If it is true the measurement is
completed and you can fetch the result.
SEND® FETCh?
Then read the event status register to reset it:
SEND® *ESR?
If bit 0 is false, abort the measurement.
SEND® :ABORt
Complies with standards:
IEEE 488.2 1987.
8-134 Command Reference
*OPC?
Operation Complete Query
Operation Complete query. The Operation Complete query places an ASCii character 1 into the device’s Output Queue when all pending selected device operations have been finished.
Returned Format:
1¿
See also:
Example 6 is Chapter 4.
Complies with standards:
IEEE 488.2 1987.
*OPT?
Option Identification
Response is a list of all detectable options present in the instrument, with absent
options represented by an ASCii ‘0’.
Returned format:
<Timebase option>,<Prescaler option1|Microwave converter2>, <Reserved>¿
Where:
<Timebase option> = Standard3|Option 194|Option 304|Option 404|Rubidium5
<Prescaler option> = 0|Option 10|Option 13|Option 14|Option 14B
<Microwave converter> = 27GHz|40GHz|46GHz|60GHz
<Reserved> = 0 until further notice
Notes:
1
CNT-90/91(R) only
CNT-90XL only
3
CNT-90/91 only
4
CNT-90/91 & CNT-90XL
5
CNT-91R only
2
Complies with standards:
IEEE 488.2 1987.
Command Reference 8-135
*PMC
Purge Macros
Removes all macro definitions.
Example:
*PMC
See also:
:MEMory:DELete:MACRo 8 ‘<Macro-name>’ if you want to remove a single
macro.
Complies with standards:
IEEE 488.2 1987.
*PSC
8 <Decimal data>
Power-on Status Clear
Enables/disables automatic power-on clearing. The status registers listed below
are cleared when the power-on status clear flag is 1. Power-on does not affect the
registers when the flag is 0.
– Service request enable register (*SRE)
–
–
–
–
–
Event status enable register (*ESE)
Operation status enable register (:STAT:OPER:ENAB)
Questionable data/signal enable register (:STAT:QUES:ENAB)
Device enable registers (:STAT:DREG0:ENAB)
*RST does not affect this power-on status clear flag.
<Decimal data> = a number that rounds to 0 turns off automatic power-on
clearing. Any other value turns it on.
Parameters:
Returned Format:
«1 | 0» ¿
1 is enabled and 0 is disabled.
*PSC 8 1
This example enables automatic power-on clearing.
Example:
Complies with standards:
IEEE 488.2 1987.
8-136 Command Reference
*PUD
8 Arbitrary block program data>
Protected User Data
Protected user data. This is a data area in which the user may write any data up to
64 characters. The data can always be read, but you can only write data after unprotecting the data area. A typical use would be to hold calibration information, usage time, inventory control numbers, etc.
The content at delivery is: #234 FACTORY CALIBRATED ON: 19YY-MM-DD
– YY = year, MM = month, DD = day
Returned format:
<Arbitrary block response data>¿
– Where:
<arbitrary block program data> is the data last programmed with *PUD.
Example
Send ® :SYST:UNPR; *PUD 8 #240Calibrated 8 1993-07-16,
tory 8 No.1234
8 inven-
# means that <arbitrary block program data> will follow.
2 means that the two following digits will specify the length of the data block.
40 is the number of characters in this example.
Complies with standards:
IEEE 488.2 1987.
*RCL
8<Decimal data>
Recall
Recalls one of the up to 20 previously stored complete instrument settings from the
internal nonvolatile memory of the instrument.
Memory number 0 contains the power-off settings.
Parameters:
<Decimal data> = a number between 0 and 19.
Example:
SEND® *RCL 8 10¿
Complies with standards:
IEEE 488.2 1987.
Command Reference 8-137
*RMC
8 ‘<Macro name>’
Delete one Macro
This command removes an individual MACRo.
Parameters:
‘<Macro name>’ is the name of the macro you want to delete.
+
<Macro name> is String data that must be surrounded by quotation marks.
See also:
*PMC, if you want to delete all macros.
*RST
Reset
The Reset command resets the counter. It is the third level of reset in a 3-level reset strategy, and it primarily affects the counter functions, not the IEEE 488 bus.
The counter settings will be set to the default settings listed on page 2-2. All previous commands are discarded, macros are disabled, and the counter is prepared to
start new operations.
Example:
*RST
See also:
Default settings on page 2-2.
Complies with standards:
IEEE 488.2 1987.
8-138 Command Reference
*SAV
_<Decimal data>
Save
Saves the current settings of the instrument in an internal nonvolatile memory.
Nineteen memory locations are available. Switching the power off and on does not
change the settings stored in the registers.
Note that memory positions 1 to 10 can be protected from the front panel USER
OPT menu. If this has been done, use the :SYSTem:UNPRotect command to alter these memory positions.
Parameters
<Decimal data> = a number between 1 and 19.
Example:
SEND® *SAV 8 11¿
Complies with standards:
IEEE 488.2 1987
Command Reference 8-139
*SRE
8 <Decimal data>
Service Request Enable
The Service Request Enable command sets the service request enable register
bits. This enable register contains a mask value for the bits to be enabled in the
status byte register. A bit that is set true in the enable register enables the corresponding bit in the status byte register to generate a Service Request.
<dec.data> = the sum (between 0 and 255) of all bits that are true.
See table below:
Parameters:
Service Request Enable Register (1 = enable)
Bit
Weight
Enables
7
6
5
4
3
2
1
0
128
64
32
16
8
4
2
1
OPR, Operation Status
RQS, Request Service
ESB, Event Status Bit
MAV, Message Available
QUE, Questionable Data/Signal Status
EAV, Error Available
Not used
Device Status
Returned Format:
<Integer>¿
Where:
<Integer> = the sum of all bits that are set.
*SRE 8 16
In this example, the counter generates a service request when a message is available in the output queue.
Example:
Complies with standards:
IEEE 488.2 1987.
8-140 Command Reference
*STB?
Status Byte Query
Reads out the value of the Status Byte. Bit 6 reports the Master Summary Status
bit (MSS), not the Request Service (RQS). The MSS is set if the instrument has
one or more reasons for requesting service.
Returned Format:
<Integer> = the sum (between 0 and 255) of all bits that are true. See table below:
Status Byte Register (1 = true)
Bit
Weight
Name
7
6
5
4
3
2
1
0
128
64
32
16
8
4
2
1
OPR
MSS
ESB
MAV
QUE
EAV
See also:
Condition
Enabled operation status has occurred.
Reason for requesting service
Enabled status event condition has occurred
An output message is ready
The quality of the output signal is questionable
Error available
Not used
DREG0
Enabled status device event conditions have
occurred
If you want to read the status byte with the RQS bit, use serial poll.
Complies with standards:
IEEE 488.2 1987.
*TRG
Trigger
The trigger command *TRG starts the measurement and places the result in the
output queue.
It is the same as:
:ARM:STARt:LAYer2:IMM; *WAI;:FETCh?
The Trigger command is the device-specific equivalent of the IEEE 488.1 defined
Group Execute Trigger, GET. It has exactly the same effect as a GET after it has
been received, and parsed by the counter.
However, GET is much faster than *TRG, since GET is a hardware signal that does
not have to be parsed by the counter.
Example:
SEND®
SEND®
SEND®
READ¬
:ARM:START:LAY2:SOURCE 8 BUS
:INIT:CONT 8 ON
*TRG
+3.2770536E+004
Type of Command:
Aborts all previous measurement commands if not *WAI is used.
Complies with standards:
IEEE 488.2 1987.
Command Reference 8-141
*TST?
Self Test
The self-test query causes an internal self-test and generates a response indicating whether or not the device completed the self-test without any detected errors.
Returned Format:
<Integer>¿
Where:
<Integer> = a number indicating errors according to the table below.
<Integer> =
0
1
2
4
8
16
32
Complies with standards:
Error
No Error
RAM Failure
ROM Failure
Logic Failure
Display Failure
IEEE 488.2 1987
*WAI
Wait-to-continue
The Wait-to-Continue command prevents the device from executing any further
commands or queries until execution of all previous commands or queries has
been completed.
Example:
SEND®:MEAS:FREQ?; *WAI;:MEAS:PDUT?
In this example, *WAI makes the instrument perform both the frequency and the
Duty Cycle measurement. Without *WAI, only the Duty Cycle measurement would
be performed.
READ¬ +5.1204004E+002;+1.250030E-001
Complies with standards:
IEEE 488.2 1987.
8-142 Command Reference
Chapter 9
Index
Index
!
Levels selected by· · · · · · · · · · · · 8-50
Power on clearing · · · · · · · · · · · 8-136
Speed · · · · · · · · · · · · · · · · · · · · · 8-96
Trigger level· · · · · · · · · · · · · · · · · 8-49
Trigger On/Off · · · · · · · · · · · · · · · 8-49
Auto calibration on/off· · · · · · · · · · · 8-26
Auto Freq. Recognition (TIE) · · · · 8-100
1 Mohm · · · · · · · · · · · · · · · · · · · · · · 8-48
50 ohms · · · · · · · · · · · · · · · · · · · · · 8-48
A
Abort
Measurement · · · · · · · · · · · · · · · · 8-4
AC|DC· · · · · · · · · · · · · · · · · · · · · · · 8-46
Address
GPIB · · · · · · · · · · · · · · · · · · · · · 8-114
Switches · · · · · · · · · · · · · · · · · · · · 1-4
Analog
Filter · · · · · · · · · · · · · · · · · · · · · · 8-47
Analog Filter · · · · · · · · · · · · · · · · · · 8-47
Aperture · · · · · · · · · · · · · · · · · · · · · 8-92
Arbitrary block data · · · · · · · · · · · · 8-119
Arming · · · · · · · · · · · · · · · · · · · · · · · 8-7
Bus arm mode · · · · · · · · · · · · · · · · 8-8
Start delay · · · · · · · · · · · · · · · · · · · 8-7
Start slope · · · · · · · · · · · · · · · · · · · 8-8
Start source · · · · · · · · · · · · · · · · · · 8-9
Stop slope · · · · · · · · · · · · · · · · · · · 8-9
Stop source · · · · · · · · · · · · · · · · · 8-10
Subsystem· · · · · · · · · · · · · · · · · · · 8-5
Wait for bus · · · · · · · · · · · · · · · · · 6-19
Array
Fetch · · · · · · · · · · · · · · · · · · · · · · 8-35
Asterisk · · · · · · · · · · · · · · · · · · · · · · · 3-8
Attenuation · · · · · · · · · · · · · · · · · · · 8-46
Auto
Attenuation · · · · · · · · · · · · · · · · · 8-46
B
Block arming · · · · · · · · · · · · · · · · · 8-124
Block data · · · · · · · · · · · · · · · · · · · · 3-12
Boolean · · · · · · · · · · · · · · · · · · · · · · 3-11
Burst
Carrier Frequency · · · · · · · · · · · · 8-61
Repetition Frequency · · · · · · · · · 8-62
Bus
Drivers · · · · · · · · · · · · · · · · · · · · · · 1-6
Bus Arm · · · · · · · · · · · · · · · · · · · · · · 8-6
Exit · · · · · · · · · · · · · · · · · · · · · · · · 8-7
Mode · · · · · · · · · · · · · · · · · · · · · · · 8-8
On/Off · · · · · · · · · · · · · · · · · · · · · · 8-8
Override· · · · · · · · · · · · · · · · · · · · · 8-7
Bus initialization · · · · · · · · · · · · · · · 3-19
C
Calculate
Block · · · · · · · · · · · · · · · · · · · · · · · 5-3
Enable · · · · · · · · · · · · · · · · · · · · · 8-22
Mathematics · · · · · · · · · · · · · · · · 8-21
Reading data · · · · · · · · · · · · · · · · 8-14
Subsystem · · · · · · · · · · · · · · · · · · 8-11
II
Calibration · · · · · · · · · · · · · 8-119, 8-137
Subsystem· · · · · · · · · · · · · · · · · · 8-25
Center Frequency · · · · · · · · · · · · · · 8-99
Channel
List · · · · · · · · · · · · · · · · · · · · · · · · 3-12
Selecting · · · · · · · · · · · · · · · 6-9, 8-97
Character data · · · · · · · · · · · · · · · · 3-12
Check
Upper limit · · · · · · · · · · · · · · · · · · 8-21
Check Against Lower Limit · · · · · · · 8-20
Clear Status · · · · · · · · · · · · · · · · · 8-128
Clearing
status registers · · · · · · · · · · · · · 8-136
CME-bit · · · · · · · · · · · · · · · · 6-17, 8-131
Colon · · · · · · · · · · · · · · · · · · · · 3-8, 3-10
Command
Error · · · · · · · · · · · · · 3-4, 3-17, 8-131
Error (CME) · · · · · · · · · · · · · · · · · 6-17
Header· · · · · · · · · · · · · · · · · · · · · 3-10
Tree · · · · · · · · · · · · · · · · · · · · · · · 3-10
Command Error (CME)
Code list · · · · · · · · · · · · · · · · · · · · 7-2
Command tree · · · · · · · · · · · · · · · · · 3-8
Commands · · · · · · · · · · · · · · · · · · · 3-20
*CLS· · · · · · · · · · · · · · · · · 3-20, 8-128
*DDT · · · · · · · · · · · · · · · · · · · · · 8-128
*DMC · · · · · · · · · · 3-13, 8-127, 8-129
*EMC · · · · · · · · · · · · · · · · 3-14, 8-130
*ESE· · · · · · · · · · · · · · · · 8-127, 8-131
*ESR? · · · · · · · · · · · · · · · · · · · · 8-132
*GMC? · · · · · · · · · · · · · · · 3-15, 8-132
*IDN? · · · · · · · · · · · · · · · · · · · · · 8-133
*LMC · · · · · · · · · · · · · · · 8-127, 8-133
*LMC? · · · · · · · · · · · · · · · · · · · · · 3-15
*LRN? · · · · · · · · · · · · · · · · · · · · 8-134
*OPC · · · · · · · · · · · · · · · · · · · · · 8-134
*OPC? · · · · · · · · · · · · · · · · · · · · 8-135
*OPT? · · · · · · · · · · · · · · · · · · · · 8-135
*PMC · · · · · · · · · · 3-14, 8-127, 8-136
*PSC · · · · · · · · · · · · · · · 8-127, 8-136
*PUD · · · · · · · · · · · · · · · · · · · · · 8-137
*RCL · · · · · · · · · · · · · · · · · · · · · 8-137
*RMC · · · · · · · · · · · · · · · · · · · · · 8-138
*RST · · · · · · · · · · · · · · · 8-127, 8-138
*SAV · · · · · · · · · · · · · · · · · · · · · 8-139
*SRE · · · · · · · · · · · · · · · · 6-13, 8-140
*STB?· · · · · · · · · · · · · · · 8-127, 8-141
*TRG· · · · · · · · · · · · · 6-25, 8-8, 8-141
*TST? · · · · · · · · · · · · · · · 8-127, 8-142
*WAI · · · · · · · · · · · · · · · · · · · · · 8-142
:ABORt · · · · · · · · · · · · · · · · · · · · · 8-4
:ACQuisition:APERture · · · · · · · · 8-92
:Acquisition:HOFF · · · · · · · · · · · · 8-92
:ACQuisition:HOFF · · · · · · · · · · · 8-92
:Acquisition:HOFF:TIMe · · · · · · · 8-93
:ARM · · · · · · · · · · · · · · · · · · · · · · · 8-7
:ARM:COUNt· · · · · · · · · · · · · · · · · 8-6
:ARM:LAYer2:SOURce · · · · · · · · · 8-8
:ARM:SEQuence:LAYer1:COUNt · 8-6
:ARM:SEQuence1:LAYer1:SLOPe 8-8
:ARM:SEQuence2:SLOPe · · · · · · 8-9
:ARM:SEQuence2:SOURce · · · · 8-10
:ARM:SLOPe· · · · · · · · · · · · · · · · · 8-8
:ARM:SOURce · · · · · · · · · · · · · · · 8-9
:ARM:STARt · · · · · · · · · · · · · · · · · 8-7
:ARM:STARt:LAYer1:COUNt· · · · · 8-6
:ARM:STARt:LAYer1:SLOPe· · · · · 8-8
:ARM:STOP:SLOPe · · · · · · · · · · · 8-9
:ARM:STOP:SOURce · · · · · · · · · 8-10
:ARM:STOP:TIMe · · · · · · · · · · · · 8-10
:AUTO · · · · · · · · · · · · · · · · · · · · · 8-93
:CALCulate:AVERage:ALL? · · · · 8-12
:CALCulate:AVERage:COUNt· · · 8-12
:CALCulate:AVERage:COUNt:
CURRent? · · · · · · · · · · · · · · · · · 8-13
:CALCulate:AVERage:STATe · · · 8-13
:CALCulate:AVERage:TYPE· · · · 8-14
:CALCulate:DATA · · · · · · · · · · · · 8-14
:CALCulate:DATA? · · · · · · · · · · · 8-14
:CALCulate:IMMediate · · · · · · · · 8-15
:CALCulate:LIMit · · · · · · · · · · · · · 8-15
:CALCulate:LIMit(:STATe) · · 6-3, 8-15
III
:CALCulate:LIMit:CLEar · · · · · · · 8-16
:CALCulate:LIMit:CLEar:AUTO· · 8-16
:CALCulate:LIMit:FAIL · · · · · · · · 8-17
:CALCulate:LIMit:FCOunt:
LOWer? · · · · · · · · · · · · · · · · · · · 8-17
:CALCulate:LIMit:FCOunt:TOTal?8-18
:CALCulate:LIMit:LOWer:STATe · 8-20
:CALCulate:LIMit:PCOunt? · · · · · 8-19
:CALCulate:LIMit:UPPer · · · · · · · 8-20
:CALCulate:LIMit:UPPer:STATe · 8-21
:CALCulate:MATH · · · · · · · · · · · · 8-21
:CALCulate:MATH:STATe · · · · · · 8-22
:CALCulate:STATe· · · · · · · · · · · · 8-22
:CALCulate:TOTalize:TYPE · · · · 8-23
:CALibration:INTerpolator:AUTO· 8-26
:CONFigure · · · · · · · · · · · · · · · · · 8-28
:CONFigure:(Meas Func) · · · · · · 8-28
:CONFigure:ARRay· · · · · · · · · · · 8-29
:CONFigure:ARRay:(Meas Func) 8-29
:CONFigure:DCYCle · · · · · · · · · · 8-64
:CONFigure:FREQuency · · · · · · 8-60
:CONFigure:FREQuency:
BURSt :PRF · · · · · · · · · · · · · · · 8-62
:CONFigure:FREQuency:
BURSt:CARRier · · · · · · · · · · · · 8-61
:CONFigure:FREQuency:RATio · 8-63
:CONFigure:FTIMe · · · · · · · · · · · 8-70
:CONFigure:MAXimum · · · · · · · · 8-65
:CONFigure:MINimum· · · · · · · · · 8-65
:CONFigure:NDUTycycle · · · · · · 8-64
:CONFigure:NWIDth · · · · · · · · · · 8-71
:CONFigure:PDUTycycle · · · · · · 8-64
:CONFigure:PERiod · · · · · · · · · · 8-68
:CONFigure:PERiod:AVERage? · 8-68
:CONFigure:PHASe · · · · · · · · · · 8-69
:CONFigure:PTPeak · · · · · · · · · · 8-66
:CONFigure:PWIDth · · · · · · · · · · 8-71
:CONFigure:RTIMe · · · · · · · · · · · 8-69
:CONFigure:TINTerval · · · · · · · · 8-70
:CONFigure:TOTalize · · · · · · · · · 8-30
:CONFigure:TOTalize:
CONTinuous · · · · · · · · · · · · · · · 8-30
:DISPlay:ENABle· · · · · · · · · · · · · 8-32
:FETCh:ARRay? · · · · · · · · · · · · · 8-34
:FETCh? · · · · · · · · · · · · · · · · · · · 8-34
:FORMat · · · · · · · · · · · · · · · · · · · 8-38
:FORMat:BORDer · · · · · · · · · · · · 8-38
:FORMat:SMAX· · · · · · · · · · · · · · 8-39
:FORMat:TINFormation · · · · · · · 8-40
:FREQuency:POWer:UNIT · · · · · 8-96
:FREQuency:RANGE:LOWER · · 8-96
:FREQuency:REGRession · · · · · 8-97
:FUNCtion · · · · · · · · · · · · · · · · · · 8-97
:HCOPy:SDUMp:DATA · · · · · · · · 8-42
:HF:ACQuisition · · · · · · · · · · · · · 8-99
:HF:FREQuency:CENTer · · · · · · 8-99
:INITiate · · · · · · · · · · · · · · · · · · · · 8-44
:INITiate:CONTinuous · · · · · · · · · 8-44
:INPut:ATTenuation · · · · · · · · · · · 8-46
:INPut:COUPling · · · · · · · · · · · · · 8-46
:INPut:FILTer · · · · · · · · · · · · · · · · 8-47
:INPut:FILTer:DIGital · · · · · · · · · · 8-47
:INPut:FILTer:DIGital:
FREQuency· · · · · · · · · · · · · · · · 8-48
:INPut:IMPedance · · · · · · · · · · · · 8-48
:INPut:LEVel · · · · · · · · · · · · · · · · 8-49
:INPut:LEVel:AUTO · · · · · · · · · · · 8-49
:INPut:LEVel:RELative · · · · · · · · 8-50
:INPut:SLOPe · · · · · · · · · · · · · · · 8-51
:MEASure:(Measuring Function)?8-56
:MEASure:ARRay:
(Measuring Function)? · · · · · · · 8-57
:MEASure:ARRay:STSTamp?· · · 8-72
:MEASure:ARRay:TIError? · · · · · 8-75
:MEASure:ARRay:TSTAmp? · · · 8-73
:MEASure:ARRay? · · · · · · · · · · · 8-57
:MEASure:DCYCle? · · · · · · · · · · 8-64
:MEASure:FALL:TIME?· · · · · · · · 8-70
:MEASure:FREQuency:BTBack? 8-74
:MEASure:FREQuency:BURSt:
CARRier? · · · · · · · · · · · · · · · · · 8-61
:MEASure:FREQuency:BURSt:
PRF? · · · · · · · · · · · · · · · · · · · · · 8-62
:MEASure:FREQuency:BURSt? · 8-61
IV
:MEASure:FREQuency:POWer? 8-61
:MEASure:FREQuency:PRF · · · · 8-62
:MEASure:FREQuency:RATio· · · 8-63
:MEASure:FREQuency:RATio?· · 8-63
:MEASure:FREQuency? · · · · · · · 8-60
:MEASure:FTIMe? · · · · · · · · · · · 8-70
:MEASure:MAXimum? · · · · · · · · 8-65
:MEASure:MEMory ? · · · · · · · · · 8-58
:MEASure:MEMory? · · · · · · · · · · 8-58
:MEASure:MEMory? · · · · · · · · · 8-58
:MEASure:MEMory<N>?· · · · · · · 8-58
:MEASure:MINimum? · · · · · · · · · 8-65
:MEASure:NCYCles? · · · · · · · · · 8-63
:MEASure:NDUTycycle? · · · · · · · 8-64
:MEASure:NSLEwrate?· · · · · · · · 8-67
:MEASure:NWIDth? · · · · · · · · · · 8-71
:MEASure:PDUTycycle? · · · · · · · 8-64
:MEASure:PERiod:AVERage? · · 8-68
:MEASure:PERiod:BTBack? · · · · 8-74
:MEASure:PERiod?· · · · · · · · · · · 8-68
:MEASure:PHASe? · · · · · · · · · · · 8-69
:MEASure:PSLEwrate? · · · · · · · · 8-67
:MEASure:PTPeak? · · · · · · · · · · 8-66
:MEASure:PWIDth? · · · · · · · · · · 8-71
:MEASure:RISE:TIME?· · · · · · · · 8-69
:MEASure:RTIMe? · · · · · · · · · · · 8-69
:MEASure:TINTerval? · · · · · · · · · 8-70
:MEASure:VOLT:MAXimum? · · · 8-65
:MEASure:VOLT:MINimum? · · · · 8-65
:MEASure:VOLT:PTPeak? · · · · · 8-66
:MEASure:VOLT:RATio? · · · · · · · 8-66
:MEMory:DATA:RECord:COUNt? 8-78
:MEMory:DATA:RECord:DELete· 8-78
:MEMory:DATA:RECord:FETCh:
ARRay? · · · · · · · · · · · · · · · · · · · 8-79
:MEMory:DATA:RECord:FETCh:
STARt · · · · · · · · · · · · · · · · · · · · 8-80
:MEMory:DATA:RECord:FETCh? 8-79
:MEMory:DATA:RECord:NAME? 8-80
:MEMory:DATA:RECord:SAVE · · 8-81
:MEMory:DELete:MACRo 8-82, 8-138
:MEMory:FREE:MACRo? · · · · · · 8-82
:MEMory:NSTates? · · · · · · · · · · · 8-83
:OUTPut:POLarity · · · · · · · · · · · · 8-86
:OUTPut:TYPE · · · · · · · · · · · · · · 8-86
:READ:ARRay? · · · · · · · · · · · · · · 8-89
:READ? · · · · · · · · · · · · · · · · · · · · 8-88
:ROSCillator:SOURce · · · · · · · · 8-100
:SENSe:Acquisition:APERture · · 8-92
:SENSe:Acquisition:HOFF · · · · · 8-92
:SENSe:Acquisition:HOFF:TIMe· 8-93
:SENSe:FREQuency:BURSt:
APERture · · · · · · · · · · · · · · · · · 8-94
:SENSe:FREQuency:BURSt:STARt:DELay· · · 8-95
:SENSe:FREQuency:BURSt:SYNC:PERiod · · 8-95
:SENSe:FREQuency:PREScaler:STATe · · · · · 8-94
:SENSe:FREQuency:RANGe:
LOWer · · · · · · · · · · · · · · · · · · · · 8-96
:SENSe:FUNCtion· · · · · · · · · · · · 8-97
:SENSe:ROSCillator:SOURce · 8-100
:SENSe:TOTalize:GATE · · · · · · 8-102
:SOURce:PULSe:PERiod · · · · · 8-104
:SOURce:PULSe:WIDTh · · · · · 8-104
:STATus:DREGister0:ENABle · · 8-106
:STATus:DREGister0?· · · · · · · · 8-106
:STATus:OPERation:
CONDition? · · · · · · · · · · · · · · · 8-107
:STATus:OPERation:ENABle · · 8-108
:STATus:OPERation? · · · · · · · · 8-109
:STATus:PRESet · · · · · · · · · · · · 8-109
:STATus:QUEStionable:
CONDition? · · · · · · · · · · · · · · · 8-110
:STATus:QUEStionable:ENABle 8-111
:STATus:QUEStionable? · · · · · · 8-111
:SYSTem:COMMunicate:GPIB:
ADDRess · · · · · · · · · · · · · · · · · 8-114
:SYSTem:ERRor? · · · · · · · · · · · 8-114
:SYSTem:INSTrument:TBASe:
LOCK? · · · · · · · · · · · · · · · · · · · 8-115
:SYSTem:LANGuage· · · · · · · · · 8-115
V
:SYSTem:PRESet · · · · · · · · · · · 8-116
:SYSTem:SET · · · · · · · · · · · · · · 8-116
:SYSTem:TALKonly · · · · · · · · · · 8-117
:SYSTem:TEMPerature? · · · · · · 8-117
:SYSTem:TOUT· · · · · · · · · · · · · 8-118
:SYSTem:TOUT:AUTO · · · · · · · 8-118
:SYSTem:TOUT:TIME · · · · · · · · 8-119
:SYSTem:UNPRotect · · · · · · · · 8-119
:TEST:SELect · · · · · · · · · · · · · · 8-122
:TIError:FREQuency · · · · · · · · · 8-101
:TIError:FREQuency:AUTO · · · 8-100
:TINTerval:AUTO· · · · · · · · · · · · 8-101
:TOTalize:GATE · · · · · · · · · · · · 8-102
:TRIGger (:SEQuence1):
COUNt· · · · · · · · · · · · · · · · · · · 8-124
:TRIGger(:STARt):COUNt · · · · · 8-124
:TRIGger:COUNt · · · · · · · · · · · · 8-124
:TRIGger:SOURce · · · · · · · · · · 8-124
:TRIGger:TIMer · · · · · · · · · · · · · 8-125
CALCulate:LIMit:FCOunt:
UPPer? · · · · · · · · · · · · · · · · · · · 8-18
CALCulate:LIMit:LOWer · · · · · · · 8-19
RCL · · · · · · · · · · · · · · · · · · · · · · 8-127
SOC?· · · · · · · · · · · · · · · · · · · · · 8-107
SOEn · · · · · · · · · · · · · · · · · · · · · 8-108
SOEv? · · · · · · · · · · · · · · · · · · · · 8-109
Commands· · · · · · · · · · · · · · · · · · · · · · ·
:ACQuisition:HOFF:TIME · · · · · · 8-93
Common Commands · · · · · · 3-8, 8-127
Configure · · · · · · · · · · · · · · · · · 5-5, 8-28
Array · · · · · · · · · · · · · · · · · · · · · · 8-29
Description · · · · · · · · · · · · · · · · · · 6-7
Function · · · · · · · · · · · · · · · 8-27, 8-53
Scalar · · · · · · · · · · · · · · · · · · · · · 8-28
Continuously Initiated · · · · · · · · · · · 8-44
Control function · · · · · · · · · · · · · · · · 1-5
Conventions · · · · · · · · · · · · · · · · · · · 1-3
Coupling
See AC/DC
Cutoff frequency · · · · · · · · · · · · · · · 8-47
CW · · · · · · · · · · · · · · · · · · · · · · · · · 8-61
D
Data
Recalculate · · · · · · · · · · · · · · · · · 8-15
Data Type · · · · · · · · · · · · · · · · · · · · 8-38
DC coupling
See AC/DC
DCL· · · · · · · · · · · · · · · · · · · · · · · · · 3-19
DDE-bit · · · · · · · · · · · · · · · · 6-17, 8-131
Deadlock· · · · · · · · · · · · · · · · · · · · · · 3-5
Decimal data · · · · · · · · · · · · · · · · · · 3-11
Default · · · · · · · · · · · · · · · · · · · · · 8-138
Presetting the counter · · · · · · · · 8-116
Deferred commands · · · · · · · · · · · · · 3-5
Define Macro · · · · · · · · · · · · · · · · 8-129
Delay
After external start arming· · · · · · · 8-7
After External Stop Arming · · · · · · 8-9
Delete one Macro· · · · 3-15, 8-82, 8-138
Device clear· · · · · · · · · · · · · · · 1-5, 3-19
Device dependent Error (DDE)
· · · · · · · · · · · · · · · · · · · · · · · 6-17, 8-131
Device initialization · · · · · · · · · · · · · 3-19
Device Setup · · · · · · · · · · · · · · · · 8-134
Device specific errors · · · · · · · 3-4, 3-18
Standardized · · · · · · · · · · · · · · · · 7-11
Device Status · · · · · · · · · · · · · · · · 8-140
Device Status Register
Enable · · · · · · · · · · · · · · · · · · · · 8-106
Event · · · · · · · · · · · · · · · · · · · · · 8-106
No. 0 · · · · · · · · · · · · · · · · · · · · · 8-106
Device Trigger
define· · · · · · · · · · · · · · · · · · · · · 8-128
Device Trigger, · · · · · · · · · · · · · · · · · 1-6
Digital Filter· · · · · · · · · · · · · · · · · · · 8-47
Display
Enable · · · · · · · · · · · · · · · · · · · · · 8-32
On/Off · · · · · · · · · · · · · · · · · · · · · 8-32
State · · · · · · · · · · · · · · · · · · · · · · 8-32
Subsystem· · · · · · · · · · · · · · · · · · 8-31
Double quotes· · · · · · · · · · · · · · · · · 3-12
VI
DREG0 · · · · · · · · · · · · · · · · · · · · · 8-141
Duration
See Pulse width
E
EAV· · · · · · · · · · · · · · 6-13, 8-114, 8-140
Enable
Calculation· · · · · · · · · · · · · · · · · · 8-22
Display· · · · · · · · · · · · · · · · · · · · · 8-32
Macros· · · · · · · · · · · · · · · · · · · · 8-130
Mathematics · · · · · · · · · · · · · · · · 8-22
Monitoring of Parameter Limits · · 8-15
Service Request · · · · · · · · · · · · 8-140
Standard Event Status· · · · · · · · 8-131
Statistics · · · · · · · · · · · · · · · · · · · 8-13
Error
ASCII description· · · · · · · · · · · · 8-114
Available · · · · · · · · · · · · · · · · · · 8-140
Clearing queue · · · · · · · · · · · · · 8-128
Command · · · · · · · · · · · · · · · · · · · 7-2
Device specific, code list· · · · · · · 7-13
Escape from condition· · · · · · · · · 3-19
Execution· · · · · · · · · · · · · · · · · · · · 7-7
In self test · · · · · · · · · · · · · · · · · 8-142
Message available · · · · · · · · · · · 6-13
Query, code list · · · · · · · · · · · · · · 7-12
Queue · · · · · · · · · · · · · 3-17, 6-13, 7-2
Reporting· · · · · · · · · · · · · · · · · · · 3-17
Standardized device specific list · 7-11
Standardized numbers · · · · · · · · 3-17
ESB · · · · · · · · · · · · · · · · · · 8-131, 8-140
Escape from erroneous conditions· 3-19
Event
Clearing registers · · · · · · · · · · · 8-128
Detection · · · · · · · · · · · · · · · · · · · 6-24
Read Device Status Event
Register · · · · · · · · · · · · · · · · · · 8-106
Status bit · · · · · · · · · · · · 8-131, 8-140
Status Register · · · · · · · · · · · · · 8-132
Example language · · · · · · · · · · · · · · 1-4
EXE-bit · · · · · · · · · · · · · · · · 6-17, 8-131
Execution
Control · · · · · · · · · · · · · · · · · · · · · · 3-4
Error · · · · · · · · 3-4, 3-18, 6-17, 8-131
Error code list · · · · · · · · · · · · · · · · 7-7
Expression · · · · · · · · · · · · · · · · · · · 8-21
data · · · · · · · · · · · · · · · · · · · · · · · 3-12
Ext. ref. · · · · · · · · · · · · · · · · · · · · · 8-100
External reference · · · · · · · · · · · · 8-100
F
Fail
Limit · · · · · · · · · · · · · · · · · · · · · · · 8-17
Fall time
Measurements· · · · · · · · · · · · · · · 8-70
Fast
Autotrigger· · · · · · · · · · · · · · · · · · 8-96
Fetch· · · · · · · · · · · · · · · · · · · · · · · · · 5-6
An Array of Results · · · · · · · · · · · 8-35
Array · · · · · · · · · · · · · · · · · · · · · · 8-35
Calcutated Data· · · · · · · · · · · · · · 8-14
Description · · · · · · · · · · · · · · · · · · 6-8
Function· · · · · · · · · · · · · · · · · · · · 8-32
One Result · · · · · · · · · · · · · · · · · 8-34
Several measurement results · · · 8-35
Fixed Trigger Level · · · · · · · · · · · · · 8-49
Format
Examples· · · · · · · · · · · · · · · · · · · 8-39
Subsystem· · · · · · · · · · · · · · · · · · 8-37
Formula
Mathematics · · · · · · · · · · · · · · · · 8-21
Macro · · · · · · · · · · · · · · · · · · · · · · · 8-82
Freerun · · · · · · · · · · · · · · · · · · · · · · 8-44
Frequency
Low limit for volt/autotrig · · · · · · · 8-96
Measurement · · · · · · · · · · · · · · · 8-60
Ratio measurements · · · · · · · · · · 8-63
Front panel memories· · · · · · · · · · 8-139
G
Gate time · · · · · · · · · · · · · · · · · · · · 8-92
GET · · · · · · · · · · · · · · · 6-25, 8-8, 8-141
VII
Get Macro · · · · · · · · · · · · · · · · · · · 8-132
GPIB Address · · · · · · · · · · · · 1-4, 8-114
Group Execute Trigger · · · · · · · · · 8-141
H
Hard Copy· · · · · · · · · · · · · · · · · · · · 8-41
Header path · · · · · · · · · · · · · · · · · · 3-10
Header separator · · · · · · · · · · · · · · · 3-8
High Speed Voltage Measurements 8-96
Hold Off
On/Off · · · · · · · · · · · · · · · · · · · · · 8-92
Setting time · · · · · · · · · · · · · · · · · 8-93
Time· · · · · · · · · · · · · · · · · · · · · · · 8-93
Time range · · · · · · · · · · · · · · · · · 8-93
I
Identification query · · · · · · · · · · · · 8-133
Idle state · · · · · · · · · · · · · · · · · · · · · 6-24
IFC · · · · · · · · · · · · · · · · · · · · · · · · · 3-19
Immediate mode · · · · · · · · · · · · · · · · 8-8
Impedance · · · · · · · · · · · · · · · · · · · 8-48
Initiate · · · · · · · · · · · · · · · · · · · 3-19, 5-6
Continuous · · · · · · · · · · · · · · · · · 6-24
Continuously · · · · · · · · · · · · · · · · 8-44
Description · · · · · · · · · · · · · · · · · · 6-8
Immediate · · · · · · · · · · · · · · · · · · 6-24
Measurement · · · · · · · · · · · · · · · 8-44
Subsystem· · · · · · · · · · · · · · · · · · 8-43
Initiated state · · · · · · · · · · · · · · · · · 6-24
Input
AC/DC · · · · · · · · · · · · · · · · · · · · · 8-46
Attenuation · · · · · · · · · · · · · · · · · 8-46
Coupling · · · · · · · · · · · · · · · · · · · 8-46
Impedance· · · · · · · · · · · · · · · · · · 8-48
Selecting · · · · · · · · · · · · · · · · · · · · 6-9
Selecting channel · · · · · · · · · · · · 8-97
Subsystems· · · · · · · · · · · · · · · · · 8-45
INPut block · · · · · · · · · · · · · · · · · · · · 5-3
Input C Acquisition · · · · · · · · · · · · · 8-99
Instrument model · · · · · · · · · · · · · · · 5-2
Interface clear· · · · · · · · · · · · · · · · · 3-19
Internal reference · · · · · · · · · · · · · 8-100
Interpolators
Calibration · · · · · · · · · · · · · · · · · 8-26
Interrupted · · · · · · · · · · · · · · · · · · · · 3-5
K
K, L and M · · · · · · · · · · · · · · · · · · · 8-21
Keywords · · · · · · · · · · · · · · · · · · · · 3-11
L
Leaf node · · · · · · · · · · · · · · · · · · · · 3-10
Learn Device Setup · · · · · · · · · · · 8-134
Learn Macro · · · · · · · · · · · · · · · · · 8-133
Level
Fixed trigger · · · · · · · · · · · · · · · · 8-49
Limit
Check lower· · · · · · · · · · · · · · · · · 8-20
Check Upper · · · · · · · · · · · · · · · · 8-21
Enable · · · · · · · · · · · · · · · · · · · · · 8-15
Enable monitoring · · · · · · · · · · · · 8-22
Fail· · · · · · · · · · · · · · · · · · · · · · · · 8-17
Monitoring · · · · · · · · · · · · · · · · · · 6-22
Passed · · · · · · · · · · · · · · · · · · · 8-106
Set lower · · · · · · · · · · · · · · · · · · · 8-19
Set upper· · · · · · · · · · · · · · · · · · · 8-20
Limits
Enable Monitoring · · · · · · · · · · · · 8-15
Failure counter auto reset · · · · · · 8-16
Listener function · · · · · · · · · · · · · · · · 1-5
Local
Control · · · · · · · · · · · · · · · · · · · · · · 1-4
Lockout · · · · · · · · · · · · · · · · · · · · · 3-6
Operation· · · · · · · · · · · · · · · · · · · · 3-6
Long form · · · · · · · · · · · · · · · · · · · · · 3-8
Low Pass Filter · · · · · · · · · · · · · · · · 8-47
Lower case · · · · · · · · · · · · · · · · · · · · 3-8
Lower Limit
Check · · · · · · · · · · · · · · · · · · · · · 8-20
Fail· · · · · · · · · · · · · · · · · · · · · · · · 8-17
Set · · · · · · · · · · · · · · · · · · · · · · · · 8-19
VIII
Trigger · · · · · · · · · · · · · · · · · · · · 8-141
Measurement Function· · · · · · · · · · 8-53
Measurement Time· · · · · · · · · · · · · 8-92
Setting · · · · · · · · · · · · · · · · · · · · · 8-92
Measuring
Burst CW · · · · · · · · · · · · · · · · · · · 8-61
Duty Cycle · · · · · · · · · · · · · · · · · · 8-64
Fall Time · · · · · · · · · · · · · · · · · · · 8-70
Frequency · · · · · · · · · · · · · · · · · · 8-60
Frequency Back-to-Back· · · · · · · 8-74
Frequency ratio · · · · · · · · · · · · · · 8-63
Input selection · · · · · · · · · · · · · · · · 6-9
Period · · · · · · · · · · · · · · · · · · · · · 8-68
Period Back-to-Back · · · · · · · · · · 8-74
Phase · · · · · · · · · · · · · · · · · · · · · 8-69
PRF · · · · · · · · · · · · · · · · · · · · · · · 8-62
Pulse width · · · · · · · · · · · · · · · · · 8-71
Rise Time · · · · · · · · · · · · · · · · · · 8-69
Select function· · · · · · · · · · · · · · · 8-28
Selecting function · · · · · · · · · · · · 8-97
Terminate · · · · · · · · · · · · · · · · · · · 8-4
Time Interval · · · · · · · · · · · · · · · · 8-70
Time Interval Error (TIE) · · · · · · · 8-75
Timed Totalize · · · · · · · · · · · · · · · 8-10
Time-Interval · · · · · · · · · · · · · · · · 8-70
Transition time· · · · · · · · · · · · · · · 8-69
Measuring time
Range · · · · · · · · · · · · · · · · · · · · · 8-92
Memory
Fast · · · · · · · · · · · · · · · · · · · · · · · 8-58
Free for Macros· · · · · · · · · · · · · · 8-82
Recall and measure fast · · · · · · · 8-58
Message
Available · · · · · · · · · · · · · · · · · · 8-140
Exchange Control · · · · · · · · · · · · · 3-4
exchange initialization · · · · · · · · · 3-19
terminator · · · · · · · · · · · · · · · · · · · 3-5
MIN · · · · · · · · · · · · · · · · · · · · · · · · · 8-14
Mnemonic conventions· · · · · · · · · · · 1-3
Mnemonics · · · · · · · · · · · · · · · · · · · · 3-8
Monitor
M
Macro · · · · · · · · · · · · · · · · · · · · · · · 3-13
Data types · · · · · · · · · · · · · · · · · · 3-13
Define · · · · · · · · · · · · · · · · · · · · 8-129
Delete · · · · · · · · · · · 3-15, 8-82, 8-138
Delete all · · · · · · · · · · · · · · · · · · 8-136
Description · · · · · · · · · · · · · · · · · 3-13
Enable · · · · · · · · · · · · · · · · · · · · 8-130
Get· · · · · · · · · · · · · · · · · · · · · · · 8-132
How to execute · · · · · · · · · · · · · · 3-14
Learn · · · · · · · · · · · · · · · · · · · · · 8-133
Memory states· · · · · · · · · · · · · · · 8-83
Names · · · · · · · · · · · · · · · · · · · · · 3-13
Purge · · · · · · · · · · · · · · · · · · · · · 8-136
Mathematics
Enable · · · · · · · · · · · · · · · · · · · · · 8-22
Select expression · · · · · · · · · · · · 8-21
MAV · · · · · · · · · · · · · · · · · · · 3-19, 8-140
MAX · · · · · · · · · · · · · · · · · · · · 3-11, 8-14
MEAN · · · · · · · · · · · · · · · · · · · · · · · 8-14
Measure · · · · · · · · · · · · · · · · · · · · · · 5-5
Array · · · · · · · · · · · · · · · · · · · · · · 8-57
Description · · · · · · · · · · · · · · · · · · 6-7
Functions· · · · · · · · · · · · · · · · · · · 8-59
Once · · · · · · · · · · · · · · · · · · · · · · 8-56
Scalar · · · · · · · · · · · · · · · · · · · · · 8-56
Volt neg. peak · · · · · · · · · · · · · · · 8-65
Volt peak · · · · · · · · · · · · · · · · · · · 8-65
Measurement
Abort · · · · · · · · · · · · · · · · · · · · · · · 8-4
Continuously initiated · · · · · · · · · 8-44
Fetch Results · · · · · · · · · · · · · · · 8-35
Function· · · · · · · · · · · · · · · · · · · · · 5-5
High Speed Voltage· · · · · · · · · · · 8-96
Initiate · · · · · · · · · · · · · · · · · · · · · 8-44
No. of, on ext arm start · · · · · · · 8-124
No. on each bus arm· · · · · · · · · · · 8-6
Started (MST) · · · · · · · · · · · · · · · 6-19
Status · · · · · · · · · · · · · · · · · · · · 8-107
Stopped (MSP) · · · · · · · · · · · · · · 6-19
IX
Limits · · · · · · · · · · · · · · · · · · 6-3, 8-15
Monitor of low limit · · · · · · · · · · · 6-22
of high limit · · · · · · · · · · · · · · · · · 6-22
MSP-bit · · · · · · · · · · · · · · · · · · · · · · 6-19
MSS · · · · · · · · · · · · · · · · · · · · · · · 8-141
MST-bit · · · · · · · · · · · · · · · · · · · · · · 6-19
Multiple measurements
See Array
Multiple queries · · · · · · · · · · · · · · · · 3-9
Overflow · · · · · · · · · · · · · · · · · · · · · 6-20
Message · · · · · · · · · · · · · · · · · · · 3-17
Status· · · · · · · · · · · · · · · · · · · · · 8-110
Override
Bus Arm· · · · · · · · · · · · · · · · · · · · · 8-7
P
Parallel poll, · · · · · · · · · · · · · · · · · · · 1-5
Parameter list · · · · · · · · · · · · · · · · · 3-12
Parenthesis· · · · · · · · · · · · · · · · · · · 3-12
Parser · · · · · · · · · · · · · · · · · · · · · · · · 3-4
Peak-to-Peak
Voltage · · · · · · · · · · · · · · · · · · · · 8-66
Period measurements · · · · · · · · · · 8-68
Phase · · · · · · · · · · · · · · · · · · · · · · · 8-69
PMT · · · · · · · · · · · · · · · · · · · · · 3-7, 3-10
PON-bit · · · · · · · · · · · · · · · · 6-16, 8-131
Positive slope · · · · · · · · · · · · · · · · · 8-51
Power
RF input· · · · · · · · · · · · · · · · · · · · 8-61
Power On· · · · · · · · · · · · · · · 6-16, 8-131
Status Clear· · · · · · · · · · · · · · · · 8-136
Preset · · · · · · · · · · · · · · · · · · · · · · 8-116
Status at power on · · · · · · · · · · 8-136
Status registers · · · · · · · · · · · · · 8-109
PRF· · · · · · · · · · · · · · · · · · · · · · · · · 8-62
PRF Measurement · · · · · · · · · · · · · 8-62
Program message terminator · 3-7, 3-10
Program messages · · · · · · · · · · · · · 3-7
Programming examples
Block measurements· · · · · · · · · · · 4-5
Fast measurements · · · · · · · · · · · 4-8
Individual measurements · · · · · · · 4-3
USB communication · · · · · · · · · · 4-11
Programming Examples
Continuous Measurements · · · · · 4-13
Protected User Data · · · · · · · · · · · 8-137
Pulse
Repetition Frequency · · · · · · · · · 8-62
Width · · · · · · · · · · · · · · · · · · · · · · 8-71
Purge Macro · · · · · · · · · · · · · · · · · 8-136
N
Negative slope · · · · · · · · · · · · · · · · 8-51
Non-decimal data · · · · · · · · · · · · · · 3-12
Notation habit · · · · · · · · · · · · · · · · · · 3-9
NRf · · · · · · · · · · · · · · · · · · · · · · · · · 3-11
Numeric data· · · · · · · · · · · · · · · · · · 3-11
Numeric expression data · · · · · · · · 3-12
O
OFL-bit · · · · · · · · · · · · · · · · · · · · · · 6-20
On/Off, Hold Off · · · · · · · · · · · · · · · 8-92
OPC-bit · · · · · · · · · · · · · · · · · · · · · · 6-17
Operation
Complete · · · · · · · · · · · · · · · · · · 8-134
Complete (OPC) · · · · · · · 6-17, 8-131
Complete Query · · · · · · · · · · · · 8-135
Operation Status
Bit · · · · · · · · · · · · · · · · · · · · · · · 8-140
Bits in register · · · · · · · · · · · · · · · 6-19
Enable · · · · · · · · · · · · · · · · · · · · 8-108
Event · · · · · · · · · · · · · · · · · · · · · 8-109
Group Overview · · · · · · · · · · · · · 6-18
OPR · · · · · · · · · · · · · · · · · · · · · · · 8-140
Optional nodes · · · · · · · · · · · · · · · · 3-10
Options
Identification · · · · · · · · · · · · · · · 8-135
Output
Configuration · · · · · · · · · · · · · · · · 8-86
Polarity · · · · · · · · · · · · · · · · · · · · 8-86
Output queue · · · · · · · · · · · · · · · · · 6-13
Output Subsystem · · · · · · · · · · · · · 8-85
X
Message terminator · · · · · · · · · · · 3-9
Messages · · · · · · · · · · · · · · · · · · · 3-7
Result
Fetch one · · · · · · · · · · · · · · · · · · 8-34
Reading · · · · · · · · · · · · · · · · · · · · 8-88
Retrieve
Front panel setting · · · · · · · · · · 8-137
Measurement result · · · · · · · · · · 8-34
Rise Time
Measurements· · · · · · · · · · · · · · · 8-69
Trigger levels· · · · · · · · · · · · · · · · 8-50
Rmt · · · · · · · · · · · · · · · · · · · · · · · · · · 3-9
Root level · · · · · · · · · · · · · · · · · · · · · 3-8
Root node · · · · · · · · · · · · · · · · · · · · · 3-8
RQC-bit · · · · · · · · · · · · · · · · 6-17, 8-131
RQS · · · · · · · · · · · · · · · · · · · · · · · 8-140
RST· · · · · · · · · · · · · · · · · · · · · · · · · 3-20
Q
QUE · · · · · · · · · · · · · · · · · · · · · · · 8-140
Query
Error · · · · 3-4, 3-18, 6-17, 7-12, 8-131
Multiple · · · · · · · · · · · · · · · · · · · · · 3-9
Questionable Data/signal · · · · · · · 8-140
Condition · · · · · · · · · · · · · · · · · · 8-110
Enable · · · · · · · · · · · · · · · · · · · · 8-111
Event · · · · · · · · · · · · · · · · · · · · · 8-111
Status group · · · · · · · · · · · · · · · · 6-20
Quotes · · · · · · · · · · · · · · · · · · · · · · 3-12
QYE-bit · · · · · · · · · · · · · · · · 6-17, 8-131
R
Ratio · · · · · · · · · · · · · · · · · · · · · · · · 8-63
Read · · · · · · · · · · · · · · · · · · · · · · · · · 5-6
Array · · · · · · · · · · · · · · · · · · · · · · 8-89
Function· · · · · · · · · · · · · · · · · · · · 8-87
One Result · · · · · · · · · · · · · · · · · 8-88
Scalar · · · · · · · · · · · · · · · · · · · · · 8-88
Read or Send Settings · · · · · · · · · 8-116
Recalculate Data · · · · · · · · · · · · · · 8-15
Recall · · · · · · · · · · · · · · · · · 8-58, 8-137
Reference
Selection · · · · · · · · · · · · · · · · · · 8-100
REMOTE · · · · · · · · · · · · · · · · · · · · · 1-4
Remote operation · · · · · · · · · · · · · · · 3-6
Remote/local· · · · · · · · · · · · · · · · · · · 1-5
Remove
All macros · · · · · · · · · · · · · · · · · 8-136
One macro· · · · · · · · · · · · · · · · · 8-138
Repetition · · · · · · · · · · · · · · · · · · · · · 1-3
Request Control (RQC)· · · · 6-17, 8-131
Request Service · · · · · · · · · · · · · · 8-140
Reset · · · · · · · · · · · · 3-19, 8-116, 8-138
Response
Data · · · · · · · · · · · · · · · · · · · · · · · · 3-9
Data Format · · · · · · · · · · · · · · · · 8-45
Data Type · · · · · · · · · · · · · · · · · · · 6-6
Message · · · · · · · · · · · · · · · · · · · · 3-5
S
Sample Size for Statistics· · · · · · · · 8-12
Save · · · · · · · · · · · · · · · · · · · · · · · 8-139
SCPI · · · · · · · · · · · · · · · · · · · · · · · · · 3-2
Screen Dump · · · · · · · · · · · · · · · · · 8-42
SDC · · · · · · · · · · · · · · · · · · · · · · · · 3-19
SDEV · · · · · · · · · · · · · · · · · · · · · · · 8-14
Select Mathematical Expression · · 8-21
Selective device clear· · · · · · · · · · · 3-19
Self Test
Activate · · · · · · · · · · · · · · · · · · · 8-142
Select · · · · · · · · · · · · · · · · · · · · 8-122
Semicolon · · · · · · · · · · · · · · · · · · · · · 3-8
SEND · · · · · · · · · · · · · · · · · · · · · · · · 1-4
SENSe block· · · · · · · · · · · · · · · · · · · 5-3
Sense Command Subsystem · · · · · 8-91
Sequential commands · · · · · · · · · · · 3-5
Service Request · · · · · · · · · · · · · · · 3-17
Capability· · · · · · · · · · · · · · · · · · · · 1-5
Enable · · · · · · · · · · · · · · · · · · · · 8-140
Set
Lower Limit · · · · · · · · · · · · · · · · · 8-19
Upper Limit · · · · · · · · · · · · · · · · · 8-20
XI
Set Basic TIE Frequency · · · · · · · 8-101
Settings
Reading · · · · · · · · · · · · · · · · · · · 8-116
Short form · · · · · · · · · · · · · · · · · · · · · 3-8
Single quotes · · · · · · · · · · · · · · · · · 3-12
Single Time Stamp · · · · · · · · · · · · · 8-72
Slope· · · · · · · · · · · · · · · · · · · · · · · · 8-51
Arming start · · · · · · · · · · · · · · · · · · 8-8
Stop arming · · · · · · · · · · · · · · · · · · 8-9
Smart Time Interval · · · · · · · · · · · 8-101
Source
Start arming · · · · · · · · · · · · · · · · · · 8-9
Stop arming · · · · · · · · · · · · · · · · · 8-10
Source Subsystem · · · · · · · · · · · · 8-103
Speed
Autotrigger· · · · · · · · · · · · · · · · · · 8-96
Voltage measurements, high· · · · 8-96
Standard deviation · · · · · · · · · · · · · 8-14
Standard Event Status
Enable · · · · · · · · · · · · · · · · · · · · 8-131
Standard event status register · · · · 6-16
Standardized Device specific
errors· · · · · · · · · · · · · · · · · · · · · · · 7-11
Standardized Error numbers · · 3-17, 7-2
Start arming
Delay · · · · · · · · · · · · · · · · · · · · · · · 8-7
Slope · · · · · · · · · · · · · · · · · · · · · · · 8-8
Start measurement · · · · · · · · · · · · · 8-44
Start source
Arming · · · · · · · · · · · · · · · · · · · · · · 8-9
Start/stop
Totalize · · · · · · · · · · · · · · · · · · · 8-102
Statistics
Enable · · · · · · · · · · · · · · · · · · · · · 8-13
Fetch data · · · · · · · · · · · · · · · · · · 8-14
Recalculate data · · · · · · · · · · · · · 8-15
Recalculating data· · · · · · · · · · · · 8-15
Sample size· · · · · · · · · · · · · · · · · 8-12
Sample Size · · · · · · · · · · · · · · · · 8-12
Type· · · · · · · · · · · · · · · · · · · · · · · 8-14
Status
Clear · · · · · · · · · · · · · · · · · · · · · 8-128
Clear data structures· · · · · · · · · · 3-20
Enable reporting · · · · · · · · · · · · 8-109
Enabling Standard Event Status 8-131
Event Status Register · · · · · · · · 8-132
Limit monitor · · · · · · · · · · · · · · · 8-106
Measurement started · · · · · · · · 8-108
Measurement stopped · · · · · · · 8-108
Operation event· · · · · · · · · · · · · 8-109
Overflow· · · · · · · · · · · · · · · · · · · 8-110
Preset · · · · · · · · · · · · · · · · · · · · 8-109
Questionable Data/signal · · · · · 8-110
Questionable Data/signal, Event
· · · · · · · · · · · · · · · · · · · · · · · · · · 8-111
Register structure · · · · · · · · · · · · 3-16
Subsystem· · · · · · · · · · · · · · · · · 8-105
Timeout · · · · · · · · · · · · · · · · · · · 8-110
Unexpected parameter · · · · · · · 8-110
Using the reporting · · · · · · 3-16, 6-10
Waiting for bus arming · · · · · · · 8-108
Waiting for triggering · · · · · · · · · 8-108
Status byte· · · · · · · · · · · · · · · 3-16, 6-10
Bit 0 · · · · · · · · · · · · · · · · · · · · · · 8-106
Bit 2 · · · · · · · · · · · · · · · · · · · · · · · 6-13
Bit 3 · · · · · · · · · · · · · · · · · · · · · · 8-110
Bit 5 · · · · · · · · · · · · · · · · · · · · · · 8-131
Bit 6 · · · · · · · · · · · · · · · · · · · · · · 8-141
Bit 7 · · · · · · · · · · · · · · · · · · · · · · 8-108
Query· · · · · · · · · · · · · · · · · · · · · 8-141
Reading · · · · · · · · · · · · · · 6-13, 8-141
Status Register
Read · · · · · · · · · · · · · · · · · · · · · 8-107
Status reporting · · · · · · · · · · · 3-16, 6-10
Stop Arming
Slope · · · · · · · · · · · · · · · · · · · · · · · 8-9
Source · · · · · · · · · · · · · · · · · · · · · 8-10
Store
Front panel settings· · · · · · · · · · 8-139
String data· · · · · · · · · · · · · · · · · · · · 3-12
Subnodes · · · · · · · · · · · · · · · · · · · · · 3-8
Suffixes · · · · · · · · · · · · · · · · · · · · · · 3-11
XII
Summary
Measurement commands · · · · · · · 6-8
Of input amplifier settings · · · · · · · 6-6
Syntax
and Style · · · · · · · · · · · · · · · · · · · · 3-7
System Subsystem · · · · · · · · · · · · 8-113
T
Talker function · · · · · · · · · · · · · · · · · 1-5
Terminate
Measurement · · · · · · · · · · · · · · · · 8-4
Terminator· · · · · · · · · · · · · · · · · · · · · 3-8
50ohms/1Mohm· · · · · · · · · · · · · · 8-48
Test
Activating· · · · · · · · · · · · · · · · · · 8-142
Selecting internal self-test· · · · · 8-122
Subsystem· · · · · · · · · · · · · · · · · 8-121
Time
Hold Off · · · · · · · · · · · · · · · · · · · · 8-93
Interval· · · · · · · · · · · · · · · · · · · · · 8-70
Measure Rise · · · · · · · · · · · · · · · 8-69
Selecting Measurement Time · · · 8-92
Time out
For measurement (TIO) · · · · · · · 6-20
Time Stamp· · · · · · · · · · · · · · · · · · · 8-73
Timebase
External/internal · · · · · · · · · · · · 8-100
Timeout
On/Off · · · · · · · · · · · · · · · · · · · · 8-118
Set · · · · · · · · · · · · · · · · · · · · · · · 8-119
Status· · · · · · · · · · · · · · · · · · · · · 8-110
TIO-bit· · · · · · · · · · · · · · · · · · · · · · · 6-20
Totalize
Manually · · · · · · · · · · · · · · · · · · · 8-30
Trigger· · · · · · · · · · · · · · · · · · · · · · · 6-25
See Also Command: *TRG
No. of, on ext arm start · · · · · · · 8-124
Slope · · · · · · · · · · · · · · · · · · · · · · 8-51
Subsystem · · · · · · · · · · · · 8-13, 8-123
Trigger level
Fixed · · · · · · · · · · · · · · · · · · · · · · 8-49
Trigger Level
Automatic · · · · · · · · · · · · · · · · · · 8-49
Fixed · · · · · · · · · · · · · · · · · · · · · · 8-49
Truncation rules · · · · · · · · · · · · · · · · 1-3
Type, Statistical· · · · · · · · · · · · · · · · 8-14
U
UEP-bit · · · · · · · · · · · · · · · · 6-20, 8-110
Unexpected parameter (UEP) · · · · 6-20
Status· · · · · · · · · · · · · · · · · · · · · 8-110
Unit separator · · · · · · · · · · · · · · · · · · 3-8
Unprotect · · · · · · · · · · · · · · · · · · · 8-119
Unterminated · · · · · · · · · · · · · · · · · · 3-5
Upper case · · · · · · · · · · · · · · · · · · · · 3-8
Upper Limit
Check · · · · · · · · · · · · · · · · · · · · · 8-21
Fail· · · · · · · · · · · · · · · · · · · · · · · · 8-17
Set · · · · · · · · · · · · · · · · · · · · · · · · 8-20
URQ-bit · · · · · · · · · · · · · · · · 6-16, 8-131
USB Interface · · · · · · · · · · · · · · · · · · 1-6
User data · · · · · · · · · · · · · · · · · · · 8-119
User request (URQ) · · · · · · 6-16, 8-131
V
Variable hysteresis
Auto levels· · · · · · · · · · · · · · · · · · 8-50
Volt
High Speed Measurements· · · · · 8-96
Negative Peak · · · · · · · · · · · · · · · 8-65
Peak · · · · · · · · · · · · · · · · · · · · · · 8-65
Peak-to-Peak· · · · · · · · · · · · · · · · 8-66
W
WAI · · · · · · · · · · · · · · · · · · · · · · · · · · 5-4
Wait for bus arming (WFA) · · · · · · · 6-19
Waiting for bus arming
Status · · · · · · · · · · · · · · · · · · · · 8-108
Waiting for trigger and/or
ext. arming (WFT) · · · · · · · · · · · · 6-19
Waiting for triggering
Status · · · · · · · · · · · · · · · · · · · · 8-108
XIII
Wait-to-continue · · · · · · · · · · · · · · 8-142
WFA-bit · · · · · · · · · · · · · · · · · · · · · · 6-19
WFT-bit · · · · · · · · · · · · · · · · · · · · · · 6-19
X
X1/X10 attenuation · · · · · · · · · · · · · 8-46
XIV
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertising