Agilent InfiniiVision
3000 X-Series
Oscilloscopes
Programmer's Guide
Notices
© Agilent Technologies, Inc. 2005-2011
No part of this manual may be reproduced
in any form or by any means (including
electronic storage and retrieval or translation into a foreign language) without prior
agreement and written consent from Agilent Technologies, Inc. as governed by
United States and international copyright
laws.
Trademarks
Microsoft®, MS-DOS®, Windows®, Windows 2000®, and Windows XP® are U.S.
registered trademarks of Microsoft Corporation.
Adobe®, Acrobat®, and the Acrobat
Logo® are trademarks of Adobe Systems
Incorporated.
Manual Part Number
Version 01.20.0000
Edition
June 15, 2011
Available in electronic format only
Agilent Technologies, Inc.
1900 Garden of the Gods Road
Colorado Springs, CO 80907 USA
Warranty
The material contained in this document is provided “as is,” and is subject to being changed, without notice,
in future editions. Further, to the maximum extent permitted by applicable
law, Agilent disclaims all warranties,
either express or implied, with regard
to this manual and any information
contained herein, including but not
limited to the implied warranties of
merchantability and fitness for a particular purpose. Agilent shall not be
liable for errors or for incidental or
consequential damages in connection
with the furnishing, use, or performance of this document or of any
information contained herein. Should
Agilent and the user have a separate
written agreement with warranty
terms covering the material in this
document that conflict with these
terms, the warranty terms in the separate agreement shall control.
Technology Licenses
The hardware and/or software described in
this document are furnished under a
license and may be used or copied only in
accordance with the terms of such license.
Restricted Rights Legend
agency regulation or contract clause. Use,
duplication or disclosure of Software is
subject to Agilent Technologies’ standard
commercial license terms, and non-DOD
Departments and Agencies of the U.S. Government will receive no greater than
Restricted Rights as defined in FAR
52.227-19(c)(1-2) (June 1987). U.S. Government users will receive no greater than
Limited Rights as defined in FAR 52.227-14
(June 1987) or DFAR 252.227-7015 (b)(2)
(November 1995), as applicable in any
technical data.
Safety Notices
A CAUTION notice denotes a hazard. It calls attention to an operating procedure, practice, or the like
that, if not correctly performed or
adhered to, could result in damage
to the product or loss of important
data. Do not proceed beyond a
CAUTION notice until the indicated
conditions are fully understood and
met.
A WARNING notice denotes a
hazard. It calls attention to an
operating procedure, practice, or
the like that, if not correctly performed or adhered to, could result
in personal injury or death. Do not
proceed beyond a WARNING
notice until the indicated conditions are fully understood and met.
If software is for use in the performance of
a U.S. Government prime contract or subcontract, Software is delivered and
licensed as “Commercial computer software” as defined in DFAR 252.227-7014
(June 1995), or as a “commercial item” as
defined in FAR 2.101(a) or as “Restricted
computer software” as defined in FAR
52.227-19 (June 1987) or any equivalent
In This Book
This book is your guide to programming the 3000 X-Series oscilloscopes:
Table 1 InfiniiVision 3000 X-Series Oscilloscope Models
Channels Input Bandwidth
100 MHz 200 MHz 350 MHz 500 MHz
4analog +
16 digital (mixed
signal)
2analog +
16 digital (mixed
signal)
4 analog DSO-X 3014A DSO-X 3024A DSO-X 3034A DSO-X 3054A
2 analog DSO-X 3012A DSO-X 3032A DSO-X 3052A
The first few chapters describe how to set up and get started:
• Chapter 1, “What's New,” starting on page 27, describes programming
command changes in the latest version of oscilloscope software.
• Chapter 2, “Setting Up,” starting on page 37, describes the steps you
must take before you can program the oscilloscope.
• Chapter 3, “Getting Started,” starting on page 47, gives a general
overview of oscilloscope program structure and shows how to program
the oscilloscope using a few simple examples.
• Chapter 4, “Commands Quick Reference,” starting on page 61, is a brief
listing of the 3000 X-Series oscilloscope commands and syntax.
MSO-X 3014A MSO-X 3024A MSO-X 3034A MSO-X 3054A
MSO-X 3012A MSO-X 3032A MSO-X 3052A
The next chapters provide reference information on common commands,
root level commands, other subsystem commands, and error messages:
• Chapter 5, “Common (*) Commands,” starting on page 131, describes
commands defined by the IEEE 488.2 standard that are common to all
instruments.
• Chapter 6, “Root (:) Commands,” starting on page 157, describes
commands that reside at the root level of the command tree and control
many of the basic functions of the oscilloscope.
• Chapter 7, “:ACQuire Commands,” starting on page 193, describes
commands for setting the parameters used when acquiring and storing
data.
• Chapter 8, “:BUS<n> Commands,” starting on page 207, describes
commands that control all oscilloscope functions associated with the
digital channels bus display.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 3
• Chapter 9, “:CALibrate Commands,” starting on page 217, describes
utility commands for determining the state of the calibration factor
protection button.
• Chapter 10, “:CHANnel<n> Commands,” starting on page 227, describes
commands that control all oscilloscope functions associated with
individual analog channels or groups of channels.
• Chapter 11, “:DEMO Commands,” starting on page 247, describes
commands that control the education kit (Option EDU) demonstration
signals that can be output on the oscilloscope's Demo 1 and Demo 2
terminals.
• Chapter 12, “:DIGital<d> Commands,” starting on page 253, describes
commands that control all oscilloscope functions associated with
individual digital channels.
• Chapter 13, “:DISPlay Commands,” starting on page 261, describes
commands that control how waveforms, graticule, and text are displayed
and written on the screen.
• Chapter 14, “:EXTernal Trigger Commands,” starting on page 269,
describes commands that control the input characteristics of the
external trigger input.
• Chapter 15, “:FUNCtion Commands,” starting on page 275, describes
commands that control math waveforms.
• Chapter 16, “:HARDcopy Commands,” starting on page 295, describes
commands that set and query the selection of hardcopy device and
formatting options.
• Chapter 17, “:LISTer Commands,” starting on page 313, describes
commands that turn on/off the Lister display for decoded serial data
and get the Lister data.
• Chapter 18, “:MARKer Commands,” starting on page 317, describes
commands that set and query the settings of X- axis markers (X1 and
X2 cursors) and the Y-axis markers (Y1 and Y2 cursors).
• Chapter 19, “:MEASure Commands,” starting on page 333, describes
commands that select automatic measurements (and control markers).
• Chapter 20, “:MTESt Commands,” starting on page 399, describes
commands that control the mask test features provided with
Option LMT.
• Chapter 21, “:POD Commands,” starting on page 433, describes
commands that control all oscilloscope functions associated with groups
of digital channels.
• Chapter 22, “:RECall Commands,” starting on page 439, describes
commands that recall previously saved oscilloscope setups, reference
waveforms, or masks.
• Chapter 23, “:SAVE Commands,” starting on page 447, describes
commands that save oscilloscope setups, screen images, and data.
4 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
• Chapter 24, “:SBUS<n> Commands,” starting on page 467, describes
commands that control oscilloscope functions associated with the serial
decode bus.
• Chapter 25, “:SEARch Commands,” starting on page 571, describes
commands that control oscilloscope functions associated with searching
for waveform events.
• Chapter 26, “:SYSTem Commands,” starting on page 629, describes
commands that control basic system functions of the oscilloscope.
• Chapter 27, “:TIMebase Commands,” starting on page 643, describes
commands that control all horizontal sweep functions.
• Chapter 28, “:TRIGger Commands,” starting on page 655, describes
commands that control the trigger modes and parameters for each
trigger type.
• Chapter 29, “:WAVeform Commands,” starting on page 731, describes
commands that provide access to waveform data.
• Chapter 30, “:WGEN Commands,” starting on page 767, describes
commands that control waveform generator (Option WGN) functions and
parameters.
• Chapter 31, “:WMEMory<r> Commands,” starting on page 785, describes
commands that control reference waveforms.
• Chapter 32, “Obsolete and Discontinued Commands,” starting on page
795, describes obsolete commands which still work but have been
replaced by newer commands and discontinued commands which are no
longer supported.
• Chapter 33, “Error Messages,” starting on page 847, lists the instrument
error messages that can occur while programming the oscilloscope.
The command descriptions in this reference show upper and lowercase
characters. For example, :AUToscale indicates that the entire command
name is :AUTOSCALE. The short form, :AUT, is also accepted by the
oscilloscope.
Then, there are chapters that describe programming topics and conceptual
information in more detail:
• Chapter 34, “Status Reporting,” starting on page 855, describes the
oscilloscope's status registers and how to check the status of the
instrument.
• Chapter 35, “Synchronizing Acquisitions,” starting on page 875,
describes how to wait for acquisitions to complete before querying
measurement results or performing other operations with the captured
data.
• Chapter 36, “More About Oscilloscope Commands,” starting on page
885, contains additional information about oscilloscope programming
commands.
Finally, there is a chapter that contains programming examples:
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 5
• Chapter 37, “Programming Examples,” starting on page 895.
Mixed-Signal
Oscilloscope
Channel
Differences
See Also • For more information on using the SICL, VISA, and VISA COM libraries
Because both the "analog channels only" oscilloscopes (DSO models) and
the mixed-signal oscilloscopes (MSO models) have analog channels, topics
that describe analog channels refer to all oscilloscope models. Whenever a
topic describes digital channels, that information applies only to the
mixed-signal oscilloscope models.
in general, see the documentation that comes with the Agilent IO
Libraries Suite.
• For information on controller PC interface configuration, see the
documentation for the interface card used (for example, the Agilent
82350A GPIB interface).
• For information on oscilloscope front-panel operation, see the User's
Guide.
• For detailed connectivity information, refer to the Agilent Technologies
USB/LAN/GPIB Connectivity Guide. For a printable electronic copy of
the Connectivity Guide , direct your Web browser to "www.agilent.com"
and search for "Connectivity Guide".
• For the latest versions of this and other manuals, see:
"http://www.agilent.com/find/3000X- Series- manual"
6 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Contents
1 What's New
2 Setting Up
In This Book 3
What's New in Version 1.20 28
What's New in Version 1.10 30
Version 1.00 at Introduction 31
Command Differences From 7000B Series Oscilloscopes 32
Step 1. Install Agilent IO Libraries Suite software 38
Step 2. Connect and set up the oscilloscope 39
Using the USB (Device) Interface 39
Using the LAN Interface 39
Using the GPIB Interface 40
Step 3. Verify the oscilloscope connection 41
3 Getting Started
Basic Oscilloscope Program Structure 48
Initializing 48
Capturing Data 48
Analyzing Captured Data 49
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 7
Programming the Oscilloscope 50
Referencing the IO Library 50
Opening the Oscilloscope Connection via the IO Library 51
Initializing the Interface and the Oscilloscope 51
Using :AUToscale to Automate Oscilloscope Setup 52
Using Other Oscilloscope Setup Commands 52
Capturing Data with the :DIGitize Command 53
Reading Query Responses from the Oscilloscope 55
Reading Query Results into String Variables 56
Reading Query Results into Numeric Variables 56
Reading Definite-Length Block Query Response Data 56
Sending Multiple Queries and Reading Results 57
Checking Instrument Status 58
Other Ways of Sending Commands 59
Tel ne t Soc ke ts 59
Sending SCPI Commands Using Browser Web Control 59
4 Commands Quick Reference
Command Summary 62
Syntax Elements 127
Number Format 127
<NL> (Line Terminator) 127
[ ] (Optional Syntax Terms) 127
{ } (Braces) 127
::= (Defined As) 127
< > (Angle Brackets) 128
... (Ellipsis) 128
n,..,p (Value Ranges) 128
d (Digits) 128
Quoted ASCII String 128
Definite-Length Block Response Data 128
5 Common (*) Commands
*CLS (Clear Status) 135
*ESE (Standard Event Status Enable) 136
*ESR (Standard Event Status Register) 138
*IDN (Identification Number) 140
*LRN (Learn Device Setup) 141
*OPC (Operation Complete) 142
*OPT (Option Identification) 143
8 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
*RCL (Recall) 145
*RST (Reset) 146
*SAV (Save) 149
*SRE (Service Request Enable) 150
*STB (Read Status Byte) 152
*TRG (Trigger) 154
*TST (Self Test) 155
*WAI (Wait To Continue) 156
6 Root (:) Commands
:ACTivity 161
:AER (Arm Event Register) 162
:AUToscale 163
:AUToscale:AMODE 165
:AUToscale:CHANnels 166
:AUToscale:FDEBug 167
:BLANk 168
:DIGitize 169
:MTEenable (Mask Test Event Enable Register) 171
:MTERegister[:EVENt] (Mask Test Event Event Register) 173
:OPEE (Operation Status Enable Register) 175
:OPERegister:CONDition (Operation Status Condition Register) 177
:OPERegister[:EVENt] (Operation Status Event Register) 179
:OVLenable (Overload Event Enable Register) 181
:OVLRegister (Overload Event Register) 183
:PRINt 185
:RUN 186
:SERial 187
:SINGle 188
:STATus 189
:STOP 190
:TER (Trigger Event Register) 191
:VIEW 192
7 :ACQuire Commands
:ACQuire:COMPlete 195
:ACQuire:COUNt 196
:ACQuire:MODE 197
:ACQuire:POINts 198
:ACQuire:SEGMented:ANALyze 199
:ACQuire:SEGMented:COUNt 200
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 9
:ACQuire:SEGMented:INDex 201
:ACQuire:SRATe 204
:ACQuire:TYPE 205
8 :BUS<n> Commands
:BUS<n>:BIT<m> 209
:BUS<n>:BITS 210
:BUS<n>:CLEar 212
:BUS<n>:DISPlay 213
:BUS<n>:LABel 214
:BUS<n>:MASK 215
9 :CALibrate Commands
:CALibrate:DATE 219
:CALibrate:LABel 220
:CALibrate:OUTPut 221
:CALibrate:PROTected 222
:CALibrate:STARt 223
:CALibrate:STATus 224
:CALibrate:TEMPerature 225
:CALibrate:TIME 226
10 :CHANnel<n> Commands
:CHANnel<n>:BWLimit 230
:CHANnel<n>:COUPling 231
:CHANnel<n>:DISPlay 232
:CHANnel<n>:IMPedance 233
:CHANnel<n>:INVert 234
:CHANnel<n>:LABel 235
:CHANnel<n>:OFFSet 236
:CHANnel<n>:PROBe 237
:CHANnel<n>:PROBe:HEAD[:TYPE] 238
:CHANnel<n>:PROBe:ID 239
:CHANnel<n>:PROBe:SKEW 240
:CHANnel<n>:PROBe:STYPe 241
:CHANnel<n>:PROTection 242
:CHANnel<n>:RANGe 243
:CHANnel<n>:SCALe 244
:CHANnel<n>:UNITs 245
:CHANnel<n>:VERNier 246
10 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
11 :DEMO Commands
:DEMO:FUNCtion 248
:DEMO:FUNCtion:PHASe:PHASe 251
:DEMO:OUTPut 252
12 :DIGital<d> Commands
:DIGital<d>:DISPlay 255
:DIGital<d>:LABel 256
:DIGital<d>:POSition 257
:DIGital<d>:SIZE 258
:DIGital<d>:THReshold 259
13 :DISPlay Commands
:DISPlay:CLEar 263
:DISPlay:DATA 264
:DISPlay:LABel 265
:DISPlay:LABList 266
:DISPlay:PERSistence 267
:DISPlay:VECTors 268
14 :EXTernal Trigger Commands
:EXTernal:BWLimit 270
:EXTernal:PROBe 271
:EXTernal:RANGe 272
:EXTernal:UNITs 273
15 :FUNCtion Commands
:FUNCtion:DISPlay 278
:FUNCtion[:FFT]:CENTer 279
:FUNCtion[:FFT]:SPAN 280
:FUNCtion[:FFT]:VTYPe 281
:FUNCtion[:FFT]:WINDow 282
:FUNCtion:GOFT:OPERation 283
:FUNCtion:GOFT:SOURce1 284
:FUNCtion:GOFT:SOURce2 285
:FUNCtion:INTegrate:IOFFset 286
:FUNCtion:OFFSet 287
:FUNCtion:OPERation 288
:FUNCtion:RANGe 289
:FUNCtion:REFerence 290
:FUNCtion:SCALe 291
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 11
:FUNCtion:SOURce1 292
:FUNCtion:SOURce2 293
16 :HARDcopy Commands
:HARDcopy:AREA 297
:HARDcopy:APRinter 298
:HARDcopy:FACTors 299
:HARDcopy:FFEed 300
:HARDcopy:INKSaver 301
:HARDcopy:LAYout 302
:HARDcopy:NETWork:ADDRess 303
:HARDcopy:NETWork:APPLy 304
:HARDcopy:NETWork:DOMain 305
:HARDcopy:NETWork:PASSword 306
:HARDcopy:NETWork:SLOT 307
:HARDcopy:NETWork:USERname 308
:HARDcopy:PALette 309
:HARDcopy:PRINter:LIST 310
:HARDcopy:STARt 311
17 :LISTer Commands
:LISTer:DATA 314
:LISTer:DISPlay 315
:LISTer:REFerence 316
18 :MARKer Commands
:MARKer:MODE 319
:MARKer:X1Position 320
:MARKer:X1Y1source 321
:MARKer:X2Position 322
:MARKer:X2Y2source 323
:MARKer:XDELta 324
:MARKer:XUNits 325
:MARKer:XUNits:USE 326
:MARKer:Y1Position 327
:MARKer:Y2Position 328
:MARKer:YDELta 329
:MARKer:YUNits 330
:MARKer:YUNits:USE 331
12 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
19 :MEASure Commands
:MEASure:ALL 344
:MEASure:AREa 345
:MEASure:BWIDth 346
:MEASure:CLEar 347
:MEASure:COUNter 348
:MEASure:DEFine 349
:MEASure:DELay 352
:MEASure:DUTYcycle 354
:MEASure:FALLtime 355
:MEASure:FREQuency 356
:MEASure:NEDGes 357
:MEASure:NPULses 358
:MEASure:NWIDth 359
:MEASure:OVERshoot 360
:MEASure:PEDGes 362
:MEASure:PERiod 363
:MEASure:PHASe 364
:MEASure:PPULses 365
:MEASure:PREShoot 366
:MEASure:PWIDth 367
:MEASure:RESults 368
:MEASure:RISetime 371
:MEASure:SDEViation 372
:MEASure:SHOW 373
:MEASure:SOURce 374
:MEASure:STATistics 376
:MEASure:STATistics:INCRement 377
:MEASure:STATistics:MCOunt 378
:MEASure:STATistics:RESet 379
:MEASure:STATistics:RSDeviation 380
:MEASure:TEDGe 381
:MEASure:TVALue 383
:MEASure:VAMPlitude 385
:MEASure:VAVerage 386
:MEASure:VBASe 387
:MEASure:VMAX 388
:MEASure:VMIN 389
:MEASure:VPP 390
:MEASure:VRATio 391
:MEASure:VRMS 392
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 13
:MEASure:VTIMe 393
:MEASure:VTOP 394
:MEASure:WINDow 395
:MEASure:XMAX 396
:MEASure:XMIN 397
20 :MTESt Commands
:MTESt:ALL 404
:MTESt:AMASk:CREate 405
:MTESt:AMASk:SOURce 406
:MTESt:AMASk:UNITs 407
:MTESt:AMASk:XDELta 408
:MTESt:AMASk:YDELta 409
:MTESt:COUNt:FWAVeforms 410
:MTESt:COUNt:RESet 411
:MTESt:COUNt:TIME 412
:MTESt:COUNt:WAVeforms 413
:MTESt:DATA 414
:MTESt:DELete 415
:MTESt:ENABle 416
:MTESt:LOCK 417
:MTESt:RMODe 418
:MTESt:RMODe:FACTion:MEASure 419
:MTESt:RMODe:FACTion:PRINt 420
:MTESt:RMODe:FACTion:SAVE 421
:MTESt:RMODe:FACTion:STOP 422
:MTESt:RMODe:SIGMa 423
:MTESt:RMODe:TIME 424
:MTESt:RMODe:WAVeforms 425
:MTESt:SCALe:BIND 426
:MTESt:SCALe:X1 427
:MTESt:SCALe:XDELta 428
:MTESt:SCALe:Y1 429
:MTESt:SCALe:Y2 430
:MTESt:SOURce 431
:MTESt:TITLe 432
21 :POD Commands
:POD<n>:DISPlay 435
:POD<n>:SIZE 436
:POD<n>:THReshold 437
14 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
22 :RECall Commands
:RECall:FILename 441
:RECall:MASK[:STARt] 442
:RECall:PWD 443
:RECall:SETup[:STARt] 444
:RECall:WMEMory<r>[:STARt] 445
23 :SAVE Commands
:SAVE:FILename 450
:SAVE:IMAGe[:STARt] 451
:SAVE:IMAGe:FACTors 452
:SAVE:IMAGe:FORMat 453
:SAVE:IMAGe:INKSaver 454
:SAVE:IMAGe:PALette 455
:SAVE:LISTer[:STARt] 456
:SAVE:MASK[:STARt] 457
:SAVE:PWD 458
:SAVE:SETup[:STARt] 459
:SAVE:WAVeform[:STARt] 460
:SAVE:WAVeform:FORMat 461
:SAVE:WAVeform:LENGth 462
:SAVE:WAVeform:LENGth:MAX 463
:SAVE:WAVeform:SEGMented 464
:SAVE:WMEMory:SOURce 465
:SAVE:WMEMory[:STARt] 466
24 :SBUS<n> Commands
General :SBUS<n> Commands 469
:SBUS<n>:DISPlay 470
:SBUS<n>:MODE 471
:SBUS<n>:CAN Commands 472
:SBUS<n>:CAN:COUNt:ERRor 474
:SBUS<n>:CAN:COUNt:OVERload 475
:SBUS<n>:CAN:COUNt:RESet 476
:SBUS<n>:CAN:COUNt:TOTal 477
:SBUS<n>:CAN:COUNt:UTILization 478
:SBUS<n>:CAN:SAMPlepoint 479
:SBUS<n>:CAN:SIGNal:BAUDrate 480
:SBUS<n>:CAN:SIGNal:DEFinition 481
:SBUS<n>:CAN:SOURce 482
:SBUS<n>:CAN:TRIGger 483
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 15
:SBUS<n>:CAN:TRIGger:PATTern:DATA 485
:SBUS<n>:CAN:TRIGger:PATTern:DATA:LENGth 486
:SBUS<n>:CAN:TRIGger:PATTern:ID 487
:SBUS<n>:CAN:TRIGger:PATTern:ID:MODE 488
:SBUS<n>:I2S Commands 489
:SBUS<n>:I2S:ALIGnment 491
:SBUS<n>:I2S:BASE 492
:SBUS<n>:I2S:CLOCk:SLOPe 493
:SBUS<n>:I2S:RWIDth 494
:SBUS<n>:I2S:SOURce:CLOCk 495
:SBUS<n>:I2S:SOURce:DATA 496
:SBUS<n>:I2S:SOURce:WSELect 497
:SBUS<n>:I2S:TRIGger 498
:SBUS<n>:I2S:TRIGger:AUDio 500
:SBUS<n>:I2S:TRIGger:PATTern:DATA 501
:SBUS<n>:I2S:TRIGger:PATTern:FORMat 503
:SBUS<n>:I2S:TRIGger:RANGe 504
:SBUS<n>:I2S:TWIDth 506
:SBUS<n>:I2S:WSLow 507
:SBUS<n>:IIC Commands 508
:SBUS<n>:IIC:ASIZe 509
:SBUS<n>:IIC[:SOURce]:CLOCk 510
:SBUS<n>:IIC[:SOURce]:DATA 511
:SBUS<n>:IIC:TRIGger:PATTern:ADDRess 512
:SBUS<n>:IIC:TRIGger:PATTern:DATA 513
:SBUS<n>:IIC:TRIGger:PATTern:DATa2 514
:SBUS<n>:IIC:TRIGger:QUALifier 515
:SBUS<n>:IIC:TRIGger[:TYPE] 516
:SBUS<n>:LIN Commands 518
:SBUS<n>:LIN:PARity 520
:SBUS<n>:LIN:SAMPlepoint 521
:SBUS<n>:LIN:SIGNal:BAUDrate 522
:SBUS<n>:LIN:SOURce 523
:SBUS<n>:LIN:STANdard 524
:SBUS<n>:LIN:SYNCbreak 525
:SBUS<n>:LIN:TRIGger 526
:SBUS<n>:LIN:TRIGger:ID 527
:SBUS<n>:LIN:TRIGger:PATTern:DATA 528
:SBUS<n>:LIN:TRIGger:PATTern:DATA:LENGth 530
:SBUS<n>:LIN:TRIGger:PATTern:FORMat 531
16 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
:SBUS<n>:SPI Commands 532
:SBUS<n>:SPI:BITorder 534
:SBUS<n>:SPI:CLOCk:SLOPe 535
:SBUS<n>:SPI:CLOCk:TIMeout 536
:SBUS<n>:SPI:FRAMing 537
:SBUS<n>:SPI:SOURce:CLOCk 538
:SBUS<n>:SPI:SOURce:DATA 539
:SBUS<n>:SPI:SOURce:FRAMe 540
:SBUS<n>:SPI:SOURce:MISO 541
:SBUS<n>:SPI:SOURce:MOSI 542
:SBUS<n>:SPI:TRIGger:PATTern:MISO:DATA 543
:SBUS<n>:SPI:TRIGger:PATTern:MISO:WIDTh 544
:SBUS<n>:SPI:TRIGger:PATTern:MOSI:DATA 545
:SBUS<n>:SPI:TRIGger:PATTern:MOSI:WIDTh 546
:SBUS<n>:SPI:TRIGger:TYPE 547
:SBUS<n>:SPI:WIDTh 548
:SBUS<n>:UART Commands 549
:SBUS<n>:UART:BASE 552
:SBUS<n>:UART:BAUDrate 553
:SBUS<n>:UART:BITorder 554
:SBUS<n>:UART:COUNt:ERRor 555
:SBUS<n>:UART:COUNt:RESet 556
:SBUS<n>:UART:COUNt:RXFRames 557
:SBUS<n>:UART:COUNt:TXFRames 558
:SBUS<n>:UART:FRAMing 559
:SBUS<n>:UART:PARity 560
:SBUS<n>:UART:POLarity 561
:SBUS<n>:UART:SOURce:RX 562
:SBUS<n>:UART:SOURce:TX 563
:SBUS<n>:UART:TRIGger:BASE 564
:SBUS<n>:UART:TRIGger:BURSt 565
:SBUS<n>:UART:TRIGger:DATA 566
:SBUS<n>:UART:TRIGger:IDLE 567
:SBUS<n>:UART:TRIGger:QUALifier 568
:SBUS<n>:UART:TRIGger:TYPE 569
:SBUS<n>:UART:WIDTh 570
25 :SEARch Commands
General :SEARch Commands 572
:SEARch:COUNt 573
:SEARch:MODE 574
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 17
:SEARch:STATe 575
:SEARch:EDGE Commands 576
:SEARch:EDGE:SLOPe 577
:SEARch:EDGE:SOURce 578
:SEARch:GLITch Commands 579
:SEARch:GLITch:GREaterthan 580
:SEARch:GLITch:LESSthan 581
:SEARch:GLITch:POLarity 582
:SEARch:GLITch:QUALifier 583
:SEARch:GLITch:RANGe 584
:SEARch:GLITch:SOURce 585
:SEARch:RUNT Commands 586
:SEARch:RUNT:POLarity 587
:SEARch:RUNT:QUALifier 588
:SEARch:RUNT:SOURce 589
:SEARch:RUNT:TIME 590
:SEARch:TRANsition Commands 591
:SEARch:TRANsition:QUALifier 592
:SEARch:TRANsition:SLOPe 593
:SEARch:TRANsition:SOURce 594
:SEARch:TRANsition:TIME 595
:SEARch:SERial:CAN Commands 596
:SEARch:SERial:CAN:PATTern:DATA 597
:SEARch:SERial:CAN:PATTern:DATA:LENGth 598
:SEARch:SERial:CAN:PATTern:ID 599
:SEARch:SERial:CAN:PATTern:ID:MODE 600
:SEARch:SERial:CAN:MODE 601
:SEARch:SERial:I2S Commands 602
:SEARch:SERial:I2S:AUDio 603
:SEARch:SERial:I2S:MODE 604
:SEARch:SERial:I2S:PATTern:DATA 605
:SEARch:SERial:I2S:PATTern:FORMat 606
:SEARch:SERial:I2S:RANGe 607
:SEARch:SERial:IIC Commands 608
:SEARch:SERial:IIC:MODE 609
:SEARch:SERial:IIC:PATTern:ADDRess 611
:SEARch:SERial:IIC:PATTern:DATA 612
:SEARch:SERial:IIC:PATTern:DATA2 613
:SEARch:SERial:IIC:QUALifier 614
18 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
:SEARch:SERial:LIN Commands 615
:SEARch:SERial:LIN:ID 616
:SEARch:SERial:LIN:MODE 617
:SEARch:SERial:LIN:PATTern:DATA 618
:SEARch:SERial:LIN:PATTern:DATA:LENGth 619
:SEARch:SERial:LIN:PATTern:FORMat 620
:SEARch:SERial:SPI Commands 621
:SEARch:SERial:SPI:MODE 622
:SEARch:SERial:SPI:PATTern:DATA 623
:SEARch:SERial:SPI:PATTern:WIDTh 624
:SEARch:SERial:UART Commands 625
:SEARch:SERial:UART:DATA 626
:SEARch:SERial:UART:MODE 627
:SEARch:SERial:UART:QUALifier 628
26 :SYSTem Commands
:SYSTem:DATE 631
:SYSTem:DSP 632
:SYSTem:ERRor 633
:SYSTem:LOCK 634
:SYSTem:PRESet 635
:SYSTem:PROTection:LOCK 638
:SYSTem:SETup 639
:SYSTem:TIME 641
27 :TIMebase Commands
:TIMebase:MODE 645
:TIMebase:POSition 646
:TIMebase:RANGe 647
:TIMebase:REFerence 648
:TIMebase:SCALe 649
:TIMebase:VERNier 650
:TIMebase:WINDow:POSition 651
:TIMebase:WINDow:RANGe 652
:TIMebase:WINDow:SCALe 653
28 :TRIGger Commands
General :TRIGger Commands 657
:TRIGger:FORCe 658
:TRIGger:HFReject 659
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 19
:TRIGger:HOLDoff 660
:TRIGger:LEVel:HIGH 661
:TRIGger:LEVel:LOW 662
:TRIGger:MODE 663
:TRIGger:NREJect 664
:TRIGger:SWEep 665
:TRIGger:DELay Commands 666
:TRIGger:DELay:ARM:SLOPe 667
:TRIGger:DELay:ARM:SOURce 668
:TRIGger:DELay:TDELay:TIME 669
:TRIGger:DELay:TRIGger:COUNt 670
:TRIGger:DELay:TRIGger:SLOPe 671
:TRIGger:DELay:TRIGger:SOURce 672
:TRIGger:EBURst Commands 673
:TRIGger:EBURst:COUNt 674
:TRIGger:EBURst:IDLE 675
:TRIGger:EBURst:SLOPe 676
:TRIGger:EBURst:SOURce 677
:TRIGger[:EDGE] Commands 678
:TRIGger[:EDGE]:COUPling 679
:TRIGger[:EDGE]:LEVel 680
:TRIGger[:EDGE]:REJect 681
:TRIGger[:EDGE]:SLOPe 682
:TRIGger[:EDGE]:SOURce 683
:TRIGger:GLITch Commands 684
:TRIGger:GLITch:GREaterthan 686
:TRIGger:GLITch:LESSthan 687
:TRIGger:GLITch:LEVel 688
:TRIGger:GLITch:POLarity 689
:TRIGger:GLITch:QUALifier 690
:TRIGger:GLITch:RANGe 691
:TRIGger:GLITch:SOURce 692
:TRIGger:OR Commands 693
:TRIGger:OR 694
:TRIGger:PATTern Commands 695
:TRIGger:PATTern 696
:TRIGger:PATTern:FORMat 698
:TRIGger:PATTern:GREaterthan 699
:TRIGger:PATTern:LESSthan 700
20 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
:TRIGger:PATTern:QUALifier 701
:TRIGger:PATTern:RANGe 703
:TRIGger:RUNT Commands 704
:TRIGger:RUNT:POLarity 705
:TRIGger:RUNT:QUALifier 706
:TRIGger:RUNT:SOURce 707
:TRIGger:RUNT:TIME 708
:TRIGger:SHOLd Commands 709
:TRIGger:SHOLd:SLOPe 710
:TRIGger:SHOLd:SOURce:CLOCk 711
:TRIGger:SHOLd:SOURce:DATA 712
:TRIGger:SHOLd:TIME:HOLD 713
:TRIGger:SHOLd:TIME:SETup 714
:TRIGger:TRANsition Commands 715
:TRIGger:TRANsition:QUALifier 716
:TRIGger:TRANsition:SLOPe 717
:TRIGger:TRANsition:SOURce 718
:TRIGger:TRANsition:TIME 719
:TRIGger:TV Commands 720
:TRIGger:TV:LINE 721
:TRIGger:TV:MODE 722
:TRIGger:TV:POLarity 723
:TRIGger:TV:SOURce 724
:TRIGger:TV:STANdard 725
:TRIGger:USB Commands 726
:TRIGger:USB:SOURce:DMINus 727
:TRIGger:USB:SOURce:DPLus 728
:TRIGger:USB:SPEed 729
:TRIGger:USB:TRIGger 730
29 :WAVeform Commands
:WAVeform:BYTeorder 739
:WAVeform:COUNt 740
:WAVeform:DATA 741
:WAVeform:FORMat 743
:WAVeform:POINts 744
:WAVeform:POINts:MODE 746
:WAVeform:PREamble 748
:WAVeform:SEGMented:COUNt 751
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 21
:WAVeform:SEGMented:TTAG 752
:WAVeform:SOURce 753
:WAVeform:SOURce:SUBSource 757
:WAVeform:TYPE 758
:WAVeform:UNSigned 759
:WAVeform:VIEW 760
:WAVeform:XINCrement 761
:WAVeform:XORigin 762
:WAVeform:XREFerence 763
:WAVeform:YINCrement 764
:WAVeform:YORigin 765
:WAVeform:YREFerence 766
30 :WGEN Commands
:WGEN:FREQuency 769
:WGEN:FUNCtion 770
:WGEN:FUNCtion:PULSe:WIDTh 773
:WGEN:FUNCtion:RAMP:SYMMetry 774
:WGEN:FUNCtion:SQUare:DCYCle 775
:WGEN:OUTPut 776
:WGEN:OUTPut:LOAD 777
:WGEN:PERiod 778
:WGEN:RST 779
:WGEN:VOLTage 780
:WGEN:VOLTage:HIGH 781
:WGEN:VOLTage:LOW 782
:WGEN:VOLTage:OFFSet 783
31 :WMEMory<r> Commands
:WMEMory<r>:CLEar 787
:WMEMory<r>:DISPlay 788
:WMEMory<r>:LABel 789
:WMEMory<r>:SAVE 790
:WMEMory<r>:SKEW 791
:WMEMory<r>:YOFFset 792
:WMEMory<r>:YRANge 793
:WMEMory<r>:YSCale 794
32 Obsolete and Discontinued Commands
:CHANnel:ACTivity 800
:CHANnel:LABel 801
22 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
:CHANnel:THReshold 802
:CHANnel2:SKEW 803
:CHANnel<n>:INPut 804
:CHANnel<n>:PMODe 805
:DISPlay:CONNect 806
:DISPlay:ORDer 807
:ERASe 808
:EXTernal:PMODe 809
:FUNCtion:SOURce 810
:FUNCtion:VIEW 811
:HARDcopy:DESTination 812
:HARDcopy:FILename 813
:HARDcopy:GRAYscale 814
:HARDcopy:IGColors 815
:HARDcopy:PDRiver 816
:MEASure:LOWer 817
:MEASure:SCRatch 818
:MEASure:TDELta 819
:MEASure:THResholds 820
:MEASure:TMAX 821
:MEASure:TMIN 822
:MEASure:TSTArt 823
:MEASure:TSTOp 824
:MEASure:TVOLt 825
:MEASure:UPPer 827
:MEASure:VDELta 828
:MEASure:VSTArt 829
:MEASure:VSTOp 830
:MTESt:AMASk:{SAVE | STORe} 831
:MTESt:AVERage 832
:MTESt:AVERage:COUNt 833
:MTESt:LOAD 834
:MTESt:RUMode 835
:MTESt:RUMode:SOFailure 836
:MTESt:{STARt | STOP} 837
:MTESt:TRIGger:SOURce 838
:PRINt? 839
:SAVE:IMAGe:AREA 841
:SBUS<n>:LIN:SIGNal:DEFinition 842
:TIMebase:DELay 843
:TRIGger:THReshold 844
:TRIGger:TV:TVMode 845
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 23
33 Error Messages
34 Status Reporting
Status Reporting Data Structures 857
Status Byte Register (STB) 859
Service Request Enable Register (SRE) 861
Trigger Event Register (TER) 862
Output Queue 863
Message Queue 864
(Standard) Event Status Register (ESR) 865
(Standard) Event Status Enable Register (ESE) 866
Error Queue 867
Operation Status Event Register (:OPERegister[:EVENt]) 868
Operation Status Condition Register (:OPERegister:CONDition) 869
Arm Event Register (AER) 870
Overload Event Register (:OVLRegister) 871
Mask Test Event Event Register (:MTERegister[:EVENt]) 872
Clearing Registers and Queues 873
Status Reporting Decision Chart 874
35 Synchronizing Acquisitions
Synchronization in the Programming Flow 876
Set Up the Oscilloscope 876
Acquire a Waveform 876
Retrieve Results 876
Blocking Synchronization 877
Polling Synchronization With Timeout 878
Synchronizing with a Single-Shot Device Under Test (DUT) 880
Synchronization with an Averaging Acquisition 882
24 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
36 More About Oscilloscope Commands
Command Classifications 886
Core Commands 886
Non-Core Commands 886
Obsolete Commands 886
Valid Command/Query Strings 887
Program Message Syntax 887
Duplicate Mnemonics 891
Tree Traversal Rules and Multiple Commands 891
Query Return Values 893
All Oscilloscope Commands Are Sequential 894
37 Programming Examples
VISA COM Examples 896
VISA COM Example in Visual Basic 896
VISA COM Example in C# 905
VISA COM Example in Visual Basic .NET 914
VISA COM Example in Python for .NET or IronPython 922
Index
VISA Examples 929
VISA Example in C 929
VISA Example in Visual Basic 938
VISA Example in C# 948
VISA Example in Visual Basic .NET 959
VISA Example in Python 969
SICL Examples 976
SICL Example in C 976
SICL Example in Visual Basic 985
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 25
26 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes
Programmer's Guide
1
What's New
What's New in Version 1.20 28
What's New in Version 1.10 30
Version 1.00 at Introduction 31
Command Differences From 7000B Series Oscilloscopes 32
27
1 What's New
What's New in Version 1.20
New features in version 1.20 of the InfiniiVision 3000 X-Series oscilloscope
software are:
• Edge Then Edge trigger.
• OR'ed edge trigger.
• Sine Cardinal, Exponential Rise, Exponential Fall, Cardiac, and
Gaussian Pulse waveform generator waveforms.
• X cursor units that let you measure time (seconds), frequency (Hertz),
phase (degrees), and ratio (percent), and Y cursor units that let you
measure the channel units (base) or ratio (percent).
• Option for specifying FFT vertical units as V RMS as well as decibels.
• Option for entering a DC offset correction factor for the integrate math
waveform input signal.
• Option for saving the maximum number of waveform data points.
New Commands
More detailed descriptions of the new and changed commands appear
below.
Command Description
:FUNCtion:INTegrate:IOFFset (see page 286 ) Lets you enter a DC offset correction factor for
the integrate math waveform input signal to
level a "ramp"ed waveform.
:FUNCtion[:FFT]:VTYPe (see page 281 ) Specifies FFT vertical units as DECibel or
VRMS.
:MARKer:XUNIts (see page 325 ) Specifies the units for X cursors.
:MARKer:XUNIts:USE (see page 326 ) Sets the current X1 and X2 cursor locations as
0 and 360 degrees if XUNIts is DEGRees or as 0
and 100 percent if XUNIts is PERCent.
:MARKer:YUNIts (see page 330 ) Specifies the units for Y cursors.
:MARKer:YUNIts:USE (see page 331 ) Sets the current Y1 and Y2 cursor locations as
0 and 100 percent if YUNIts is PERCent.
:MEASure:STATistics:MCOunt (see page 378 ) Specifies the maximum number of values used
when calculating measurement statistics.
:MEASure:STATistics:RSDeviation (see
page 380)
Disables or enables relative standard
deviations, that is, standard deviation/mean, in
the measurement statistics.
:SAVE:WAVeform:LENGth:MAX (see page 463 ) Enable or disables saving the maximum
number of waveform data points.
28 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
What's New 1
Command Description
:TRIGger:DELay:ARM:SLOPe (see page 667) Specifies the arming edge slope for the Edge
Then Edge trigger.
:TRIGger:DELay:ARM:SOURce (see page 668 ) Specifies the arming edge source for the Edge
Then Edge trigger.
:TRIGger:DELay:TDELay:TIME (see page 669 ) Specifies the delay time for the Edge Then Edge
trigger.
:TRIGger:DELay:TRIGger:COUNt (see page 670) Specifies the trigger edge count for the Edge
Then Edge trigger.
:TRIGger:DELay:TRIGger:SLOPe (see page 671 ) Specifies the trigger edge slope for the Edge
Then Edge trigger.
Changed
Commands
:TRIGger:DELay:TRIGger:SOURce (see
page 672)
:TRIGger:FORCe (see page 658 ) Now documented, this command is equivalent
:TRIGger:OR (see page 694 ) Specifies edges for the OR'ed edge trigger.
Command Differences
:DEMO:FUNCtion (see page 248 ) The ETE (Edge then Edge) function has been
:TRIGger:MODE (see page 663 ) The OR and DELay modes are added for the
:WGEN:FUNCtion (see page 770 ) The SINC, EXPRise, EXPFall, CARDiac, and
Specifies the trigger edge source for the Edge
Then Edge trigger.
to the front panel [Force Trigger] key which
causes an acquisition to be captured even
though the trigger condition has not been met.
added.
OR'ed edge trigger and the Edge Then Edge
trigger.
GAUSsian waveform types can now be
selected.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 29
1 What's New
What's New in Version 1.10
New command descriptions for Version 1.10 of the InfiniiVision
3000 X-Series oscilloscope software appear below.
New Commands
Command Description
:SYSTem:PRESet (see page 635 ) Now documented, this command is equivalent
to the front panel [Default Setup] key which
leaves some user settings, like preferences,
unchanged. The *RST command is equivalent
to a factory default setup where no user
settings are left unchanged.
30 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide