Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Notices © Agilent Technologies, Inc. 2005-2011 Manual Part Number 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. Version 01.10.0000 Trademarks Microsoft®, MS-DOS®, Windows®, Windows 2000®, and Windows XP® are U.S. registered trademarks of Microsoft Corporation.
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 4 analog + 16 digital (mixed signal) MSO-X 3014A MSO-X 3024A MSO-X 3034A MSO-X 3054A 2 analog + 16 digital (mixed signal) MSO-X 3012A MSO-X 3032A MSO-X 3052A 4 analog DSO-X 3014A DSO-X 3034A DSO-X 3054A 2 analog DSO-X 3012A DSO-X 3032A DSO-X 3052A DSO-X 3024A The first few chapters descr
• Chapter 9, “:CALibrate Commands,” starting on page 211, describes utility commands for determining the state of the calibration factor protection button. • Chapter 10, “:CHANnel Commands,” starting on page 221, describes commands that control all oscilloscope functions associated with individual analog channels or groups of channels.
• Chapter 24, “:SBUS Commands,” starting on page 453, describes commands that control oscilloscope functions associated with the serial decode bus. • Chapter 25, “:SEARch Commands,” starting on page 557, describes commands that control oscilloscope functions associated with searching for waveform events. • Chapter 26, “:SYSTem Commands,” starting on page 615, describes commands that control basic system functions of the oscilloscope.
• Chapter 37, “Programming Examples,” starting on page 869. Mixed-Signal Oscilloscope Channel Differences 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.
Contents In This Book 3 1 What's New What's New in Version 1.10 26 Version 1.00 at Introduction 27 Command Differences From 7000B Series Oscilloscopes 28 2 Setting Up Step 1. Install Agilent IO Libraries Suite software Step 2. Connect and set up the oscilloscope Using the USB (Device) Interface 35 Using the LAN Interface 35 Using the GPIB Interface 36 Step 3.
Other Ways of Sending Commands 55 Telnet Sockets 55 Sending SCPI Commands Using Browser Web Control 55 4 Commands Quick Reference Command Summary 58 Syntax Elements 121 Number Format 121 (Line Terminator) 121 [ ] (Optional Syntax Terms) 121 { } (Braces) 121 ::= (Defined As) 121 < > (Angle Brackets) 122 ... (Ellipsis) 122 n,..
:AUToscale:CHANnels 160 :AUToscale:FDEBug 161 :BLANk 162 :DIGitize 163 :MTEenable (Mask Test Event Enable Register) 165 :MTERegister[:EVENt] (Mask Test Event Event Register) 167 :OPEE (Operation Status Enable Register) 169 :OPERegister:CONDition (Operation Status Condition Register) :OPERegister[:EVENt] (Operation Status Event Register) 173 :OVLenable (Overload Event Enable Register) 175 :OVLRegister (Overload Event Register) 177 :PRINt 179 :RUN 180 :SERial 181 :SINGle 182 :STATus 183 :STOP 184 :TER (Trigge
:CALibrate:LABel 214 :CALibrate:OUTPut 215 :CALibrate:PROTected 216 :CALibrate:STARt 217 :CALibrate:STATus 218 :CALibrate:TEMPerature 219 :CALibrate:TIME 220 10 :CHANnel Commands :CHANnel:BWLimit 224 :CHANnel:COUPling 225 :CHANnel:DISPlay 226 :CHANnel:IMPedance 227 :CHANnel:INVert 228 :CHANnel:LABel 229 :CHANnel:OFFSet 230 :CHANnel:PROBe 231 :CHANnel:PROBe:HEAD[:TYPE] :CHANnel:PROBe:ID 233 :CHANnel:PROBe:SKEW 234 :CHANnel:PROBe:STYPe 235 :CHANnel:PROTection 236 :CH
:DISPlay:DATA 258 :DISPlay:LABel 259 :DISPlay:LABList 260 :DISPlay:PERSistence 261 :DISPlay:VECTors 262 14 :EXTernal Trigger Commands :EXTernal:BWLimit 264 :EXTernal:PROBe 265 :EXTernal:RANGe 266 :EXTernal:UNITs 267 15 :FUNCtion Commands :FUNCtion:CENTer 272 :FUNCtion:DISPlay 273 :FUNCtion:GOFT:OPERation 274 :FUNCtion:GOFT:SOURce1 275 :FUNCtion:GOFT:SOURce2 276 :FUNCtion:OFFSet 277 :FUNCtion:OPERation 278 :FUNCtion:RANGe 279 :FUNCtion:REFerence 280 :FUNCtion:SCALe 281 :FUNCtion:SOURce1 282 :FUNCtion:SOURc
:HARDcopy:PALette 301 :HARDcopy:PRINter:LIST 302 :HARDcopy:STARt 303 17 :LISTer Commands :LISTer:DATA 306 :LISTer:DISPlay 307 :LISTer:REFerence 308 18 :MARKer Commands :MARKer:MODE 311 :MARKer:X1Position 312 :MARKer:X1Y1source 313 :MARKer:X2Position 314 :MARKer:X2Y2source 315 :MARKer:XDELta 316 :MARKer:Y1Position 317 :MARKer:Y2Position 318 :MARKer:YDELta 319 19 :MEASure Commands :MEASure:ALL 332 :MEASure:AREa 333 :MEASure:BWIDth 334 :MEASure:CLEar 335 :MEASure:COUNter 336 :MEASure:DEFine 337 :MEASure:DEL
:MEASure:RESults 356 :MEASure:RISetime 359 :MEASure:SDEViation 360 :MEASure:SHOW 361 :MEASure:SOURce 362 :MEASure:STATistics 364 :MEASure:STATistics:INCRement 365 :MEASure:STATistics:RESet 366 :MEASure:TEDGe 367 :MEASure:TVALue 369 :MEASure:VAMPlitude 371 :MEASure:VAVerage 372 :MEASure:VBASe 373 :MEASure:VMAX 374 :MEASure:VMIN 375 :MEASure:VPP 376 :MEASure:VRATio 377 :MEASure:VRMS 378 :MEASure:VTIMe 379 :MEASure:VTOP 380 :MEASure:WINDow 381 :MEASure:XMAX 382 :MEASure:XMIN 383 20 :MTESt Commands :MTESt:ALL
:MTESt:RMODe:FACTion:PRINt 406 :MTESt:RMODe:FACTion:SAVE 407 :MTESt:RMODe:FACTion:STOP 408 :MTESt:RMODe:SIGMa 409 :MTESt:RMODe:TIME 410 :MTESt:RMODe:WAVeforms 411 :MTESt:SCALe:BIND 412 :MTESt:SCALe:X1 413 :MTESt:SCALe:XDELta 414 :MTESt:SCALe:Y1 415 :MTESt:SCALe:Y2 416 :MTESt:SOURce 417 :MTESt:TITLe 418 21 :POD Commands :POD:DISPlay 421 :POD:SIZE 422 :POD:THReshold 423 22 :RECall Commands :RECall:FILename 427 :RECall:MASK[:STARt] 428 :RECall:PWD 429 :RECall:SETup[:STARt] 430 :RECall:WMEMory[:ST
:SAVE:WMEMory:SOURce :SAVE:WMEMory[:STARt] 450 451 24 :SBUS Commands General :SBUS Commands :SBUS:DISPlay 456 :SBUS:MODE 457 455 :SBUS:CAN Commands 458 :SBUS:CAN:COUNt:ERRor 460 :SBUS:CAN:COUNt:OVERload 461 :SBUS:CAN:COUNt:RESet 462 :SBUS:CAN:COUNt:TOTal 463 :SBUS:CAN:COUNt:UTILization 464 :SBUS:CAN:SAMPlepoint 465 :SBUS:CAN:SIGNal:BAUDrate 466 :SBUS:CAN:SIGNal:DEFinition 467 :SBUS:CAN:SOURce 468 :SBUS:CAN:TRIGger 469 :SBUS:CAN:TRIGger:PATTern:DATA 471 :SB
:SBUS:IIC[:SOURce]:DATA 497 :SBUS:IIC:TRIGger:PATTern:ADDRess 498 :SBUS:IIC:TRIGger:PATTern:DATA 499 :SBUS:IIC:TRIGger:PATTern:DATa2 500 :SBUS:IIC:TRIGger:QUALifier 501 :SBUS:IIC:TRIGger[:TYPE] 502 :SBUS:LIN Commands 504 :SBUS:LIN:PARity 506 :SBUS:LIN:SAMPlepoint 507 :SBUS:LIN:SIGNal:BAUDrate 508 :SBUS:LIN:SOURce 509 :SBUS:LIN:STANdard 510 :SBUS:LIN:SYNCbreak 511 :SBUS:LIN:TRIGger 512 :SBUS:LIN:TRIGger:ID 513 :SBUS:LIN:TRIGger:PATTern:DATA 514 :SBUS:LIN:TRI
:SBUS:UART:COUNt:RXFRames 543 :SBUS:UART:COUNt:TXFRames 544 :SBUS:UART:FRAMing 545 :SBUS:UART:PARity 546 :SBUS:UART:POLarity 547 :SBUS:UART:SOURce:RX 548 :SBUS:UART:SOURce:TX 549 :SBUS:UART:TRIGger:BASE 550 :SBUS:UART:TRIGger:BURSt 551 :SBUS:UART:TRIGger:DATA 552 :SBUS:UART:TRIGger:IDLE 553 :SBUS:UART:TRIGger:QUALifier 554 :SBUS:UART:TRIGger:TYPE 555 :SBUS:UART:WIDTh 556 25 :SEARch Commands General :SEARch Commands :SEARch:COUNt 559 :SEARch:MODE 560 :SEARch:STATe 5
:SEARch:SERial:CAN Commands 582 :SEARch:SERial:CAN:PATTern:DATA 583 :SEARch:SERial:CAN:PATTern:DATA:LENGth 584 :SEARch:SERial:CAN:PATTern:ID 585 :SEARch:SERial:CAN:PATTern:ID:MODE 586 :SEARch:SERial:CAN:MODE 587 :SEARch:SERial:I2S Commands 588 :SEARch:SERial:I2S:AUDio 589 :SEARch:SERial:I2S:MODE 590 :SEARch:SERial:I2S:PATTern:DATA 591 :SEARch:SERial:I2S:PATTern:FORMat 592 :SEARch:SERial:I2S:RANGe 593 :SEARch:SERial:IIC Commands 594 :SEARch:SERial:IIC:MODE 595 :SEARch:SERial:IIC:PATTern:ADDRess 597 :SEARch:S
:SYSTem:PROTection:LOCK :SYSTem:SETup 625 :SYSTem:TIME 627 624 27 :TIMebase Commands :TIMebase:MODE 631 :TIMebase:POSition 632 :TIMebase:RANGe 633 :TIMebase:REFerence 634 :TIMebase:SCALe 635 :TIMebase:VERNier 636 :TIMebase:WINDow:POSition 637 :TIMebase:WINDow:RANGe 638 :TIMebase:WINDow:SCALe 639 28 :TRIGger Commands General :TRIGger Commands 643 :TRIGger:HFReject 644 :TRIGger:HOLDoff 645 :TRIGger:LEVel:HIGH 646 :TRIGger:LEVel:LOW 647 :TRIGger:MODE 648 :TRIGger:NREJect 649 :TRIGger:SWEep 650 :TRIGger:EBUR
:TRIGger:GLITch:QUALifier 668 :TRIGger:GLITch:RANGe 669 :TRIGger:GLITch:SOURce 670 :TRIGger:PATTern Commands 671 :TRIGger:PATTern 672 :TRIGger:PATTern:FORMat 674 :TRIGger:PATTern:GREaterthan 675 :TRIGger:PATTern:LESSthan 676 :TRIGger:PATTern:QUALifier 677 :TRIGger:PATTern:RANGe 679 :TRIGger:RUNT Commands 680 :TRIGger:RUNT:POLarity 681 :TRIGger:RUNT:QUALifier 682 :TRIGger:RUNT:SOURce 683 :TRIGger:RUNT:TIME 684 :TRIGger:SHOLd Commands 685 :TRIGger:SHOLd:SLOPe 686 :TRIGger:SHOLd:SOURce:CLOCk 687 :TRIGger:SHOLd
29 :WAVeform Commands :WAVeform:BYTeorder 715 :WAVeform:COUNt 716 :WAVeform:DATA 717 :WAVeform:FORMat 719 :WAVeform:POINts 720 :WAVeform:POINts:MODE 722 :WAVeform:PREamble 724 :WAVeform:SEGMented:COUNt 727 :WAVeform:SEGMented:TTAG 728 :WAVeform:SOURce 729 :WAVeform:SOURce:SUBSource 733 :WAVeform:TYPE 734 :WAVeform:UNSigned 735 :WAVeform:VIEW 736 :WAVeform:XINCrement 737 :WAVeform:XORigin 738 :WAVeform:XREFerence 739 :WAVeform:YINCrement 740 :WAVeform:YORigin 741 :WAVeform:YREFerence 742 30 :WGEN Commands :
:WMEMory:SAVE 764 :WMEMory:SKEW 765 :WMEMory:YOFFset 766 :WMEMory:YRANge 767 :WMEMory:YSCale 768 32 Obsolete and Discontinued Commands :CHANnel:ACTivity 774 :CHANnel:LABel 775 :CHANnel:THReshold 776 :CHANnel2:SKEW 777 :CHANnel:INPut 778 :CHANnel:PMODe 779 :DISPlay:CONNect 780 :DISPlay:ORDer 781 :ERASe 782 :EXTernal:PMODe 783 :FUNCtion:SOURce 784 :FUNCtion:VIEW 785 :HARDcopy:DESTination 786 :HARDcopy:FILename 787 :HARDcopy:GRAYscale 788 :HARDcopy:IGColors 789 :HARDcopy:PDRiver 790 :MEAS
:MTESt:RUMode 809 :MTESt:RUMode:SOFailure 810 :MTESt:{STARt | STOP} 811 :MTESt:TRIGger:SOURce 812 :PRINt? 813 :SAVE:IMAGe:AREA 815 :SBUS:LIN:SIGNal:DEFinition :TIMebase:DELay 817 :TRIGger:THReshold 818 :TRIGger:TV:TVMode 819 816 33 Error Messages 34 Status Reporting Status Reporting Data Structures Status Byte Register (STB) 831 833 Service Request Enable Register (SRE) Trigger Event Register (TER) Output Queue 835 836 837 Message Queue 838 (Standard) Event Status Register (ESR) 839 (Standar
Blocking Synchronization 851 Polling Synchronization With Timeout 852 Synchronizing with a Single-Shot Device Under Test (DUT) Synchronization with an Averaging Acquisition 854 856 36 More About Oscilloscope Commands Command Classifications 860 Core Commands 860 Non-Core Commands 860 Obsolete Commands 860 Valid Command/Query Strings 861 Program Message Syntax 861 Duplicate Mnemonics 865 Tree Traversal Rules and Multiple Commands Query Return Values 865 867 All Oscilloscope Commands Are Sequential
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 1 What's New What's New in Version 1.10 26 Version 1.
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 26 Command Description :SYSTem:PRESet (see page 621) 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.
What's New 1 Version 1.00 at Introduction The Agilent InfiniiVision 3000 X- Series oscilloscopes were introduced with version 1.00 of oscilloscope operating software. The command set is most closely related to the InfiniiVision 7000B Series oscilloscopes (and the 7000A Series, 6000 Series, and 54620/54640 Series oscilloscopes before them). For more information, see “Command Differences From 7000B Series Oscilloscopes" on page 28.
1 What's New Command Differences From 7000B Series Oscilloscopes The Agilent InfiniiVision 3000 X- Series oscilloscopes command set is most closely related to the InfiniiVision 7000B Series oscilloscopes (and the 7000A Series, 6000 Series, and 54620/54640 Series oscilloscopes before them). The main differences between the version 1.00 programming command set for the InfiniiVision 3000 X- Series oscilloscopes and the 6.
What's New Command Description :MEASure:PPULses (see page 353) Counts the number of positive pulses. :MEASure:WINDow (see page 381) When the zoomed time base in on, specifies whether the measurement window is the zoomed time base or the main time base. :MTESt:ALL (see page 390) Specifies whether all channels are included in the mask test. :RECall:WMEMory[:STARt] (see page 431) Recalls reference waveforms. :SAVE:WMEMory:SOURce (see page 450) Selects the source for saving a reference waveform.
1 What's New Changed Commands 30 Command Description :TRIGger:RUNT Commands (see page 680) Commands for triggering on runt pulses. :TRIGger:SHOLd Commands (see page 685) Commands for triggering on setup and hold time violations. :TRIGger:TRANsition Commands (see page 691) Commands for triggering on edge transitions. :WGEN Commands (see page 743) Commands for controlling the built-in waveform generator (with Option WGN license).
What's New Obsolete Commands Discontinued Commands Command Differences From InfiniiVision 7000B Series Oscilloscopes :WAVeform:SOURce (see page 729) Can select reference waveforms as the source. :VIEW (see page 186) PMEMory (pixel memory) locations are not present. Obsolete Command Current Command Equivalent Command Description :ACQuire:RSIGnal The 3000 X-Series oscilloscope does not have a 10 MHz REF BNC connector. :CALibrate:SWITch? Replaced by :CALibrate:PROTected? (see page 216).
1 32 What's New Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 2 Setting Up Step 1. Install Agilent IO Libraries Suite software 34 Step 2. Connect and set up the oscilloscope 35 Step 3. Verify the oscilloscope connection 37 This chapter explains how to install the Agilent IO Libraries Suite software, connect the oscilloscope to the controller PC, set up the oscilloscope, and verify the oscilloscope connection.
2 Setting Up Step 1. Install Agilent IO Libraries Suite software 1 Download the Agilent IO Libraries Suite software from the Agilent web site at: • "http://www.agilent.com/find/iolib" 2 Run the setup file, and follow its installation instructions.
2 Setting Up Step 2. Connect and set up the oscilloscope The 3000 X- Series oscilloscope has three different interfaces you can use for programming: • USB (device port). • LAN, when the LAN/VGA option module is installed. To configure the LAN interface, press the [Utility] key on the front panel, then press the I/O softkey, then press the Configure softkey. • GPIB, when the GPIB option module is installed. When installed, these interfaces are always active.
2 Setting Up If automatic configuration is not supported, get the oscilloscope's network parameters (hostname, domain, IP address, subnet mask, gateway IP, DNS IP, etc.). 3 Connect the oscilloscope to the local area network (LAN) by inserting LAN cable into the "LAN" port on the LAN/VGA option module. 4 Configure the oscilloscope's LAN interface: a Press the Configure softkey until "LAN" is selected. b Press the LAN Settings softkey.
Setting Up 2 Step 3. Verify the oscilloscope connection 1 On the controller PC, click on the Agilent IO Control icon in the taskbar and choose Agilent Connection Expert from the popup menu. 2 In the Agilent Connection Expert application, instruments connected to the controller's USB and GPIB interfaces should automatically appear. (You can click Refresh All to update the list of instruments on these interfaces.
2 Setting Up You must manually add instruments on LAN interfaces: a Right- click on the LAN interface, choose Add Instrument from the popup menu b If the oscilloscope is on the same subnet, select it, and click OK.
2 Setting Up Otherwise, if the instrument is not on the same subnet, click Add Address. i In the next dialog, select either Hostname or IP address, and enter the oscilloscope's hostname or IP address. ii Click Test Connection.
2 Setting Up iii If the instrument is successfully opened, click OK to close the dialog. If the instrument is not opened successfully, go back and verify the LAN connections and the oscilloscope setup.
2 Setting Up 3 Test some commands on the instrument: a Right- click on the instrument and choose Send Commands To This Instrument from the popup menu. b In the Agilent Interactive IO application, enter commands in the Command field and press Send Command, Read Response, or Send&Read. c Choose Connect>Exit from the menu to exit the Agilent Interactive IO application. 4 In the Agilent Connection Expert application, choose File>Exit from the menu to exit the application.
2 42 Setting Up Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 3 Getting Started Basic Oscilloscope Program Structure 44 Programming the Oscilloscope 46 Other Ways of Sending Commands 55 This chapter gives you an overview of programming the 3000 X- Series oscilloscopes. It describes basic oscilloscope program structure and shows how to program the oscilloscope using a few simple examples.
3 Getting Started Basic Oscilloscope Program Structure The following figure shows the basic structure of every program you will write for the oscilloscope. Initializing To ensure consistent, repeatable performance, you need to start the program, controller, and oscilloscope in a known state. Without correct initialization, your program may run correctly in one instance and not in another.
Getting Started 3 acquisition memory in the oscilloscope, or transferred to the controller for further analysis. Any additional commands sent while :DIGitize is working are buffered until :DIGitize is complete. You could also put the oscilloscope into run mode, then use a wait loop in your program to ensure that the oscilloscope has completed at least one acquisition before you make a measurement.
3 Getting Started Programming the Oscilloscope • "Referencing the IO Library" on page 46 • "Opening the Oscilloscope Connection via the IO Library" on page 47 • "Using :AUToscale to Automate Oscilloscope Setup" on page 48 • "Using Other Oscilloscope Setup Commands" on page 48 • "Capturing Data with the :DIGitize Command" on page 49 • "Reading Query Responses from the Oscilloscope" on page 51 • "Reading Query Results into String Variables" on page 52 • "Reading Query Results into Numeric Variables" on page
3 Getting Started 3 Click OK. To reference the Agilent VISA COM library in Microsoft Visual Basic 6.0: 1 Choose Project>References... from the main menu. 2 In the References dialog, check the "VISA COM 3.0 Type Library". 3 Click OK. Opening the Oscilloscope Connection via the IO Library PC controllers communicate with the oscilloscope by sending and receiving messages over a remote interface.
3 Getting Started Dim myMgr As VisaComLib.ResourceManager Dim myScope As VisaComLib.FormattedIO488 Set myMgr = New VisaComLib.ResourceManager Set myScope = New VisaComLib.FormattedIO488 ' Open the connection to the oscilloscope. Get the VISA Address from the ' Agilent Connection Expert (installed with Agilent IO Libraries Suite). Set myScope.IO = myMgr.Open("") ' Clear the interface buffer and set the interface timeout to 10 seconds . myScope.IO.Clear myScope.IO.
Getting Started 3 Vertical is set to 16 V full- scale (2 V/div) with center of screen at 1 V and probe attenuation set to 10. This example sets the time base at 1 ms full- scale (100 ms/div) with a delay of 100 µs. Example Oscilloscope Setup Code This program demonstrates the basic command structure used to program the oscilloscope. ' Initialize the instrument interface to a known state. myScope.IO.Clear myScope.IO.Timeout = 10000 ' Set interface timeout to 10 seconds.
3 Getting Started NOTE Ensure New Data is Collected When you change the oscilloscope configuration, the waveform buffers are cleared. Before doing a measurement, send the :DIGitize command to the oscilloscope to ensure new data has been collected. When you send the :DIGitize command to the oscilloscope, the specified channel signal is digitized with the current :ACQuire parameters.
3 Getting Started The easiest method of transferring a digitized waveform depends on data structures, formatting available and I/O capabilities. You must scale the integers to determine the voltage value of each point. These integers are passed starting with the left most point on the instrument's display. For more information, see the waveform subsystem commands and corresponding program code examples in Chapter 29, “:WAVeform Commands,” starting on page 707.
3 Getting Started Reading Query Results into String Variables The output of the instrument may be numeric or character data depending on what is queried. Refer to the specific command descriptions for the formats and types of data returned from queries. NOTE Express String Variables Using Exact Syntax In Visual Basic, string variables are case sensitive and must be expressed exactly the same each time they are used. The following example shows numeric data being returned to a string variable: myScope.
3 Getting Started /TLADQ NE %HFHSR 5G@S 'NKKNV "BST@K %@S@ AXSDR NE C@S@ SDQLHM@SNQ /TLADQ NE #XSDR SN AD 5Q@MRLHSSDC Figure 2 Definite-length block response data The "8" states the number of digits that follow, and "00001000" states the number of bytes to be transmitted.
3 Getting Started To read the :TIMebase:RANGe?;DELay? query result into multiple numeric variables, you could use the ReadList method to read the query results into a variant array variable using the commands: myScope.WriteString ":TIMebase:RANGe?;DELay?" Dim varResults() As Variant varResults() = myScope.
Getting Started 3 Other Ways of Sending Commands Standard Commands for Programmable Instrumentation (SCPI) can also be sent via a Telnet socket or through the Browser Web Control: • "Telnet Sockets" on page 55 • "Sending SCPI Commands Using Browser Web Control" on page 55 Telnet Sockets The following information is provided for programmers who wish to control the oscilloscope with SCPI commands in a Telnet session.
3 56 Getting Started Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 4 Commands Quick Reference Command Summary 58 Syntax Elements 121 57
4 Commands Quick Reference Command Summary • Common (*) Commands Summary (see page 59) • Root (:) Commands Summary (see page 63) • :ACQuire Commands Summary (see page 66) • :BUS Commands Summary (see page 66) • :CALibrate Commands Summary (see page 67) • :CHANnel Commands Summary (see page 68) • :DEMO Commands Summary (see page 70) • :DIGital Commands Summary (see page 70) • :DISPlay Commands Summary (see page 71) • :EXTernal Trigger Commands Summary (see page 71) • :FUNCtion Commands Summary (se
Commands Quick Reference 4 • :SEARch:SERial:IIC Commands Summary (see page 104) • :SEARch:SERial:LIN Commands Summary (see page 105) • :SEARch:SERial:SPI Commands Summary (see page 106) • :SEARch:SERial:UART Commands Summary (see page 106) • :SYSTem Commands Summary (see page 107) • :TIMebase Commands Summary (see page 107) • General :TRIGger Commands Summary (see page 108) • :TRIGger:EBURst Commands Summary (see page 109) • :TRIGger[:EDGE] Commands Summary (see page 110) • :TRIGger:GLITch Commands Summar
4 Commands Quick Reference Table 2 Common (*) Commands Summary (continued) Command Query Options and Query Returns n/a *IDN? (see page 132) AGILENT TECHNOLOGIES,,,X.XX.XX ::= the model number of the instrument ::= the serial number of the instrument ::= the software revision of the instrument n/a *LRN? (see page 135) ::= current instrument setup as a block of data in IEEE 488.
4 Commands Quick Reference Table 2 Common (*) Commands Summary (continued) Command Query Options and Query Returns n/a *OPT? (see page 137) ::= 0,0, ::= , , , , , , , , , , , , , , , , , , , , ,
4 Commands Quick Reference Table 2 Common (*) Commands Summary (continued) Command Query Options and Query Returns *SRE (see page 144) *SRE? (see page 145) ::= sum of all bits that are set, 0 to 255; an integer in NR1 format. ::= following values: Bit Weight Name Enables --- ------ ---- ---------7 128 OPER Operation Status Reg 6 64 ---- (Not used.) 5 32 ESB Event Status Bit 4 16 MAV Message Available 3 8 ---- (Not used.
4 Commands Quick Reference Table 3 Root (:) Commands Summary Command Query Options and Query Returns :ACTivity (see page 155) :ACTivity? (see page 155) ::= , ::= presence of edges (32-bit integer in NR1 format) ::= logical highs or lows (32-bit integer in NR1 format) n/a :AER? (see page 156) {0 | 1}; an integer in NR1 format :AUToscale [[,..
4 Commands Quick Reference Table 3 Root (:) Commands Summary (continued) Command Query Options and Query Returns :DIGitize [[,..
Commands Quick Reference Table 3 4 Root (:) Commands Summary (continued) Command Query Options and Query Returns :PRINt [] (see page 179) n/a ::= [][,..,] ::= {COLor | GRAYscale | PRINter0 | BMP8bit | BMP | PNG | NOFactors | FACTors} can be repeated up to 5 times.
4 Commands Quick Reference Table 4 :ACQuire Commands Summary Command Query Options and Query Returns :ACQuire:COMPlete (see page 189) :ACQuire:COMPlete? (see page 189) ::= 100; an integer in NR1 format :ACQuire:COUNt (see page 190) :ACQuire:COUNt? (see page 190) ::= an integer from 2 to 65536 in NR1 format :ACQuire:MODE (see page 191) :ACQuire:MODE? (see page 191) ::= {RTIMe | SEGMented} n/a :ACQuire:POINts? (see page 192) <# points> ::=
Commands Quick Reference Table 5 :BUS Commands Summary (continued) Command Query Options and Query Returns :BUS:CLEar (see page 206) n/a ::= 1 or 2; an integer in NR1 format :BUS:DISPlay {{0 | OFF} | {1 | ON}} (see page 207) :BUS:DISPlay? (see page 207) {0 | 1} ::= 1 or 2; an integer in NR1 format :BUS:LABel (see page 208) :BUS:LABel? (see page 208) ::= quoted ASCII string up to 10 characters ::= 1 or 2; an integer in NR1 format :BUS:MASK
4 Commands Quick Reference Table 6 :CALibrate Commands Summary (continued) Command Query Options and Query Returns n/a :CALibrate:STATus? (see page 218) ::= , ::= an integer status code ::= an ASCII status string n/a :CALibrate:TEMPeratur e? (see page 219) ::= degrees C delta since last cal in NR3 format n/a :CALibrate:TIME? (see page 220) ::= ,,; all in NR1 format
4 Commands Quick Reference Table 7 :CHANnel Commands Summary (continued) Command Query Options and Query Returns :CHANnel:PROBe (see page 231) :CHANnel:PROBe? (see page 231) ::= Probe attenuation ratio in NR3 format ::= 1-2 or 1-4r in NR1 format :CHANnel:PROBe:HEA D[:TYPE] (see page 232) :CHANnel:PROBe:HEA D[:TYPE]? (see page 232) ::= {SEND0 | SEND6 | SEND12 | SEND20 | DIFF0 | DIFF6 | DIFF12 | DIFF20 | NONE} ::= 1 to (#
4 Commands Quick Reference Table 8 :DEMO Commands Summary Command Query Options and Query Returns :DEMO:FUNCtion (see page 242) :DEMO:FUNCtion? (see page 244) ::= {SINusoid | NOISy | PHASe | RINGing | SINGle | AM | CLK | GLITch | BURSt | MSO | RUNT | TRANsition | RFBurst | SHOLd | LFSine | CAN | LIN | UART | I2C | SPI | I2S | CANLin} :DEMO:FUNCtion:PHASe: PHASe (see page 245) :DEMO:FUNCtion:PHASe: PHASe? (see page 245) ::= angle in degrees from 0 to 360 in NR3 f
4 Commands Quick Reference Table 10 :DISPlay Commands Summary Command Query Options and Query Returns :DISPlay:CLEar (see page 257) n/a n/a n/a :DISPlay:DATA? [][,][] (see page 258) ::= {BMP | BMP8bit | PNG} ::= {COLor | GRAYscale} ::= data in IEEE 488.
4 Commands Quick Reference Table 12 :FUNCtion Commands Summary Command Query Options and Query Returns :FUNCtion:CENTer (see page 272) :FUNCtion:CENTer? (see page 272) ::= the current center frequency in NR3 format. The range of legal values is from 0 Hz to 25 GHz.
4 Commands Quick Reference Table 12 :FUNCtion Commands Summary (continued) Command Query Options and Query Returns :FUNCtion:REFerence (see page 280) :FUNCtion:REFerence? (see page 280) ::= the value at center screen in NR3 format. The range of legal values is +/-10 times the current sensitivity of the selected function.
4 Commands Quick Reference Table 13 :HARDcopy Commands Summary (continued) Command Query Options and Query Returns :HARDcopy:FFEed {{0 | OFF} | {1 | ON}} (see page 292) :HARDcopy:FFEed? (see page 292) {0 | 1} :HARDcopy:INKSaver {{0 | OFF} | {1 | ON}} (see page 293) :HARDcopy:INKSaver? (see page 293) {0 | 1} :HARDcopy:LAYout (see page 294) :HARDcopy:LAYout? (see page 294) ::= {LANDscape | PORTrait} :HARDcopy:NETWork:ADD Ress (see page 295) :HARDcopy:NETWork:ADD Ress
Commands Quick Reference 4 Table 14 :LISTer Commands Summary Command Query Options and Query Returns n/a :LISTer:DATA? (see page 306) ::= comma-separated data with newlines at the end of each row :LISTer:DISPlay {{OFF | 0} | {SBUS1 | ON | 1} | {SBUS2 | 2} | ALL} (see page 307) :LISTer:DISPlay? (see page 307) {OFF | SBUS1 | SBUS2 | ALL} :LISTer:REFerence (see page 308) :LISTer:REFerence? (see page 308) ::= {TRIGger | PREVious} Table 15 :MARKer Commands Summa
4 Commands Quick Reference Table 15 :MARKer Commands Summary (continued) Command Query Options and Query Returns n/a :MARKer:XDELta? (see page 316) ::= X cursors delta value in NR3 format :MARKer:Y1Position [suffix] (see page 317) :MARKer:Y1Position? (see page 317) ::= Y1 cursor position value in NR3 format [suffix] ::= {V | mV | dB} ::= Y1 cursor position value in NR3 format :MARKer:Y2Position [suffix] (see page 318) :MARKer:Y2Positio
Commands Quick Reference 4 Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:COUNter [] (see page 336) :MEASure:COUNter? [] (see page 336) ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital | EXTernal} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format ::= counter frequency in Hertz in NR3 format :MEASure:DEFine DELay,
4 Commands Quick Reference Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:DUTYcycle [] (see page 342) :MEASure:DUTYcycle? [] (see page 342) ::= {CHANnel | FUNCtion | MATH | WMEMory} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format ::=
4 Commands Quick Reference Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:NEDGes [] (see page 345) :MEASure:NEDGes? [] (see page 345) ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= the falling edge count in NR3 format :MEASure:NPULses [] (see page 346) :MEASure:NPULses? [] (see page 346) ::= {CHANnel | FUN
4 Commands Quick Reference Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:PERiod [] (see page 351) :MEASure:PERiod? [] (see page 351) ::= {CHANnel | FUNCtion | MATH | WMEMory} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format ::= wavef
Commands Quick Reference 4 Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:PWIDth [] (see page 355) :MEASure:PWIDth? [] (see page 355) ::= {CHANnel | FUNCtion | MATH | WMEMory} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format ::= width
4 Commands Quick Reference Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:SOURce [,] (see page 362) :MEASure:SOURce? (see page 362) ::= {CHANnel | FUNCtion | MATH | WMEMory | EXTernal} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory | EXTernal} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 fo
4 Commands Quick Reference Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns n/a :MEASure:TVALue? , [] [,] (see page 369) ::= voltage level that the waveform must cross. ::= direction of the waveform when is crossed. ::= transitions reported.
4 Commands Quick Reference Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:VMAX [] (see page 374) :MEASure:VMAX? [] (see page 374) ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= maximum voltage of the selected waveform in NR3 format :MEASure:VMIN [] (see page 375) :MEASure:VMIN? [] (see page 375) ::= {CHANnel<
4 Commands Quick Reference Table 16 :MEASure Commands Summary (continued) Command Query Options and Query Returns n/a :MEASure:VTIMe? [,] (see page 379) ::= displayed time from trigger in seconds in NR3 format ::= {CHANnel | FUNCtion | MATH | WMEMory} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in N
4 Commands Quick Reference Table 17 :MTESt Commands Summary Command Query Options and Query Returns :MTESt:ALL {{0 | OFF} | {1 | ON}} (see page 390) :MTESt:ALL? (see page 390) {0 | 1} :MTESt:AMASk:CREate (see page 391) n/a n/a :MTESt:AMASk:SOURce (see page 392) :MTESt:AMASk:SOURce? (see page 392) ::= CHANnel ::= {1 | 2 | 3 | 4} for 4ch models ::= {1 | 2} for 2ch models :MTESt:AMASk:UNITs (see page 393) :MTESt:AMASk:UNITs? (see page 393) ::= {CURRe
Commands Quick Reference 4 Table 17 :MTESt Commands Summary (continued) Command Query Options and Query Returns :MTESt:RMODe:FACTion: MEASure {{0 | OFF} | {1 | ON}} (see page 405) :MTESt:RMODe:FACTion: MEASure? (see page 405) {0 | 1} :MTESt:RMODe:FACTion: PRINt {{0 | OFF} | {1 | ON}} (see page 406) :MTESt:RMODe:FACTion: PRINt? (see page 406) {0 | 1} :MTESt:RMODe:FACTion: SAVE {{0 | OFF} | {1 | ON}} (see page 407) :MTESt:RMODe:FACTion: SAVE? (see page 407) {0 | 1} :MTESt:RMODe:FACTion: STOP {{0
4 Commands Quick Reference Table 17 :MTESt Commands Summary (continued) Command Query Options and Query Returns :MTESt:SOURce (see page 417) :MTESt:SOURce? (see page 417) ::= {CHANnel | NONE} ::= {1 | 2 | 3 | 4} for 4ch models ::= {1 | 2} for 2ch models n/a :MTESt:TITLe? (see page 418) ::= a string of up to 128 ASCII characters Table 18 :POD Commands Summary Command Query Options and Query Returns :POD:DISPlay {{0 | OFF} | {1 | ON}} (see page 421) :P
4 Commands Quick Reference Table 19 :RECall Commands Summary (continued) Command Query Options and Query Returns :RECall:SETup[:STARt] [] (see page 430) n/a ::= { | } ::= 0-9; an integer in NR1 format ::= quoted ASCII string :RECall:WMEMory[:S TARt] [] (see page 431) n/a ::= 1-2 in NR1 format ::= quoted ASCII string If extension included in file name, it must be ".h5".
4 Commands Quick Reference Table 20 :SAVE Commands Summary (continued) Command Query Options and Query Returns :SAVE:MASK[:STARt] [] (see page 443) n/a ::= { | } ::= 0-3; an integer in NR1 format ::= quoted ASCII string :SAVE:PWD (see page 444) :SAVE:PWD? (see page 444) ::= quoted ASCII string :SAVE:SETup[:STARt] [] (see page 445) n/a ::= { | }
Commands Quick Reference 4 Table 21 General :SBUS Commands Summary Command Query Options and Query Returns :SBUS:DISPlay {{0 | OFF} | {1 | ON}} (see page 456) :SBUS:DISPlay? (see page 456) {0 | 1} :SBUS:MODE (see page 457) :SBUS:MODE? (see page 457) ::= {CAN | I2S | IIC | LIN | SPI | UART} Table 22 :SBUS:CAN Commands Summary Command Query Options and Query Returns n/a :SBUS:CAN:COUNt:ER Ror? (see page 460) ::= integer in NR1 format n/a :SBUS
4 Commands Quick Reference Table 22 :SBUS:CAN Commands Summary (continued) Command Query Options and Query Returns :SBUS:CAN:TRIGger (see page 469) :SBUS:CAN:TRIGger? (see page 470) ::= {SOF | DATA | ERRor | IDData | IDEither | IDRemote | ALLerrors | OVERload | ACKerror} :SBUS:CAN:TRIGger: PATTern:DATA (see page 471) :SBUS:CAN:TRIGger: PATTern:DATA? (see page 471) ::= "nn...n" where n ::= {0 | 1 | X | $} PAGE 93Commands Quick Reference 4 Table 23 :SBUS:I2S Commands Summary (continued) Command Query Options and Query Returns :SBUS:I2S:SOURce:C LOCk (see page 481) :SBUS:I2S:SOURce:C LOCk? (see page 481) ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital } for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :SBUS:I2S:SOURce:D ATA (see page 482) :SBUS:I2S:SOURce:D ATA? (see pag
4 Commands Quick Reference Table 23 :SBUS:I2S Commands Summary (continued) Command Query Options and Query Returns :SBUS:I2S:TRIGger: RANGe , (see page 490) :SBUS:I2S:TRIGger: RANGe? (see page 490) ::= 32-bit integer in signed decimal, , or ::= 32-bit integer in signed decimal, , or ::= #Hnn...n where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...
Commands Quick Reference 4 Table 24 :SBUS:IIC Commands Summary (continued) Command Query Options and Query Returns :SBUS:IIC:TRIGger: PATTern:ADDRess (see page 498) :SBUS:IIC:TRIGger: PATTern:ADDRess? (see page 498) ::= integer or ::= "0xnn" n ::= {0,..,9 | A,..,F} :SBUS:IIC:TRIGger: PATTern:DATA (see page 499) :SBUS:IIC:TRIGger: PATTern:DATA? (see page 499) ::= integer or ::= "0xnn" n ::= {0,..,9 | A,..
4 Commands Quick Reference Table 25 :SBUS:LIN Commands Summary (continued) Command Query Options and Query Returns :SBUS:LIN:SYNCbrea k (see page 511) :SBUS:LIN:SYNCbrea k? (see page 511) ::= integer = {11 | 12 | 13} :SBUS:LIN:TRIGger (see page 512) :SBUS:LIN:TRIGger? (see page 512) ::= {SYNCbreak | ID | DATA} :SBUS:LIN:TRIGger: ID (see page 513) :SBUS:LIN:TRIGger: ID? (see page 513) ::= 7-bit integer in decimal,
Commands Quick Reference 4 Table 26 :SBUS:SPI Commands Summary (continued) Command Query Options and Query Returns :SBUS:SPI:CLOCk:TI Meout (see page 522) :SBUS:SPI:CLOCk:TI Meout? (see page 522) ::= time in seconds in NR3 format :SBUS:SPI:FRAMing (see page 523) :SBUS:SPI:FRAMing? (see page 523) ::= {CHIPselect | {NCHipselect | NOTC} | TIMeout} :SBUS:SPI:SOURce:C LOCk (see page 524) :SBUS:SPI:SOURce:C LOCk? (see page 524) <
4 Commands Quick Reference Table 26 :SBUS:SPI Commands Summary (continued) Command Query Options and Query Returns :SBUS:SPI:SOURce:M OSI (see page 528) :SBUS:SPI:SOURce:M OSI? (see page 528) ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :SBUS:SPI:TRIGger: PATTern:MISO:DATA (see page 529) :SBUS:SPI:TRIGg
4 Commands Quick Reference Table 27 :SBUS:UART Commands Summary (continued) Command Query Options and Query Returns :SBUS:UART:BITorde r (see page 540) :SBUS:UART:BITorde r? (see page 540) ::= {LSBFirst | MSBFirst} n/a :SBUS:UART:COUNt:E RRor? (see page 541) ::= integer in NR1 format :SBUS:UART:COUNt:R ESet (see page 542) n/a n/a n/a :SBUS:UART:COUNt:R XFRames? (see page 543) ::= integer in NR1 format n/a :SBUS:UART:COU
4 Commands Quick Reference Table 27 :SBUS:UART Commands Summary (continued) Command Query Options and Query Returns :SBUS:UART:SOURce: TX (see page 549) :SBUS:UART:SOURce: TX? (see page 549) ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :SBUS:UART:TRIGger :BASE (see page 550) :SBUS:UART:TRIGger :BASE? (see page
4 Commands Quick Reference Table 28 General :SEARch Commands Summary Command Query Options and Query Returns n/a :SEARch:COUNt? (see page 559) ::= an integer count value :SEARch:MODE (see page 560) :SEARch:MODE? (see page 560) ::= {EDGE | GLITch | RUNT | TRANsition | SERial{1 | 2}} :SEARch:STATe (see page 561) :SEARch:STATe? (see page 561) ::= {{0 | OFF} | {1 | ON}} Table 29 :SEARch:EDGE Commands Summary Command Query Options and Query Returns :SEARch
4 Commands Quick Reference Table 30 :SEARch:GLITch Commands Summary (continued) Command Query Options and Query Returns :SEARch:GLITch:RANGe [suff ix], [s uffix] (see page 570) :SEARch:GLITch:RANGe? (see page 570) ::= 15 ns to 10 seconds in NR3 format ::= 10 ns to 9.
4 Commands Quick Reference Table 32 :SEARch:TRANsition Commands Summary (continued) Command Query Options and Query Returns :SEARch:TRANsition:SO URce (see page 580) :SEARch:TRANsition:SO URce? (see page 580) ::= CHANnel ::= 1 to (# analog channels) in NR1 format :SEARch:TRANsition:TI ME
4 Commands Quick Reference Table 34 :SEARch:SERial:I2S Commands Summary (continued) Command Query Options and Query Returns :SEARch:SERial:I2S:PA TTern:DATA (see page 591) :SEARch:SERial:I2S:PA TTern:DATA? (see page 591) ::= "n" where n ::= 32-bit integer in signed decimal when = DECimal ::= "nn...n" where n ::= {0 | 1 | X} when = BINary ::= "0xnn...n" where n ::= {0,..,9 | A,..
4 Commands Quick Reference Table 35 :SEARch:SERial:IIC Commands Summary (continued) Command Query Options and Query Returns :SEARch:SERial:IIC:PA TTern:DATA2 (see page 599) :SEARch:SERial:IIC:PA TTern:DATA2? (see page 599) ::= integer or ::= "0xnn" n ::= {0,..,9 | A,..
4 Commands Quick Reference Table 37 :SEARch:SERial:SPI Commands Summary Command Query Options and Query Returns :SEARch:SERial:SPI:MO DE (see page 608) :SEARch:SERial:SPI:MO DE? (see page 608) ::= {MOSI | MISO} :SEARch:SERial:SPI:PA TTern:DATA (see page 609) :SEARch:SERial:SPI:PA TTern:DATA? (see page 609) ::= "0xnnnnnn" where n ::= {0,..,9 | A,..
4 Commands Quick Reference Table 39 :SYSTem Commands Summary Command Query Options and Query Returns :SYSTem:DATE (see page 617) :SYSTem:DATE? (see page 617) ::= ,, ::= 4-digit year in NR1 format ::= {1,..,12 | JANuary | FEBruary | MARch | APRil | MAY | JUNe | JULy | AUGust | SEPtember | OCTober | NOVember | DECember} ::= {1,..
4 Commands Quick Reference Table 40 :TIMebase Commands Summary (continued) Command Query Options and Query Returns :TIMebase:REFerence {LEFT | CENTer | RIGHt} (see page 634) :TIMebase:REFerence? (see page 634) ::= {LEFT | CENTer | RIGHt} :TIMebase:SCALe (see page 635) :TIMebase:SCALe? (see page 635) ::= scale value in seconds in NR3 format :TIMebase:VERNier {{0 | OFF} | {1 | ON}} (see page 636) :TIMebase:VERNier? (see page 636) {0 | 1} :TIMebase:WINDo
4 Commands Quick Reference Table 41 General :TRIGger Commands Summary (continued) Command Query Options and Query Returns :TRIGger:MODE (see page 648) :TRIGger:MODE? (see page 648) ::= {EDGE | GLITch | PATTern | TV | EBURst | RUNT | SHOLd | TRANsition | SBUS{1 | 2} | USB} ::= { | } ::= query returns "NONE" if the :TIMebase:MODE is ROLL or XY :TRIGger:NREJect {{0 | OFF} | {1 | ON}} (see page 649) :TRIGger:NREJect? (see page 649) {0 | 1} :TRIGger:SWEe
4 Commands Quick Reference Table 43 :TRIGger[:EDGE] Commands Summary Command Query Options and Query Returns :TRIGger[:EDGE]:COUPl ing {AC | DC | LFReject} (see page 657) :TRIGger[:EDGE]:COUPl ing? (see page 657) {AC | DC | LFReject} :TRIGger[:EDGE]:LEVel [,] (see page 658) :TRIGger[:EDGE]:LEVel ? [] (see page 658) For internal triggers, ::= .75 x full-scale voltage from center screen in NR3 format.
4 Commands Quick Reference Table 44 :TRIGger:GLITch Commands Summary Command Query Options and Query Returns :TRIGger:GLITch:GREat erthan [s uffix] (see page 664) :TRIGger:GLITch:GREat erthan? (see page 664) ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} :TRIGger:GLITch:LESSt han [suff ix] (see page 665) :TRIGger:GLITch:LESSt han? (see page 665) ::= floating-point number in NR3 format [suffix] ::=
4 Commands Quick Reference Table 44 :TRIGger:GLITch Commands Summary (continued) Command Query Options and Query Returns :TRIGger:GLITch:RANGe [suff ix], [s uffix] (see page 669) :TRIGger:GLITch:RANGe ? (see page 669) ::= 15 ns to 10 seconds in NR3 format ::= 10 ns to 9.
4 Commands Quick Reference Table 45 :TRIGger:PATTern Commands Summary (continued) Command Query Options and Query Returns :TRIGger:PATTern:QUAL ifier (see page 677) :TRIGger:PATTern:QUAL ifier? (see page 677) ::= {ENTered | GREaterthan | LESSthan | INRange | OUTRange | TIMeout} :TRIGger:PATTern:RANG e [suff ix], [s uffix] (see page 679) :TRIGger:PATTern:RANG e? (see page 679) ::= 15 ns to 10 seconds in NR3 format
4 Commands Quick Reference Table 47 :TRIGger:SHOLd Commands Summary (continued) Command Query Options and Query Returns :TRIGger:SHOLd:SOURce :DATA (see page 688) :TRIGger:SHOLd:SOURce :DATA? (see page 688) ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :TRIGger:SHOLd:TIME:H OLD [suffix] (see page 689) :TRIGger:SHOLd:TIME:H OLD?
4 Commands Quick Reference Table 49 :TRIGger:TV Commands Summary Command Query Options and Query Returns :TRIGger:TV:LINE (see page 697) :TRIGger:TV:LINE? (see page 697) ::= integer in NR1 format :TRIGger:TV:MODE (see page 698) :TRIGger:TV:MODE? (see page 698) ::= {FIEld1 | FIEld2 | AFIelds | ALINes | LFIeld1 | LFIeld2 | LALTernate} :TRIGger:TV:POLarity (see page 699) :TRIGger:TV:POLarity? (see page 699) ::= {POSitive | NEGat
4 Commands Quick Reference Table 51 :WAVeform Commands Summary Command Query Options and Query Returns :WAVeform:BYTeorder (see page 715) :WAVeform:BYTeorder? (see page 715) ::= {LSBFirst | MSBFirst} n/a :WAVeform:COUNt? (see page 716) ::= an integer from 1 to 65536 in NR1 format n/a :WAVeform:DATA? (see page 717) , For example, to transmit 1000 bytes of data, the syntax would be: #800001000<1000 bytes of data> 8 is the number
4 Commands Quick Reference Table 51 :WAVeform Commands Summary (continued) Command Query Options and Query Returns n/a :WAVeform:PREamble? (see page 724) ::= , ,,, , , ,, , ::= an integer in NR1 format: • 0 for BYTE format • 1 for WORD format • 2 for ASCii format ::= an integer in NR1 format: • • • • 0 1 3 4 for for for for NORMal
4 Commands Quick Reference Table 51 :WAVeform Commands Summary (continued) Command Query Options and Query Returns n/a :WAVeform:XINCrement? (see page 737) ::= x-increment in the current preamble in NR3 format n/a :WAVeform:XORigin? (see page 738) ::= x-origin value in the current preamble in NR3 format n/a :WAVeform:XREFerence? (see page 739) ::= 0 (x-reference value in the current preamble in NR1 format) n/a :WAVeform:YINCrement? (see page 740)
4 Commands Quick Reference Table 52 :WGEN Commands Summary (continued) Command Query Options and Query Returns :WGEN:OUTPut:LOAD (see page 752) :WGEN:OUTPut:LOAD? (see page 752) ::= {ONEMeg | FIFTy} :WGEN:PERiod (see page 753) :WGEN:PERiod? (see page 753) ::= period in seconds in NR3 format :WGEN:RST (see page 754) n/a n/a :WGEN:VOLTage (see page 755) :WGEN:VOLTage? (see page 755) ::= amplitude in volts in NR3 format :WGEN:VO
4 Commands Quick Reference Table 53 :WMEMory Commands Summary (continued) Command Query Options and Query Returns :WMEMory:SKEW (see page 765) :WMEMory:SKEW? (see page 765) ::= 1-2 in NR1 format ::= time in seconds in NR3 format :WMEMory:YOFFset [suffix] (see page 766) :WMEMory:YOFFset? (see page 766) ::= 1-2 in NR1 format ::= vertical offset value in NR3 format [suffix] ::= {V | mV} :WMEMory:YRANge [suffix] (see page 767) :WMEMory<
Commands Quick Reference 4 Syntax Elements • "Number Format" on page 121 • " (Line Terminator)" on page 121 • "[ ] (Optional Syntax Terms)" on page 121 • "{ } (Braces)" on page 121 • "::= (Defined As)" on page 121 • "< > (Angle Brackets)" on page 122 • "... (Ellipsis)" on page 122 • "n,..,p (Value Ranges)" on page 122 • "d (Digits)" on page 122 • "Quoted ASCII String" on page 122 • "Definite- Length Block Response Data" on page 122 Number Format NR1 specifies integer data.
4 Commands Quick Reference For example, ::= indicates that can be replaced by in any statement containing . < > (Angle Brackets) < > Angle brackets enclose words or characters that symbolize a program code parameter or an interface command. ... (Ellipsis) ... An ellipsis (trailing dots) indicates that the preceding element may be repeated one or more times. n,..,p (Value Ranges) n,..,p ::= all integers between n and p inclusive.
Commands Quick Reference 4 #800001000<1000 bytes of data> 8 is the number of digits that follow 00001000 is the number of bytes to be transmitted <1000 bytes of data> is the actual data Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 123
4 124 Commands Quick Reference Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 5 Common (*) Commands Commands defined by IEEE 488.2 standard that are common to all instruments. See "Introduction to Common (*) Commands" on page 127.
5 Common (*) Commands Table 54 Common (*) Commands Summary (continued) Command Query Options and Query Returns n/a *OPT? (see page 137) ::= 0,0, ::= , , , , , , , , , , , , , , , , , , , , ,
5 Common (*) Commands Table 54 Common (*) Commands Summary (continued) Command Query Options and Query Returns *SRE (see page 144) *SRE? (see page 145) ::= sum of all bits that are set, 0 to 255; an integer in NR1 format. ::= following values: Bit Weight Name Enables --- ------ ---- ---------7 128 OPER Operation Status Reg 6 64 ---- (Not used.) 5 32 ESB Event Status Bit 4 16 MAV Message Available 3 8 ---- (Not used.
5 Common (*) Commands selected and a common command is received by the instrument, the instrument remains in the selected subsystem. For example, if the program message ":ACQuire:TYPE AVERage; *CLS; COUNt 256" is received by the instrument, the instrument sets the acquire type, then clears the status information and sets the average count. In contrast, if a root level command or some other subsystem command is within the program message, you must re- enter the original subsystem after the command.
Common (*) Commands 5 *CLS (Clear Status) (see page 860) Command Syntax *CLS The *CLS common command clears the status data structures, the device- defined error queue, and the Request- for- OPC flag. NOTE See Also If the *CLS command immediately follows a program message terminator, the output queue and the MAV (message available) bit are cleared.
5 Common (*) Commands *ESE (Standard Event Status Enable) (see page 860) Command Syntax *ESE ::= integer from 0 to 255 The *ESE common command sets the bits in the Standard Event Status Enable Register. The Standard Event Status Enable Register contains a mask value for the bits to be enabled in the Standard Event Status Register. A "1" in the Standard Event Status Enable Register enables the corresponding bit in the Standard Event Status Register.
Common (*) Commands 5 The *ESE? query returns the current contents of the Standard Event Status Enable Register. Return Format ::= 0,..,255; an integer in NR1 format.
5 Common (*) Commands *ESR (Standard Event Status Register) (see page 860) Query Syntax *ESR? The *ESR? query returns the contents of the Standard Event Status Register. When you read the Event Status Register, the value returned is the total bit weights of all of the bits that are high at the time you read the byte. Reading the register clears the Event Status Register. The following table shows bit weight, name, and condition for each bit.
Common (*) Commands NOTE See Also 5 Reading the Standard Event Status Register clears it. High or 1 indicates the bit is true.
5 Common (*) Commands *IDN (Identification Number) (see page 860) Query Syntax *IDN? The *IDN? query identifies the instrument type and software version. Return Format AGILENT TECHNOLOGIES,,,X.XX.XX ::= the model number of the instrument ::= the serial number of the instrument X.XX.
5 Common (*) Commands *LRN (Learn Device Setup) (see page 860) Query Syntax *LRN? The *LRN? query result contains the current state of the instrument. This query is similar to the :SYSTem:SETup? (see page 625) query, except that it contains ":SYST:SET " before the binary block data. The query result is a valid command that can be used to restore instrument settings at a later time. Return Format ::= :SYST:SET ::= binary block data in IEEE 488.
5 Common (*) Commands *OPC (Operation Complete) (see page 860) Command Syntax *OPC The *OPC command sets the operation complete bit in the Standard Event Status Register when all pending device operations have finished. Query Syntax *OPC? The *OPC? query places an ASCII "1" in the output queue when all pending device operations have completed. The interface hangs until this query returns.
5 Common (*) Commands *OPT (Option Identification) (see page 860) Query Syntax *OPT? The *OPT? query reports the options installed in the instrument. This query returns a string that identifies the module and its software revision level.
5 Common (*) Commands • "*IDN (Identification Number)" on page 134 138 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Common (*) Commands 5 *RCL (Recall) (see page 860) Command Syntax *RCL ::= {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9} The *RCL command restores the state of the instrument from the specified save/recall register.
5 Common (*) Commands *RST (Reset) (see page 860) Command Syntax *RST The *RST command places the instrument in a known state. This is the same as pressing [Save/Recall] > Default/Erase > Factory Default on the front panel. When you perform a factory default setup, there are no user settings that remain unchanged. To perform the equivalent of the front panel's [Default Setup] key, where some user settings (like preferences) remain unchanged, use the :SYSTem:PRESet command.
Common (*) Commands 5 Digital Channel Menu (MSO models only) Channel 0 - 15 Off Labels Off Threshold TTL (1.4V) Display Menu Persistence Off Grid 33% Quick Meas Menu Source Channel 1 Run Control Scope is running Time Base Menu Main time/division 100 us Main time base delay 0.00 s Delay time/division 500 ns Delay time base delay 0.00 s Reference center Mode main Vernier Off Trigger Menu Type Edge Mode Auto Coupling dc Source Channel 1 Level 0.
5 Common (*) Commands Trigger Menu See Also HF Reject and noise reject Off Holdoff 60 ns External probe attenuation 10:1 External Units Volts External Impedance 1 M Ohm (cannot be changed) • "Introduction to Common (*) Commands" on page 127 • ":SYSTem:PRESet" on page 621 Example Code ' RESET - This command puts the oscilloscope into a known state. ' This statement is very important for programs to work as expected. ' Most of the following initialization commands are initialized by ' *RST.
5 Common (*) Commands *SAV (Save) (see page 860) Command Syntax *SAV ::= {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9} The *SAV command stores the current state of the instrument in a save register. The data parameter specifies the register where the data will be saved.
5 Common (*) Commands *SRE (Service Request Enable) (see page 860) Command Syntax *SRE ::= integer with values defined in the following table. The *SRE command sets the bits in the Service Request Enable Register. The Service Request Enable Register contains a mask value for the bits to be enabled in the Status Byte Register. A one in the Service Request Enable Register enables the corresponding bit in the Status Byte Register. A zero disables the bit.
Common (*) Commands 5 Table 57 Service Request Enable Register (SRE) Query Syntax Bit Name Description When Set (1 = High = True), Enables: 7 OPER Operation Status Register Interrupts when enabled conditions in the Operation Status Register (OPER) occur. 6 --- --- (Not used.) 5 ESB Event Status Bit Interrupts when enabled conditions in the Standard Event Status Register (ESR) occur. 4 MAV Message Available Interrupts when messages are in the Output Queue. 3 --- --- (Not used.
5 Common (*) Commands *STB (Read Status Byte) (see page 860) Query Syntax *STB? The *STB? query returns the current value of the instrument's status byte. The MSS (Master Summary Status) bit is reported on bit 6 instead of the RQS (request service) bit. The MSS indicates whether or not the device has at least one reason for requesting service. Return Format ::= 0,..
5 Common (*) Commands Table 58 Status Byte Register (STB) NOTE See Also Bit Name Description When Set (1 = High = True), Indicates: 7 OPER Operation Status Register An enabled condition in the Operation Status Register (OPER) has occurred. 6 RQS Request Service When polled, that the device is requesting service. MSS Master Summary Status When read (by *STB?), whether the device has a reason for requesting service.
5 Common (*) Commands *TRG (Trigger) (see page 860) Command Syntax *TRG The *TRG command has the same effect as the :DIGitize command with no parameters.
Common (*) Commands 5 *TST (Self Test) (see page 860) Query Syntax *TST? The *TST? query performs a self- test on the instrument. The result of the test is placed in the output queue. A zero indicates the test passed and a non- zero indicates the test failed. If the test fails, refer to the troubleshooting section of the Service Guide.
5 Common (*) Commands *WAI (Wait To Continue) (see page 860) Command Syntax *WAI The *WAI command has no function in the oscilloscope, but is parsed for compatibility with other instruments.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 6 Root (:) Commands Control many of the basic functions of the oscilloscope and reside at the root level of the command tree. See "Introduction to Root (:) Commands" on page 154.
6 Root (:) Commands Table 59 Root (:) Commands Summary (continued) Command Query Options and Query Returns :BLANk [] (see page 162) n/a ::= {CHANnel} | FUNCtion | MATH | SBUS{1 | 2}} for DSO models ::= {CHANnel | DIGital | POD{1 | 2} | BUS{1 | 2} | FUNCtion | MATH | SBUS{1 | 2}} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :DIGitize [[,..
6 Root (:) Commands Table 59 Root (:) Commands Summary (continued) Command Query Options and Query Returns :OVLenable (see page 175) :OVLenable? (see page 176) ::= 16-bit integer in NR1 format as shown: Bit Weight Input --- ------ ---------10 1024 Ext Trigger Fault 9 512 Channel 4 Fault 8 256 Channel 3 Fault 7 128 Channel 2 Fault 6 64 Channel 1 Fault 4 16 Ext Trigger OVL 3 8 Channel 4 OVL 2 4 Channel 3 OVL 1 2 Channel 2 OVL 0 1 Channel 1 OVL n/a :OVLRegister? (see page 177) :
6 Root (:) Commands Table 59 Root (:) Commands Summary (continued) Command Query Options and Query Returns n/a :TER? (see page 185) {0 | 1} :VIEW (see page 186) n/a ::= {CHANnel | FUNCtion | MATH | SBUS{1 | 2}} for DSO models ::= {CHANnel | DIGital | POD{1 | 2} | BUS{1 | 2} | FUNCtion | MATH | SBUS{1 | 2}} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format Introduction to Root (:) Commands 154 Roo
6 Root (:) Commands :ACTivity (see page 860) Command Syntax :ACTivity The :ACTivity command clears the cumulative edge variables for the next activity query. Query Syntax :ACTivity? The :ACTivity? query returns whether there has been activity (edges) on the digital channels since the last query, and returns the current logic levels.
6 Root (:) Commands :AER (Arm Event Register) (see page 860) Query Syntax :AER? The AER query reads the Arm Event Register. After the Arm Event Register is read, it is cleared. A "1" indicates the trigger system is in the armed state, ready to accept a trigger. The Armed Event Register is summarized in the Wait Trig bit of the Operation Status Event Register.
6 Root (:) Commands :AUToscale (see page 860) Command Syntax :AUToscale :AUToscale [[,..,]] ::= CHANnel for the DSO models ::= {DIGital | POD1 | POD2 | CHANnel} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The parameter may be repeated up to 5 times. The :AUToscale command evaluates all input signals and sets the correct conditions to display the signals.
6 Root (:) Commands For further information on :AUToscale, see the User's Guide. See Also • "Introduction to Root (:) Commands" on page 154 • ":AUToscale:CHANnels" on page 160 • ":AUToscale:AMODE" on page 159 Example Code ' AUTOSCALE - This command evaluates all the input signals and sets ' the correct conditions to display all of the active signals. myScope.WriteString ":AUToscale" ' Same as pressing Auto Scale key.
6 Root (:) Commands :AUToscale:AMODE (see page 860) Command Syntax :AUToscale:AMODE ::= {NORMal | CURRent} The :AUTOscale:AMODE command specifies the acquisition mode that is set by subsequent :AUToscales. • When NORMal is selected, an :AUToscale command sets the NORMal acquisition type and the RTIMe (real- time) acquisition mode. • When CURRent is selected, the current acquisition type and mode are kept on subsequent :AUToscales.
6 Root (:) Commands :AUToscale:CHANnels (see page 860) Command Syntax :AUToscale:CHANnels ::= {ALL | DISPlayed} The :AUTOscale:CHANnels command specifies which channels will be displayed on subsequent :AUToscales. • When ALL is selected, all channels that meet the requirements of :AUToscale will be displayed. • When DISPlayed is selected, only the channels that are turned on are autoscaled. Use the :VIEW or :BLANk root commands to turn channels on or off.
6 Root (:) Commands :AUToscale:FDEBug (see page 860) Command Syntax :AUToscale:FDEBug ::= {{1 | ON} | {0 | OFF}} The :AUToscale:FDEBug command turns fast debug auto scaling on or off. The Fast Debug option changes the behavior of :AUToscale to let you make quick visual comparisons to determine whether the signal being probed is a DC voltage, ground, or an active AC signal. Channel coupling is maintained for easy viewing of oscillating signals.
6 Root (:) Commands :BLANk (see page 860) Command Syntax :BLANk [] ::= {CHANnel | FUNCtion | MATH | SBUS{1 | 2}} for the DSO models ::= {CHANnel | DIGital | POD{1 | 2} | BUS{1 | 2} | FUNCtion | MATH | SBUS{1 | 2}} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :BLANk command turns off (stops displaying) the specified channel, digital pod, math function, or serial decode bus.
Root (:) Commands 6 :DIGitize (see page 860) Command Syntax :DIGitize [[,..,]] ::= {CHANnel | FUNCtion | MATH | SBUS{1 | 2}} for the DSO models ::= {CHANnel | DIGital | POD{1 | 2} | BUS{1 | 2} | FUNCtion | MATH | SBUS{1 | 2}} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The parameter may be repeated up to 5 times. The :DIGitize command is a specialized RUN command.
6 Root (:) Commands Example Code ' Capture an acquisition using :DIGitize. ' ----------------------------------------------------------------myScope.
6 Root (:) Commands :MTEenable (Mask Test Event Enable Register) (see page 860) Command Syntax :MTEenable ::= 16-bit integer The :MTEenable command sets a mask in the Mask Test Event Enable register. Set any of the following bits to "1" to enable bit 9 in the Operation Status Condition Register and potentially cause an SRQ (Service Request interrupt to be generated.
6 Root (:) Commands • ":CHANnel:PROTection" on page 236 • ":OPERegister[:EVENt] (Operation Status Event Register)" on page 173 • ":OVLenable (Overload Event Enable Register)" on page 175 • ":OVLRegister (Overload Event Register)" on page 177 • "*STB (Read Status Byte)" on page 146 • "*SRE (Service Request Enable)" on page 144 166 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
6 Root (:) Commands :MTERegister[:EVENt] (Mask Test Event Event Register) (see page 860) Query Syntax :MTERegister[:EVENt]? The :MTERegister[:EVENt]? query returns the integer value contained in the Mask Test Event Event Register and clears the register.
6 Root (:) Commands • "*STB (Read Status Byte)" on page 146 • "*SRE (Service Request Enable)" on page 144 168 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Root (:) Commands 6 :OPEE (Operation Status Enable Register) (see page 860) Command Syntax :OPEE ::= 15-bit integer The :OPEE command sets a mask in the Operation Status Enable register. Set any of the following bits to "1" to enable bit 7 in the Status Byte Register and potentially cause an SRQ (Service Request interrupt to be generated.
6 Root (:) Commands The :OPEE? query returns the current value contained in the Operation Status Enable register as an integer number. Return Format ::= integer in NR1 format.
6 Root (:) Commands :OPERegister:CONDition (Operation Status Condition Register) (see page 860) Query Syntax :OPERegister:CONDition? The :OPERegister:CONDition? query returns the integer value contained in the Operation Status Condition Register.
6 Root (:) Commands • ":OPERegister[:EVENt] (Operation Status Event Register)" on page 173 • ":OVLenable (Overload Event Enable Register)" on page 175 • ":OVLRegister (Overload Event Register)" on page 177 • "*STB (Read Status Byte)" on page 146 • "*SRE (Service Request Enable)" on page 144 • ":MTERegister[:EVENt] (Mask Test Event Event Register)" on page 167 • ":MTEenable (Mask Test Event Enable Register)" on page 165 172 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
6 Root (:) Commands :OPERegister[:EVENt] (Operation Status Event Register) (see page 860) Query Syntax :OPERegister[:EVENt]? The :OPERegister[:EVENt]? query returns the integer value contained in the Operation Status Event Register.
6 Root (:) Commands • ":OPEE (Operation Status Enable Register)" on page 169 • ":OPERegister:CONDition (Operation Status Condition Register)" on page 171 • ":OVLenable (Overload Event Enable Register)" on page 175 • ":OVLRegister (Overload Event Register)" on page 177 • "*STB (Read Status Byte)" on page 146 • "*SRE (Service Request Enable)" on page 144 • ":MTERegister[:EVENt] (Mask Test Event Event Register)" on page 167 • ":MTEenable (Mask Test Event Enable Register)" on page 165 174 Agilent InfiniiVis
6 Root (:) Commands :OVLenable (Overload Event Enable Register) (see page 860) Command Syntax :OVLenable ::= 16-bit integer The overload enable mask is an integer representing an input as described in the following table. The :OVLenable command sets the mask in the Overload Event Enable Register and enables the reporting of the Overload Event Register. If an overvoltage is sensed on a 50 input, the input will automatically switch to 1 M input impedance.
6 Root (:) Commands Table 65 Overload Event Enable Register (OVL) (continued) Query Syntax Bit Description When Set (1 = High = True), Enables: 1 Channel 2 OVL Event when overload occurs on Channel 2 input. 0 Channel 1 OVL Event when overload occurs on Channel 1 input. :OVLenable? The :OVLenable query returns the current enable mask value contained in the Overload Event Enable Register. Return Format ::= integer in NR1 format.
6 Root (:) Commands :OVLRegister (Overload Event Register) (see page 860) Query Syntax :OVLRegister? The :OVLRegister query returns the overload protection value stored in the Overload Event Register (OVLR). If an overvoltage is sensed on a 50 input, the input will automatically switch to 1 M input impedance. A "1" indicates an overload has occurred. NOTE You can set analog channel input impedance to 50 on the 300 MHz, 500 MHz, and 1 GHz bandwidth oscilloscope models.
6 Root (:) Commands ::= integer in NR1 format.
6 Root (:) Commands :PRINt (see page 860) Command Syntax :PRINt [] ::= [][,..,] ::= {COLor | GRAYscale | PRINter0 | BMP8bit | BMP | PNG | NOFactors | FACTors} The parameter may be repeated up to 5 times. The PRINt command formats the output according to the currently selected format (device). If an option is not specified, the value selected in the Print Config menu is used.
6 Root (:) Commands :RUN (see page 860) Command Syntax :RUN The :RUN command starts repetitive acquisitions. This is the same as pressing the Run key on the front panel. See Also • "Introduction to Root (:) Commands" on page 154 • ":SINGle" on page 182 • ":STOP" on page 184 Example Code ' RUN_STOP - (not executed in this example) ' - RUN starts the data acquisition for the active waveform display. ' - STOP stops the data acquisition and turns off AUTOSTORE. ' myScope.
Root (:) Commands 6 :SERial (see page 860) Query Syntax :SERial? The :SERial? query returns the serial number of the instrument.
6 Root (:) Commands :SINGle (see page 860) Command Syntax :SINGle The :SINGle command causes the instrument to acquire a single trigger of data. This is the same as pressing the Single key on the front panel.
Root (:) Commands 6 :STATus (see page 860) Query Syntax :STATus? ::= {CHANnel | FUNCtion | MATH | SBUS{1 | 2}} for the DSO models ::= {CHANnel | DIGital | POD{1 | 2} | BUS{1 | 2} | FUNCtion | MATH | SBUS{1 | 2}} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :STATus? query reports whether the channel, function, or serial decode bus specified by is displayed.
6 Root (:) Commands :STOP (see page 860) Command Syntax :STOP The :STOP command stops the acquisition. This is the same as pressing the Stop key on the front panel.
Root (:) Commands 6 :TER (Trigger Event Register) (see page 860) Query Syntax :TER? The :TER? query reads the Trigger Event Register. After the Trigger Event Register is read, it is cleared. A one indicates a trigger has occurred. A zero indicates a trigger has not occurred. The Trigger Event Register is summarized in the TRG bit of the Status Byte Register (STB).
6 Root (:) Commands :VIEW (see page 860) Command Syntax :VIEW ::= {CHANnel | FUNCtion | MATH | SBUS{1 | 2}} for DSO models ::= {CHANnel | DIGital | POD{1 | 2} | BUS{1 | 2} | FUNCtion | MATH | SBUS{1 | 2}} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :VIEW command turns on the specified channel, function, or serial decode bus. NOTE See Also MATH is an alias for FUNCtion.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 7 :ACQuire Commands Set the parameters for acquiring and storing data. See "Introduction to :ACQuire Commands" on page 187.
7 :ACQuire Commands The :ACQuire:TYPE NORMal command sets the oscilloscope in the normal acquisition mode. For the majority of user models and signals, NORMal mode yields the best oscilloscope picture of the waveform. Averaging The :ACQuire:TYPE AVERage command sets the oscilloscope in the averaging mode. You can set the count by sending the :ACQuire:COUNt command followed by the number of averages. In this mode, the value for averages is an integer from 2 to 65536.
7 :ACQuire Commands :ACQuire:COMPlete (see page 860) Command Syntax :ACQuire:COMPlete ::= 100; an integer in NR1 format The :ACQuire:COMPlete command affects the operation of the :DIGitize command. It specifies the minimum completion criteria for an acquisition. The parameter determines the percentage of the time buckets that must be "full" before an acquisition is considered complete.
7 :ACQuire Commands :ACQuire:COUNt (see page 860) Command Syntax :ACQuire:COUNt ::= integer in NR1 format In averaging mode, the :ACQuire:COUNt command specifies the number of values to be averaged for each time bucket before the acquisition is considered to be complete for that time bucket. When :ACQuire:TYPE is set to AVERage, the count can be set to any value from 2 to 65536. NOTE Query Syntax The :ACQuire:COUNt 1 command has been deprecated.
:ACQuire Commands 7 :ACQuire:MODE (see page 860) Command Syntax :ACQuire:MODE ::= {RTIMe | SEGMented} The :ACQuire:MODE command sets the acquisition mode of the oscilloscope. • The :ACQuire:MODE RTIMe command sets the oscilloscope in real time mode. NOTE The obsolete command ACQuire:TYPE:REALtime is functionally equivalent to sending ACQuire:MODE RTIMe; TYPE NORMal. • The :ACQuire:MODE SEGMented command sets the oscilloscope in segmented memory mode.
7 :ACQuire Commands :ACQuire:POINts (see page 860) Query Syntax :ACQuire:POINts? The :ACQuire:POINts? query returns the number of data points that the hardware will acquire from the input signal. The number of points acquired is not directly controllable. To set the number of points to be transferred from the oscilloscope, use the command :WAVeform:POINts. The :WAVeform:POINts? query will return the number of points available to be transferred from the oscilloscope.
7 :ACQuire Commands :ACQuire:SEGMented:ANALyze (see page 860) Command Syntax NOTE :ACQuire:SEGMented:ANALyze This command is available when the segmented memory option (Option SGM) is enabled. This command calculates measurement statistics and/or infinite persistence over all segments that have been acquired. It corresponds to the front panel Analyze Segments softkey which appears in both the Measurement Statistics and Segmented Memory Menus.
7 :ACQuire Commands :ACQuire:SEGMented:COUNt (see page 860) Command Syntax :ACQuire:SEGMented:COUNt ::= an integer from 2 to 1000 (w/4M memory) in NR1 format NOTE This command is available when the segmented memory option (Option SGM) is enabled. The :ACQuire:SEGMented:COUNt command sets the number of memory segments to acquire. The segmented memory acquisition mode is enabled with the :ACQuire:MODE command, and data is acquired using the :DIGitize, :SINGle, or :RUN commands.
7 :ACQuire Commands :ACQuire:SEGMented:INDex (see page 860) Command Syntax :ACQuire:SEGMented:INDex ::= an integer from 1 to 1000 (w/4M memory) in NR1 format NOTE This command is available when the segmented memory option (Option SGM) is enabled. The :ACQuire:SEGMented:INDex command sets the index into the memory segments that have been acquired. The segmented memory acquisition mode is enabled with the :ACQuire:MODE command.
7 :ACQuire Commands Option Explicit Public Public Public Public myMgr As VisaComLib.ResourceManager myScope As VisaComLib.FormattedIO488 varQueryResult As Variant strQueryResult As String Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub Main() On Error GoTo VisaComError ' Create the VISA COM I/O resource. Set myMgr = New VisaComLib.ResourceManager Set myScope = New VisaComLib.FormattedIO488 Set myScope.IO = _ myMgr.Open("USB0::0x0957::0x17A6::US50210029::0::INSTR") myScope.IO.
:ACQuire Commands 7 For lngI = lngSegments To 1 Step -1 ' Set the segmented memory index. myScope.WriteString ":ACQuire:SEGMented:INDex " + CStr(lngI) myScope.WriteString ":ACQuire:SEGMented:INDex?" strQueryResult = myScope.ReadString Debug.Print "Acquisition memory segment index: " + strQueryResult ' Display the segment time tag. myScope.WriteString ":WAVeform:SEGMented:TTAG?" dblTimeTag = myScope.ReadNumber Debug.
7 :ACQuire Commands :ACQuire:SRATe (see page 860) Query Syntax :ACQuire:SRATe? The :ACQuire:SRATe? query returns the current oscilloscope acquisition sample rate. The sample rate is not directly controllable.
7 :ACQuire Commands :ACQuire:TYPE (see page 860) Command Syntax :ACQuire:TYPE ::= {NORMal | AVERage | HRESolution | PEAK} The :ACQuire:TYPE command selects the type of data acquisition that is to take place. The acquisition types are: • NORMal — sets the oscilloscope in the normal mode. • AVERage — sets the oscilloscope in the averaging mode. You can set the count by sending the :ACQuire:COUNt command followed by the number of averages.
7 :ACQuire Commands ::= {NORM | AVER | HRES | PEAK} See Also • "Introduction to :ACQuire Commands" on page 187 • ":ACQuire:COUNt" on page 190 • ":ACQuire:MODE" on page 191 • ":DIGitize" on page 163 • ":WAVeform:FORMat" on page 719 • ":WAVeform:TYPE" on page 734 • ":WAVeform:PREamble" on page 724 Example Code ' AQUIRE_TYPE - Sets the acquisition mode, which can be NORMAL, ' PEAK, or AVERAGE. myScope.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 8 :BUS Commands Control all oscilloscope functions associated with buses made up of digital channels. See "Introduction to :BUS Commands" on page 202.
8 :BUS Commands Table 68 :BUS Commands Summary (continued) Command Query Options and Query Returns :BUS:LABel (see page 208) :BUS:LABel? (see page 208) ::= quoted ASCII string up to 10 characters ::= 1 or 2; an integer in NR1 format :BUS:MASK (see page 209) :BUS:MASK? (see page 209) ::= 32-bit integer in decimal, , or ::= #Hnn...n where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...
:BUS Commands 8 :BUS:BIT (see page 860) Command Syntax :BUS:BIT ::= {{1 | ON} | {0 | OFF}} ::= An integer, 1 or 2, is attached as a suffix to BUS and defines the bus that is affected by the command. ::= An integer, 0,..,15, is attached as a suffix to BIT and defines the digital channel that is affected by the command. The :BUS:BIT command includes or excludes the selected bit as part of the definition for the selected bus.
8 :BUS Commands :BUS:BITS (see page 860) Command Syntax :BUS:BITS , ::= (@,:, ...) where commas separate bits and colons define bit ranges. ::= An integer, 0,..,15, defines a digital channel affected by the command. ::= {{1 | ON} | {0 | OFF}} ::= An integer, 1 or 2, is attached as a suffix to BUS and defines the bus that is affected by the command.
:BUS Commands 8 ' Include digital channels 1 through 5, 8, and 14 in bus 1: myScope.
8 :BUS Commands :BUS:CLEar (see page 860) Command Syntax :BUS:CLEar ::= An integer, 1 or 2, is attached as a suffix to BUS and defines the bus that is affected by the command. The :BUS:CLEar command excludes all of the digital channels from the selected bus definition. NOTE See Also This command is only valid for the MSO models.
:BUS Commands 8 :BUS:DISPlay (see page 860) Command Syntax :BUS:DISplay ::= {{1 | ON} | {0 | OFF}} ::= An integer, 1 or 2, is attached as a suffix to BUS and defines the bus that is affected by the command. The :BUS:DISPlay command enables or disables the view of the selected bus. NOTE Query Syntax This command is only valid for the MSO models. :BUS:DISPlay? The :BUS:DISPlay? query returns the display value of the selected bus.
8 :BUS Commands :BUS:LABel (see page 860) Command Syntax :BUS:LABel ::= any series of 10 or less characters as a quoted ASCII string. ::= An integer, 1 or 2, is attached as a suffix to BUS and defines the bus that is affected by the command. The :BUS:LABel command sets the bus label to the quoted string. Setting a label for a bus will also result in the name being added to the label list. NOTE This command is only valid for the MSO models.
8 :BUS Commands :BUS:MASK (see page 860) Command Syntax :BUS:MASK ::= 32-bit integer in decimal, , or ::= #Hnn...n where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...n where n ::= {0 | 1} for binary ::= "0xnn...n" where n ::= {0,..,9 | A,..,F} for hexadecimal ::= An integer, 1 or 2, is attached as a suffix to BUS and defines the bus that is affected by the command.
8 210 :BUS Commands Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 9 :CALibrate Commands Utility commands for viewing calibration status and for starting the user calibration procedure. See "Introduction to :CALibrate Commands" on page 211.
9 :CALibrate Commands • Determining the state of the calibration factor protection switch (CAL PROTECT). • Saving and querying the calibration label string. • Reporting the calibration time and date. • Reporting changes in the temperature since the last calibration. • Starting the user calibration procedure.
:CALibrate Commands 9 :CALibrate:DATE (see page 860) Query Syntax :CALibrate:DATE? The :CALibrate:DATE? query returns the date of the last calibration.
9 :CALibrate Commands :CALibrate:LABel (see page 860) Command Syntax :CALibrate:LABel ::= quoted ASCII string of up to 32 characters in length, not including the quotes The CALibrate:LABel command saves a string that is up to 32 characters in length into the instrument's non- volatile memory. The string may be used to record calibration dates or other information as needed.
9 :CALibrate Commands :CALibrate:OUTPut (see page 860) Command Syntax :CALibrate:OUTPut ::= {TRIGgers | MASK | WAVEgen} The CALibrate:OUTPut command sets the signal that is available on the rear panel TRIG OUT BNC: • TRIGgers — pulse when a trigger event occurs. • MASK — signal from mask test indicating a failure. • WAVEgen — waveform generator sync output signal.
9 :CALibrate Commands :CALibrate:PROTected (see page 860) Query Syntax :CALibrate:PROTected? The :CALibrate:PROTected? query returns the rear- panel calibration protect (CAL PROTECT) button state. The value PROTected indicates calibration is disabled, and UNPRotected indicates calibration is enabled.
:CALibrate Commands 9 :CALibrate:STARt (see page 860) Command Syntax :CALibrate:STARt The CALibrate:STARt command starts the user calibration procedure. NOTE See Also Before starting the user calibration procedure, you must set the rear panel CALIBRATION switch to UNPROTECTED, and you must connect BNC cables from the TRIG OUT connector to the analog channel inputs. See the User's Guide for details.
9 :CALibrate Commands :CALibrate:STATus (see page 860) Query Syntax :CALibrate:STATus? The :CALibrate:STATus? query returns the summary results of the last user calibration procedure.
:CALibrate Commands 9 :CALibrate:TEMPerature (see page 860) Query Syntax :CALibrate:TEMPerature? The :CALibrate:TEMPerature? query returns the change in temperature since the last user calibration procedure.
9 :CALibrate Commands :CALibrate:TIME (see page 860) Query Syntax :CALibrate:TIME? The :CALibrate:TIME? query returns the time of the last calibration.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 10 :CHANnel Commands Control all oscilloscope functions associated with individual analog channels or groups of channels. See "Introduction to :CHANnel Commands" on page 222.
10 :CHANnel Commands Table 70 :CHANnel Commands Summary (continued) Command Query Options and Query Returns :CHANnel:PROBe:HEA D[:TYPE] (see page 232) :CHANnel:PROBe:HEA D[:TYPE]? (see page 232) ::= {SEND0 | SEND6 | SEND12 | SEND20 | DIFF0 | DIFF6 | DIFF12 | DIFF20 | NONE} ::= 1 to (# analog channels) in NR1 format n/a :CHANnel:PROBe:ID? (see page 233) ::= unquoted ASCII string up to 11 characters ::= 1 to (# analog channels) in NR1 format
10 :CHANnel Commands The CHANnel subsystem commands control an analog channel (vertical or Y- axis of the oscilloscope). Channels are independently programmable for all offset, probe, coupling, bandwidth limit, inversion, vernier, and range (scale) functions. The channel number (1, 2, 3, or 4) specified in the command selects the analog channel that is affected by the command. A label command provides identifying annotations of up to 10 characters.
10 :CHANnel Commands :CHANnel:BWLimit (see page 860) Command Syntax :CHANnel:BWLimit ::= {{1 | ON} | {0 | OFF} ::= 1 to (# analog channels) in NR1 format The :CHANnel:BWLimit command controls an internal low- pass filter. When the filter is on, the bandwidth of the specified channel is limited to approximately 25 MHz. Query Syntax :CHANnel:BWLimit? The :CHANnel:BWLimit? query returns the current setting of the low- pass filter.
:CHANnel Commands 10 :CHANnel:COUPling (see page 860) Command Syntax :CHANnel:COUPling ::= {AC | DC} ::= 1 to (# analog channels) in NR1 format The :CHANnel:COUPling command selects the input coupling for the specified channel. The coupling for each analog channel can be set to AC or DC. Query Syntax :CHANnel:COUPling? The :CHANnel:COUPling? query returns the current coupling for the specified channel.
10 :CHANnel Commands :CHANnel:DISPlay (see page 860) Command Syntax :CHANnel:DISPlay ::= {{1 | ON} | {0 | OFF}} ::= 1 to (# analog channels) in NR1 format The :CHANnel:DISPlay command turns the display of the specified channel on or off. Query Syntax :CHANnel:DISPlay? The :CHANnel:DISPlay? query returns the current display setting for the specified channel.
:CHANnel Commands 10 :CHANnel:IMPedance (see page 860) Command Syntax :CHANnel:IMPedance ::= {ONEMeg | FIFTy} ::= 1 to (# analog channels) in NR1 format The :CHANnel:IMPedance command selects the input impedance setting for the specified analog channel. The legal values for this command are ONEMeg (1 M) and FIFTy (50). NOTE Query Syntax The analog channel input impedance of the 100 MHz bandwidth oscilloscope models is fixed at ONEMeg (1 M).
10 :CHANnel Commands :CHANnel:INVert (see page 860) Command Syntax :CHANnel:INVert ::= {{1 | ON} | {0 | OFF} ::= 1 to (# analog channels) in NR1 format The :CHANnel:INVert command selects whether or not to invert the input signal for the specified channel. The inversion may be 1 (ON/inverted) or 0 (OFF/not inverted). Query Syntax :CHANnel:INVert? The :CHANnel:INVert? query returns the current state of the channel inversion.
:CHANnel Commands 10 :CHANnel:LABel (see page 860) Command Syntax :CHANnel:LABel ::= quoted ASCII string ::= 1 to (# analog channels) in NR1 format NOTE Label strings are 10 characters or less, and may contain any commonly used ASCII characters. Labels with more than 10 characters are truncated to 10 characters. Lower case characters are converted to upper case. The :CHANnel:LABel command sets the analog channel label to the string that follows.
10 :CHANnel Commands :CHANnel:OFFSet (see page 860) Command Syntax :CHANnel:OFFSet [] ::= Vertical offset value in NR3 format ::= {V | mV} ::= 1 to (# analog channels) in NR1 format The :CHANnel:OFFSet command sets the value that is represented at center screen for the selected channel. The range of legal values varies with the value set by the :CHANnel:RANGe and :CHANnel:SCALe commands.
10 :CHANnel Commands :CHANnel:PROBe (see page 860) Command Syntax :CHANnel:PROBe ::= probe attenuation ratio in NR3 format ::= 1 to (# analog channels) in NR1 format The obsolete attenuation values X1, X10, X20, X100 are also supported. The :CHANnel:PROBe command specifies the probe attenuation factor for the selected channel. The probe attenuation factor may be 0.1 to 1000. This command does not change the actual input sensitivity of the oscilloscope.
10 :CHANnel Commands :CHANnel:PROBe:HEAD[:TYPE] (see page 860) Command Syntax NOTE This command is valid only for the 113xA Series probes. :CHANnel:PROBe:HEAD[:TYPE] ::= {SEND0 | SEND6 | SEND12 | SEND20 | DIFF0 | DIFF6 | DIFF12 | DIFF20 | NONE} ::= {1 | 2 | 3 | 4} The :CHANnel:PROBe:HEAD[:TYPE] command sets an analog channel probe head type and dB value. You can choose from: • SEND0 — Single- ended, 0dB. • SEND6 — Single- ended, 6dB.
:CHANnel Commands 10 :CHANnel:PROBe:ID (see page 860) Query Syntax :CHANnel:PROBe:ID? ::= 1 to (# analog channels) in NR1 format The :CHANnel:PROBe:ID? query returns the type of probe attached to the specified oscilloscope channel.
10 :CHANnel Commands :CHANnel:PROBe:SKEW (see page 860) Command Syntax :CHANnel:PROBe:SKEW ::= skew time in NR3 format ::= -100 ns to +100 ns ::= 1 to (# analog channels) in NR1 format The :CHANnel:PROBe:SKEW command sets the channel- to- channel skew factor for the specified channel. Each analog channel can be adjusted + or - 100 ns for a total of 200 ns difference between channels.
:CHANnel Commands 10 :CHANnel:PROBe:STYPe (see page 860) Command Syntax NOTE This command is valid only for the 113xA Series probes. :CHANnel:PROBe:STYPe ::= {DIFFerential | SINGle} ::= 1 to (# analog channels) in NR1 format The :CHANnel:PROBe:STYPe command sets the channel probe signal type (STYPe) to differential or single- ended when using the 113xA Series probes and determines how offset is applied.
10 :CHANnel Commands :CHANnel:PROTection (see page 860) Command Syntax :CHANnel:PROTection[:CLEar] ::= 1 to (# analog channels) in NR1 format| 4} When the analog channel input impedance is set to 50, the input channels are protected against overvoltage. When an overvoltage condition is sensed, the input impedance for the channel is automatically changed to 1 M. The :CHANnel:PROTection[:CLEar] command is used to clear (reset) the overload protection.
:CHANnel Commands 10 :CHANnel:RANGe (see page 860) Command Syntax :CHANnel:RANGe [] ::= vertical full-scale range value in NR3 format ::= {V | mV} ::= 1 to (# analog channels) in NR1 format The :CHANnel:RANGe command defines the full- scale vertical axis of the selected channel. When using 1:1 probe attenuation, legal values for the range are from 16 mV to 40 V.
10 :CHANnel Commands :CHANnel:SCALe (see page 860) Command Syntax :CHANnel:SCALe [] ::= vertical units per division in NR3 format ::= {V | mV} ::= 1 to (# analog channels) in NR1 format The :CHANnel:SCALe command sets the vertical scale, or units per division, of the selected channel. When using 1:1 probe attenuation, legal values for the scale are from 2 mV to 5 V.
10 :CHANnel Commands :CHANnel:UNITs (see page 860) Command Syntax :CHANnel:UNITs ::= {VOLT | AMPere} ::= 1 to (# analog channels) in NR1 format The :CHANnel:UNITs command sets the measurement units for the connected probe. Select VOLT for a voltage probe and select AMPere for a current probe. Measurement results, channel sensitivity, and trigger level will reflect the measurement units you select.
10 :CHANnel Commands :CHANnel:VERNier (see page 860) Command Syntax :CHANnel:VERNier ::= {{1 | ON} | {0 | OFF} ::= 1 to (# analog channels) in NR1 format The :CHANnel:VERNier command specifies whether the channel's vernier (fine vertical adjustment) setting is ON (1) or OFF (0). Query Syntax :CHANnel:VERNier? The :CHANnel:VERNier? query returns the current state of the channel's vernier setting.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 11 :DEMO Commands When the education kit is licensed (Option EDU), you can output demonstration signals on the oscilloscope's Demo 1 and Demo 2 terminals. See "Introduction to :DEMO Commands" on page 241.
11 :DEMO Commands :DEMO:FUNCtion (see page 860) Command Syntax :DEMO:FUNCtion ::= {SINusoid | NOISy | PHASe | RINGing | SINGle | AM | CLK | GLITch | BURSt | MSO | RUNT | TRANsition | RFBurst | SHOLd | LFSine | CAN | LIN | UART | I2C | SPI | I2S | CANLin} The :DEMO:FUNCtion command selects the type of demo signal: 242 Demo Signal Function Demo 1 Terminal Demo 2 Terminal SINusoid 5 MHz sine wave @ ~ 6 Vpp, 0 V offset Off NOISy 1 kHz sine wave @ ~ 2.4 Vpp, 0.0 V offset, with ~ 0.
:DEMO Commands 11 Demo Signal Function Demo 1 Terminal Demo 2 Terminal MSO 3.1 kHz stair-step sine wave output of DAC @ ~1.5 Vpp, 0.75 V offset DAC input signals are internally routed to digital channels D0 through D7 ~3.1 kHz sine wave filtered from DAC output @ ~ 600 mVpp, 300 mV offset RUNT Digital pulse train with positive and negative runt pulses @ ~ 3.5 Vpp, 1.75 V offset Off TRANsition Digital pulse train with two different edge speeds @ ~ 3.5 Vpp, 1.
11 :DEMO Commands Query Syntax Demo Signal Function Demo 1 Terminal Demo 2 Terminal I2S Off Signals are internally routed to digital channels D7 through D9: • D9 — SDATA, TTL level, with "standard" alignment (internally routed to digital input). • D8 — SCLK, TTL level, (internally routed to digital input). • D7 — WS, TTL level, low for left channel, high for right channel (internally routed to digital input) Off CANLin CAN_L, 250 kbps dominant-low, ~2.8 Vpp, ~1.4 V offset LIN, 19.2 kbps, ~2.
:DEMO Commands 11 :DEMO:FUNCtion:PHASe:PHASe (see page 860) Command Syntax :DEMO:FUNCtion:PHASe:PHASe ::= angle in degrees from 0 to 360 in NR3 format For the phase shifted sine demo signals, the :DEMO:FUNCtion:PHASe:PHASe command specifies the phase shift in the second sine waveform. Query Syntax :DEMO:FUNCtion:PHASe:PHASe? The :DEMO:FUNCtion:PHASe:PHASe? query returns the currently set phase shift.
11 :DEMO Commands :DEMO:OUTPut (see page 860) Command Syntax :DEMO:OUTPut ::= {{1 | ON} | {0 | OFF} The :DEMO:OUTPut command specifies whether the demo signal output is ON (1) or OFF (0). Query Syntax :DEMO:OUTPut? The :DEMO:OUTPut? query returns the current state of the demo signal output setting.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 12 :DIGital Commands Control all oscilloscope functions associated with individual digital channels. See "Introduction to :DIGital Commands" on page 247.
12 :DIGital Commands The DIGital subsystem commands control the viewing, labeling, and positioning of digital channels. They also control threshold settings for groups of digital channels, or pods. NOTE These commands are only valid for the MSO models. Reporting the Setup Use :DIGital? to query setup information for the DIGital subsystem. Return Format The following is a sample response from the :DIGital0? query. In this case, the query was issued following a *RST command. :DIG0:DISP 0;THR +1.
12 :DIGital Commands :DIGital:DISPlay (see page 860) Command Syntax :DIGital:DISPlay ::= 0 to (# digital channels - 1) in NR1 format ::= {{1 | ON} | {0 | OFF}} The :DIGital:DISPlay command turns digital display on or off for the specified channel. NOTE Query Syntax This command is only valid for the MSO models. :DIGital:DISPlay? The :DIGital:DISPlay? query returns the current digital display setting for the specified channel.
12 :DIGital Commands :DIGital:LABel (see page 860) Command Syntax :DIGital:LABel ::= 0 to (# digital channels - 1) in NR1 format ::= any series of 10 or less characters as quoted ASCII string. The :DIGital:LABel command sets the channel label to the string that follows. Setting a label for a channel also adds the name to the label list in non- volatile memory (replacing the oldest label in the list). NOTE This command is only valid for the MSO models.
:DIGital Commands 12 :DIGital:POSition (see page 860) Command Syntax :DIGital:POSition ::= 0 to (# digital channels - 1) in NR1 format ::= integer in NR1 format. Channel Size Position Top Bottom Large 0-7 7 0 Medium 0-15 15 0 Small 0-31 31 0 The :DIGital:POSition command sets the position of the specified channel. NOTE Query Syntax This command is only valid for the MSO models.
12 :DIGital Commands :DIGital:SIZE (see page 860) Command Syntax :DIGital:SIZE ::= 0 to (# digital channels - 1) in NR1 format ::= {SMALl | MEDium | LARGe} The :DIGital:SIZE command specifies the size of digital channels on the display. Sizes are set for all digital channels. Therefore, if you set the size on digital channel 0 (for example), the same size is set on all other as well. NOTE Query Syntax This command is only valid for the MSO models.
:DIGital Commands 12 :DIGital:THReshold (see page 860) Command Syntax :DIGital:THReshold ::= 0 to (# digital channels - 1) in NR1 format ::= {CMOS | ECL | TTL | []} ::= -8.00 to +8.00 in NR3 format ::= {V | mV | uV} • TTL = 1.4V • CMOS = 2.5V • ECL = - 1.3V The :DIGital:THReshold command sets the logic threshold value for all channels in the same pod as the specified channel.
12 :DIGital Commands 254 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 13 :DISPlay Commands Control how waveforms, graticule, and text are displayed and written on the screen. See "Introduction to :DISPlay Commands" on page 255.
13 :DISPlay Commands • Save and Recall display data. Reporting the Setup Use :DISPlay? to query the setup information for the DISPlay subsystem. Return Format The following is a sample response from the :DISPlay? query. In this case, the query was issued following a *RST command.
:DISPlay Commands 13 :DISPlay:CLEar (see page 860) Command Syntax :DISPlay:CLEar The :DISPlay:CLEar command clears the display and resets all associated measurements. If the oscilloscope is stopped, all currently displayed data is erased. If the oscilloscope is running, all of the data for active channels and functions is erased; however, new data is displayed on the next acquisition.
13 :DISPlay Commands :DISPlay:DATA (see page 860) Query Syntax :DISPlay:DATA? [][,][] ::= {BMP | BMP8bit | PNG} ::= {COLor | GRAYscale} The :DISPlay:DATA? query reads screen image data. You can choose 24- bit BMP, 8- bit BMP8bit, or 24- bit PNG formats in color or grayscale. If no format or palette option is specified, the screen image is returned in BMP, COLor format. Screen image data is returned in the IEEE- 488.2 # binary block data format.
:DISPlay Commands 13 :DISPlay:LABel (see page 860) Command Syntax :DISPlay:LABel ::= {{1 | ON} | {0 | OFF}} The :DISPlay:LABel command turns the analog and digital channel labels on and off. Query Syntax :DISPlay:LABel? The :DISPlay:LABel? query returns the display mode of the analog and digital labels.
13 :DISPlay Commands :DISPlay:LABList (see page 860) Command Syntax :DISPlay:LABList ::= an ordered list of up to 75 labels, a maximum of 10 characters each, separated by newline characters. The :DISPlay:LABList command adds labels to the label list. Labels are added in alphabetical order. NOTE Query Syntax Labels that begin with the same alphabetic base string followed by decimal digits are considered duplicate labels.
:DISPlay Commands 13 :DISPlay:PERSistence (see page 860) Command Syntax :DISPlay:PERSistence ::= {MINimum | INFinite | } ::= seconds in in NR3 format from 100E-3 to 60E0 The :DISPlay:PERSistence command specifies the persistence setting: • MINimum — indicates zero persistence. • INFinite — indicates infinite persistence. • — for variable persistence, that is, you can specify how long acquisitions remain on the screen.
13 :DISPlay Commands :DISPlay:VECTors (see page 860) Command Syntax :DISPlay:VECTors ::= {1 | ON} The only legal value for the :DISPlay:VECTors command is ON (or 1). This specifies that lines are drawn between acquired data points on the screen. Query Syntax :DISPlay:VECTors? The :DISPlay:VECTors? query returns the vectors setting.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 14 :EXTernal Trigger Commands Control the input characteristics of the external trigger input. See "Introduction to :EXTernal Trigger Commands" on page 263.
14 :EXTernal Trigger Commands :EXTernal:BWLimit (see page 860) Command Syntax :EXTernal:BWLimit ::= {0 | OFF} The :EXTernal:BWLimit command is provided for product compatibility. The only legal value is 0 or OFF. Use the :TRIGger:HFReject command to limit bandwidth on the external trigger input. Query Syntax :EXTernal:BWLimit? The :EXTernal:BWLimit? query returns the current setting of the low- pass filter (always 0).
:EXTernal Trigger Commands 14 :EXTernal:PROBe (see page 860) Command Syntax :EXTernal:PROBe ::= probe attenuation ratio in NR3 format The :EXTernal:PROBe command specifies the probe attenuation factor for the external trigger. The probe attenuation factor may be 0.1 to 1000. This command does not change the actual input sensitivity of the oscilloscope. It changes the reference constants for scaling the display factors and for setting trigger levels.
14 :EXTernal Trigger Commands :EXTernal:RANGe (see page 860) Command Syntax :EXTernal:RANGe [] ::= vertical full-scale range value in NR3 format ::= {V | mV} The :EXTernal:RANGe command is provided for product compatibility. When using 1:1 probe attenuation, the range can only be set to 8.0 V. If the probe attenuation is changed, the range value is multiplied by the probe attenuation factor.
14 :EXTernal Trigger Commands :EXTernal:UNITs (see page 860) Command Syntax :EXTernal:UNITs ::= {VOLT | AMPere} The :EXTernal:UNITs command sets the measurement units for the probe connected to the external trigger input. Select VOLT for a voltage probe and select AMPere for a current probe. Measurement results, channel sensitivity, and trigger level will reflect the measurement units you select.
14 :EXTernal Trigger Commands 268 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 15 :FUNCtion Commands Control functions in the measurement/storage module. See "Introduction to :FUNCtion Commands" on page 271. Table 75 :FUNCtion Commands Summary Command Query Options and Query Returns :FUNCtion:CENTer (see page 272) :FUNCtion:CENTer? (see page 272) ::= the current center frequency in NR3 format. The range of legal values is from 0 Hz to 25 GHz.
15 :FUNCtion Commands Table 75 :FUNCtion Commands Summary (continued) Command Query Options and Query Returns :FUNCtion:RANGe (see page 279) :FUNCtion:RANGe? (see page 279) ::= the full-scale vertical axis value in NR3 format. The range for ADD, SUBT, MULT is 8E-6 to 800E+3. The range for the INTegrate function is 8E-9 to 400E+3. The range for the DIFF function is 80E-3 to 8.0E12 (depends on current sweep speed). The range for the FFT function is 8 to 800 dBV.
15 :FUNCtion Commands Introduction to :FUNCtion Commands The FUNCtion subsystem controls the math functions in the oscilloscope. Add, subtract, multiply, differentiate, integrate, square root, and FFT (Fast Fourier Transform) operations are available. These math operations only use the analog (vertical) channels. The SOURce1, DISPlay, RANGe, and OFFSet commands apply to any function. The SPAN, CENTer, and WINDow commands are only useful for FFT functions.
15 :FUNCtion Commands :FUNCtion:CENTer (see page 860) Command Syntax :FUNCtion:CENTer ::= the current center frequency in NR3 format. of legal values is from 0 Hz to 25 GHz. The range The :FUNCtion:CENTer command sets the center frequency when FFT (Fast Fourier Transform) is selected. Query Syntax :FUNCtion:CENTer? The :FUNCtion:CENTer? query returns the current center frequency in Hertz. Return Format ::= the current center frequency in NR3 format.
:FUNCtion Commands 15 :FUNCtion:DISPlay (see page 860) Command Syntax :FUNCtion:DISPlay ::= {{1 | ON} | {0 | OFF}} The :FUNCtion:DISPlay command turns the display of the function on or off. When ON is selected, the function performs as specified using the other FUNCtion commands. When OFF is selected, function is neither calculated nor displayed. Query Syntax :FUNCtion:DISPlay? The :FUNCtion:DISPlay? query returns whether the function display is on or off.
15 :FUNCtion Commands :FUNCtion:GOFT:OPERation (see page 860) Command Syntax :FUNCtion:GOFT:OPERation ::= {ADD | SUBTract | MULTiply} The :FUNCtion:GOFT:OPERation command sets the math operation for the g(t) source that can be used as the input to the FFT, INTegrate, DIFF (differentiate), or SQRT functions: • ADD — Source1 + source2. • SUBTract — Source1 - source2. • MULTiply — Source1 * source2.
:FUNCtion Commands 15 :FUNCtion:GOFT:SOURce1 (see page 860) Command Syntax :FUNCtion:GOFT:SOURce1 ::= CHANnel ::= {1 | 2 | 3 | 4} for 4ch models ::= {1 | 2} for 2ch models The :FUNCtion:GOFT:SOURce1 command selects the first input channel for the g(t) source that can be used as the input to the FFT, INTegrate, DIFF (diferentiate), or SQRT functions.
15 :FUNCtion Commands :FUNCtion:GOFT:SOURce2 (see page 860) Command Syntax :FUNCtion:GOFT:SOURce2 ::= CHANnel ::= {{1 | 2} | {3 | 4}} for 4ch models, depending on SOURce1 selection ::= {1 | 2} for 2ch models The :FUNCtion:GOFT:SOURce2 command selects the second input channel for the g(t) source that can be used as the input to the FFT, INTegrate, DIFF (differentiate), or SQRT functions.
:FUNCtion Commands 15 :FUNCtion:OFFSet (see page 860) Command Syntax :FUNCtion:OFFSet ::= the value at center screen in NR3 format. The :FUNCtion:OFFSet command sets the voltage or vertical value represented at center screen for the selected function. The range of legal values is generally +/- 10 times the current scale of the selected function, but will vary by function.
15 :FUNCtion Commands :FUNCtion:OPERation (see page 860) Command Syntax :FUNCtion:OPERation ::= {ADD | SUBTract | MULTiply | INTegrate | DIFF | FFT | SQRT} The :FUNCtion:OPERation command sets the desired waveform math operation: • ADD — Source1 + source2. • SUBTract — Source1 - source2. • MULTiply — Source1 * source2. • INTegrate — Integrate the selected waveform source. • DIFF — Differentiate the selected waveform source.
:FUNCtion Commands 15 :FUNCtion:RANGe (see page 860) Command Syntax :FUNCtion:RANGe ::= the full-scale vertical axis value in NR3 format. The :FUNCtion:RANGe command defines the full- scale vertical axis for the selected function. Query Syntax :FUNCtion:RANGe? The :FUNCtion:RANGe? query returns the current full- scale range value for the selected function. Return Format ::= the full-scale vertical axis value in NR3 format.
15 :FUNCtion Commands :FUNCtion:REFerence (see page 860) Command Syntax :FUNCtion:REFerence ::= the current reference level in NR3 format. The :FUNCtion:REFerence command sets the voltage or vertical value represented at center screen for the selected function. The range of legal values is generally +/- 10 times the current scale of the selected function, but will vary by function.
:FUNCtion Commands 15 :FUNCtion:SCALe (see page 860) Command Syntax :FUNCtion:SCALe [] ::= integer in NR1 format ::= {V | dB} The :FUNCtion:SCALe command sets the vertical scale, or units per division, of the selected function. Legal values for the scale depend on the selected function. Query Syntax :FUNCtion:SCALe? The :FUNCtion:SCALe? query returns the current scale value for the selected function.
15 :FUNCtion Commands :FUNCtion:SOURce1 (see page 860) Command Syntax :FUNCtion:SOURce1 ::= {CHANnel | GOFT} ::= {1 | 2 | 3 | 4} for 4ch models ::= {1 | 2} for 2ch models The :FUNCtion:SOURce1 command is used for any :FUNCtion:OPERation selection (including the ADD, SUBTract, or MULTiply channel math operations and the FFT, INTegrate, DIFF (differentiate), or SQRT transforms).
:FUNCtion Commands 15 :FUNCtion:SOURce2 (see page 860) Command Syntax :FUNCtion:SOURce2 ::= {CHANnel | NONE} ::= {{1 | 2} | {3 | 4}} for 4ch models, depending on SOURce1 selection ::= {1 | 2} for 2ch models The :FUNCtion:SOURce2 command specifies the second source for math operations that have two sources (see the :FUNCtion:OPERation command), in other words, ADD, SUBTract, or MULTiply. (The :FUNCtion:SOURce1 command specifies the first source.
15 :FUNCtion Commands :FUNCtion:SPAN (see page 860) Command Syntax :FUNCtion:SPAN ::= the current frequency span in NR3 format. Legal values are 1 Hz to 100 GHz. If you set the frequency span to a value outside of the legal range, the step size is automatically set to the nearest legal value. The :FUNCtion:SPAN command sets the frequency span of the display (left graticule to right graticule) when FFT (Fast Fourier Transform) is selected.
:FUNCtion Commands 15 :FUNCtion:WINDow (see page 860) Command Syntax :FUNCtion:WINDow ::= {RECTangular | HANNing | FLATtop | BHARris} The :FUNCtion:WINDow command allows the selection of four different windowing transforms or operations for the FFT (Fast Fourier Transform) function. The FFT operation assumes that the time record repeats.
15 :FUNCtion Commands 286 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 16 :HARDcopy Commands Set and query the selection of hardcopy device and formatting options. See "Introduction to :HARDcopy Commands" on page 288.
16 :HARDcopy Commands Table 76 :HARDcopy Commands Summary (continued) Command Query Options and Query Returns :HARDcopy:NETWork:PAS Sword (see page 298) n/a ::= quoted ASCII string :HARDcopy:NETWork:SLO T (see page 299) :HARDcopy:NETWork:SLO T? (see page 299) ::= {NET0 | NET1} :HARDcopy:NETWork:USE Rname (see page 300) :HARDcopy:NETWork:USE Rname? (see page 300) ::= quoted ASCII string :HARDcopy:PALette (see page 301) :HARDcop
:HARDcopy Commands 16 :HARDcopy:AREA (see page 860) Command Syntax :HARDcopy:AREA ::= SCReen The :HARDcopy:AREA command controls what part of the display area is printed. Currently, the only legal choice is SCReen. Query Syntax :HARDcopy:AREA? The :HARDcopy:AREA? query returns the selected display area.
16 :HARDcopy Commands :HARDcopy:APRinter (see page 860) Command Syntax :HARDcopy:APRinter ::= { | } ::= integer index of printer in list ::= name of printer in list The :HARDcopy:APRinter command sets the active printer. Query Syntax :HARDcopy:APRinter? The :HARDcopy:APRinter? query returns the name of the active printer.
:HARDcopy Commands 16 :HARDcopy:FACTors (see page 860) Command Syntax :HARDcopy:FACTors ::= {{OFF | 0} | {ON | 1}} The HARDcopy:FACTors command controls whether the scale factors are output on the hardcopy dump. Query Syntax :HARDcopy:FACTors? The :HARDcopy:FACTors? query returns a flag indicating whether oscilloscope instrument settings are output on the hardcopy.
16 :HARDcopy Commands :HARDcopy:FFEed (see page 860) Command Syntax :HARDcopy:FFEed ::= {{OFF | 0} | {ON | 1}} The HARDcopy:FFEed command controls whether a formfeed is output between the screen image and factors of a hardcopy dump. Query Syntax :HARDcopy:FFEed? The :HARDcopy:FFEed? query returns a flag indicating whether a formfeed is output at the end of the hardcopy dump.
16 :HARDcopy Commands :HARDcopy:INKSaver (see page 860) Command Syntax :HARDcopy:INKSaver ::= {{OFF | 0} | {ON | 1}} The HARDcopy:INKSaver command controls whether the graticule colors are inverted or not. Query Syntax :HARDcopy:INKSaver? The :HARDcopy:INKSaver? query returns a flag indicating whether graticule colors are inverted or not.
16 :HARDcopy Commands :HARDcopy:LAYout (see page 860) Command Syntax :HARDcopy:LAYout ::= {LANDscape | PORTrait} The :HARDcopy:LAYout command sets the hardcopy layout mode. Query Syntax :HARDcopy:LAYout? The :HARDcopy:LAYout? query returns the selected hardcopy layout mode.
:HARDcopy Commands 16 :HARDcopy:NETWork:ADDRess (see page 860) Command Syntax :HARDcopy:NETWork:ADDRess
::= quoted ASCII string The :HARDcopy:NETWork:ADDRess command sets the address for a network printer slot. The address is the server/computer name and the printer's share name in the \\server\share format. The network printer slot is selected by the :HARDcopy:NETWork:SLOT command. To apply the entered address, use the :HARDcopy:NETWork:APPLy command.16 :HARDcopy Commands :HARDcopy:NETWork:APPLy (see page 860) Command Syntax :HARDcopy:NETWork:APPLy The :HARDcopy:NETWork:APPLy command applies the network printer settings and makes the printer connection.
:HARDcopy Commands 16 :HARDcopy:NETWork:DOMain (see page 860) Command Syntax :HARDcopy:NETWork:DOMain ::= quoted ASCII string The :HARDcopy:NETWork:DOMain command sets the Windows network domain name. The domain name setting is a common setting for both network printer slots. Query Syntax :HARDcopy:NETWork:DOMain? The :HARDcopy:NETWork:DOMain? query returns the current Windows network domain name.
16 :HARDcopy Commands :HARDcopy:NETWork:PASSword (see page 860) Command Syntax :HARDcopy:NETWork:PASSword ::= quoted ASCII string The :HARDcopy:NETWork:PASSword command sets the password for the specified Windows network domain and user name. The password setting is a common setting for both network printer slots.
:HARDcopy Commands 16 :HARDcopy:NETWork:SLOT (see page 860) Command Syntax :HARDcopy:NETWork:SLOT ::= {NET0 | NET1} The :HARDcopy:NETWork:SLOT command selects the network printer slot used for the address and apply commands. There are two network printer slots to choose from. Query Syntax :HARDcopy:NETWork:SLOT? The :HARDcopy:NETWork:SLOT? query returns the currently selected network printer slot.
16 :HARDcopy Commands :HARDcopy:NETWork:USERname (see page 860) Command Syntax :HARDcopy:NETWork:USERname ::= quoted ASCII string The :HARDcopy:NETWork:USERname command sets the user name to use when connecting to the Windows network domain. The user name setting is a common setting for both network printer slots. Query Syntax :HARDcopy:NETWork:USERname? The :HARDcopy:NETWork:USERname? query returns the currently set user name.
:HARDcopy Commands 16 :HARDcopy:PALette (see page 860) Command Syntax :HARDcopy:PALette ::= {COLor | GRAYscale | NONE} The :HARDcopy:PALette command sets the hardcopy palette color. The oscilloscope's print driver cannot print color images to color laser printers, so the COLor option is not available when connected to laser printers. Query Syntax :HARDcopy:PALette? The :HARDcopy:PALette? query returns the selected hardcopy palette color.
16 :HARDcopy Commands :HARDcopy:PRINter:LIST (see page 860) Query Syntax :HARDcopy:PRINter:LIST? The :HARDcopy:PRINter:LIST? query returns a list of available printers. The list can be empty. Return Format ::= [] ...
:HARDcopy Commands 16 :HARDcopy:STARt (see page 860) Command Syntax :HARDcopy:STARt The :HARDcopy:STARt command starts a print job.
16 :HARDcopy Commands 304 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 17 :LISTer Commands Table 77 :LISTer Commands Summary Command Query Options and Query Returns n/a :LISTer:DATA? (see page 306) ::= comma-separated data with newlines at the end of each row :LISTer:DISPlay {{OFF | 0} | {SBUS1 | ON | 1} | {SBUS2 | 2} | ALL} (see page 307) :LISTer:DISPlay? (see page 307) {OFF | SBUS1 | SBUS2 | ALL} :LISTer:REFerence (see page 308) :LISTer:REFerence? (see page 308)
17 :LISTer Commands :LISTer:DATA (see page 860) Query Syntax :LISTer:DATA? The :LISTer:DATA? query returns the lister data.
:LISTer Commands 17 :LISTer:DISPlay (see page 860) Command Syntax :LISTer:DISPlay ::= {{OFF | 0} | {SBUS1 | ON | 1} | {SBUS2 | 2} | ALL} The :LISTer:DISPlay command configures which of the serial buses to display in the Lister, or whether the Lister is off. "ON" or "1" is the same as "SBUS1". When set to "ALL", the decode information for different buses is interleaved in time. Serial bus decode must be on before it can be displayed in the Lister.
17 :LISTer Commands :LISTer:REFerence (see page 860) Command Syntax :LISTer:REFerence ::= {TRIGger | PREVious} The :LISTer:REFerence command selects whether the time value for a Lister row is relative to the trigger ot the previous Lister row. Query Syntax :LISTer:REFerence? The :LISTer:REFerence? query returns the Lister time reference setting.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 18 :MARKer Commands Set and query the settings of X- axis markers (X1 and X2 cursors) and the Y- axis markers (Y1 and Y2 cursors). See "Introduction to :MARKer Commands" on page 310.
18 :MARKer Commands Table 78 :MARKer Commands Summary (continued) Command Query Options and Query Returns :MARKer:Y1Position [suffix] (see page 317) :MARKer:Y1Position? (see page 317) ::= Y1 cursor position value in NR3 format [suffix] ::= {V | mV | dB} ::= Y1 cursor position value in NR3 format :MARKer:Y2Position [suffix] (see page 318) :MARKer:Y2Position? (see page 318) ::= Y2 cursor position value in NR3 format [suffix] ::= {V | mV | dB} <
:MARKer Commands 18 :MARKer:MODE (see page 860) Command Syntax :MARKer:MODE ::= {OFF | MEASurement | MANual | WAVeform} The :MARKer:MODE command sets the cursors mode: • OFF — removes the cursor information from the display. • MANual — enables manual placement of the X and Y cursors. If the front- panel cursors are off, or are set to the front- panel Hex or Binary mode, setting :MARKer:MODE MANual will put the cursors in the front- panel Normal mode.
18 :MARKer Commands :MARKer:X1Position (see page 860) Command Syntax :MARKer:X1Position [suffix] ::= X1 cursor position in NR3 format ::= {s | ms | us | ns | ps | Hz | kHz | MHz} The :MARKer:X1Position command: • Sets :MARKer:MODE to MANual if it is not currently set to WAVeform (see ":MARKer:MODE" on page 311). • Sets the X1 cursor position to the specified value. Query Syntax :MARKer:X1Position? The :MARKer:X1Position? query returns the current X1 cursor position.
18 :MARKer Commands :MARKer:X1Y1source (see page 860) Command Syntax :MARKer:X1Y1source ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= {1 | 2} The :MARKer:X1Y1source command sets the source for the cursors. The channel you specify must be enabled for cursors to be displayed. If the channel or function is not on, an error message is issued.
18 :MARKer Commands :MARKer:X2Position (see page 860) Command Syntax :MARKer:X2Position [suffix] ::= X2 cursor position in NR3 format ::= {s | ms | us | ns | ps | Hz | kHz | MHz} The :MARKer:X2Position command: • Sets :MARKer:MODE to MANual if it is not currently set to WAVeform (see ":MARKer:MODE" on page 311). • Sets the X2 cursor position to the specified value. Query Syntax :MARKer:X2Position? The :MARKer:X2Position? query returns current X2 cursor position.
18 :MARKer Commands :MARKer:X2Y2source (see page 860) Command Syntax :MARKer:X2Y2source ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= {1 | 2} The :MARKer:X2Y2source command sets the source for the cursors. The channel you specify must be enabled for cursors to be displayed. If the channel or function is not on, an error message is issued.
18 :MARKer Commands :MARKer:XDELta (see page 860) Query Syntax :MARKer:XDELta? The MARKer:XDELta? query returns the value difference between the current X1 and X2 cursor positions. Xdelta = (Value at X2 cursor) - (Value at X1 cursor) NOTE Return Format If the front-panel cursors are off, the marker position values are not defined. Make sure to set :MARKer:MODE to MANual or WAVeform to put the cursors in the front-panel Normal mode. ::= difference value in NR3 format.
:MARKer Commands 18 :MARKer:Y1Position (see page 860) Command Syntax :MARKer:Y1Position [suffix] ::= Y1 cursor position in NR3 format ::= {mV | V | dB} If the :MARKer:MODE is not currently set to WAVeform (see ":MARKer:MODE" on page 311), the :MARKer:Y1Position command: • Sets :MARKer:MODE to MANual. • Sets the Y1 cursor position to the specified value. When the :MARKer:MODE is set to WAVeform, Y positions cannot be set.
18 :MARKer Commands :MARKer:Y2Position (see page 860) Command Syntax :MARKer:Y2Position [suffix] ::= Y2 cursor position in NR3 format ::= {mV | V | dB} If the :MARKer:MODE is not currently set to WAVeform (see ":MARKer:MODE" on page 311), the :MARKer:Y1Position command: • Sets :MARKer:MODE to MANual. • Sets the Y2 cursor position to the specified value. When the :MARKer:MODE is set to WAVeform, Y positions cannot be set.
:MARKer Commands 18 :MARKer:YDELta (see page 860) Query Syntax :MARKer:YDELta? The :MARKer:YDELta? query returns the value difference between the current Y1 and Y2 cursor positions. Ydelta = (Value at Y2 cursor) - (Value at Y1 cursor) NOTE Return Format If the front-panel cursors are off or are set to Binary or Hex Mode, the marker position values are not defined. Make sure to set :MARKer:MODE to MANual or WAVeform to put the cursors in the front-panel Normal mode.
18 :MARKer Commands 320 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 19 :MEASure Commands Select automatic measurements to be made and control time markers. See "Introduction to :MEASure Commands" on page 330.
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:DEFine DELay, (see page 337) :MEASure:DEFine? DELay (see page 338) ::= , edge_spec1 ::= [] edge_spec2 ::= [] ::= {+ | -} ::= integer :MEASure:DEFine THResholds, (see page 337) :MEASure:DEFine? THResholds (see page 338) ::= {STANdard} | {
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:FALLtime [] (see page 343) :MEASure:FALLtime? [] (see page 343) ::= {CHANnel | FUNCtion | MATH | WMEMory} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format ::= time in
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:NWIDth [] (see page 347) :MEASure:NWIDth? [] (see page 347) ::= {CHANnel | FUNCtion | MATH | WMEMory} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format ::= negative pul
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:PHASe [] [,] (see page 352) :MEASure:PHASe? [] [,] (see page 352) ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= the phase angle value in degrees in NR3 format :MEASure:PPULses [] (see page 353) :MEASure:PPULses? [] (see page 353
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:RISetime [] (see page 359) :MEASure:RISetime? [] (see page 359) ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= rise time in seconds in NR3 format :MEASure:SDEViation [] (see page 360) :MEASure:SDEViation? [] (see page 360) ::= {CHANnel | FU
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns n/a :MEASure:TEDGe? [, ] (see page 367) ::= direction of the waveform ::= the transition to be reported ::= {CHANnel | FUNCtion | MATH | WMEMory} for DSO models ::= {CHANnel | DIGital | FUNCtion | MATH | WMEMory} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (#
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:VAMPlitude [] (see page 371) :MEASure:VAMPlitude? [] (see page 371) ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= the amplitude of the selected waveform in volts in NR3 format :MEASure:VAVerage [][,][] (see page 372) :MEASure:VAVerage? [][
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:VPP [] (see page 376) :MEASure:VPP? [] (see page 376) ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= voltage peak-to-peak of the selected waveform in NR3 format :MEASure:VRATio [] [,] (see page 352) :MEASure:VRATio? [] [,] (see page
19 :MEASure Commands Table 79 :MEASure Commands Summary (continued) Command Query Options and Query Returns :MEASure:VTOP [] (see page 380) :MEASure:VTOP? [] (see page 380) ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format ::= voltage at the top of the waveform in NR3 format :MEASure:WINDow (see page 381) :MEASure:WINDow? (see page 381) ::= {MAIN | ZOOM | AUTO} :MEASure:XMAX
19 :MEASure Commands If a measurement cannot be made (typically because the proper portion of the waveform is not displayed), the value +9.9E+37 is returned for that measurement. Making Measurements If more than one waveform, edge, or pulse is displayed, time measurements are made on the portion of the displayed waveform closest to the trigger reference (left, center, or right).
19 :MEASure Commands :MEASure:ALL (see page 860) Command Syntax :MEASure:ALL This command clears installs a Snapshot All measurement on the screen.
:MEASure Commands 19 :MEASure:AREa (see page 860) Command Syntax :MEASure:AREa [][,][] ::= {CYCLe | DISPlay} ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:AREa command installs an area measurement on screen. Area measurements show the area between the waveform and the ground level.
19 :MEASure Commands :MEASure:BWIDth (see page 860) Command Syntax :MEASure:BWIDth [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:BWIDth command installs a burst width measurement on screen. If the optional source parameter is not specified, the current measurement source is used. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
:MEASure Commands 19 :MEASure:CLEar (see page 860) Command Syntax :MEASure:CLEar This command clears all selected measurements and markers from the screen.
19 :MEASure Commands :MEASure:COUNter (see page 860) Command Syntax :MEASure:COUNter [] ::= { | CHANnel | EXTernal} ::= DIGital for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:COUNter command installs a screen measurement and starts a counter measurement. If the optional source parameter is specified, the current source is modified.
:MEASure Commands 19 :MEASure:DEFine (see page 860) Command Syntax :MEASure:DEFine ::= {DELay | THResholds} The :MEASure:DEFine command sets up the definition for measurements by specifying the delta time or threshold values. Changing these values may affect the results of other measure commands. The table below identifies which measurement results that can be affected by redefining the DELay specification or the THResholds values.
19 :MEASure Commands This command defines the behavior of the :MEASure:DELay? query by specifying the start and stop edge to be used. specifies the slope and edge number on source1. specifies the slope and edge number on source2.
:MEASure Commands Return Format 19 for = DELay: { | | ,} for = THResholds and = PERCent: THR,PERC,,, , , ::= A number specifying the upper, middle, and lower threshold percentage values between Vbase and Vtop in NR3 format.
19 :MEASure Commands :MEASure:DELay (see page 860) Command Syntax :MEASure:DELay [][,] , ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:DELay command places the instrument in the continuous measurement mode and starts a delay measurement.
:MEASure Commands 19 Vtop. If you want to move the delay measurement point nearer to Vtop or Vbase, you must change the threshold values with the :MEASure:DEFine THResholds command.
19 :MEASure Commands :MEASure:DUTYcycle (see page 860) Command Syntax :MEASure:DUTYcycle [] ::= { | CHANnel | FUNCtion | MATH | WMEMory} ::= DIGital for the MSO models ::= 1 to (# of analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:DUTYcycle command installs a screen measurement and starts a duty cycle measurement on the current :MEASure:SOURce.
:MEASure Commands 19 :MEASure:FALLtime (see page 860) Command Syntax :MEASure:FALLtime [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:FALLtime command installs a screen measurement and starts a fall- time measurement. For highest measurement accuracy, set the sweep speed as fast as possible, while leaving the falling edge of the waveform on the display.
19 :MEASure Commands :MEASure:FREQuency (see page 860) Command Syntax :MEASure:FREQuency [] ::= { | CHANnel | FUNCtion | MATH | WMEMory} ::= DIGital for the MSO models ::= 1 to (# of analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:FREQuency command installs a screen measurement and starts a frequency measurement.
:MEASure Commands 19 :MEASure:NEDGes (see page 860) Command Syntax :MEASure:NEDGes [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:NEDGes command installs a falling edge count measurement on screen. If the optional source parameter is not specified, the current source is measured. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
19 :MEASure Commands :MEASure:NPULses (see page 860) Command Syntax :MEASure:NPULses [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:NPULses command installs a falling pulse count measurement on screen. If the optional source parameter is not specified, the current source is measured. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
:MEASure Commands 19 :MEASure:NWIDth (see page 860) Command Syntax :MEASure:NWIDth [] ::= { | CHANnel | FUNCtion | MATH | WMEMory} ::= DIGital for the MSO models ::= 1 to (# of analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:NWIDth command installs a screen measurement and starts a negative pulse width measurement.
19 :MEASure Commands :MEASure:OVERshoot (see page 860) Command Syntax :MEASure:OVERshoot [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:OVERshoot command installs a screen measurement and starts an overshoot measurement. If the optional source parameter is specified, the current source is modified. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
:MEASure Commands 19 • ":MEASure:VTOP" on page 380 • ":MEASure:VBASe" on page 373 • ":MEASure:VMIN" on page 375 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 349
19 :MEASure Commands :MEASure:PEDGes (see page 860) Command Syntax :MEASure:PEDGes [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:PEDGes command installs a rising edge count measurement on screen. If the optional source parameter is not specified, the current source is measured. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
:MEASure Commands 19 :MEASure:PERiod (see page 860) Command Syntax :MEASure:PERiod [] ::= { | CHANnel | FUNCtion | MATH | WMEMory} ::= DIGital for the MSO models ::= 1 to (# of analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:PERiod command installs a screen measurement and starts the period measurement.
19 :MEASure Commands :MEASure:PHASe (see page 860) Command Syntax :MEASure:PHASe [][,] , ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:PHASe command places the instrument in the continuous measurement mode and starts a phase measurement. Query Syntax :MEASure:PHASe? [][,] The :MEASure:PHASe? query measures and returns the phase between the specified sources.
:MEASure Commands 19 :MEASure:PPULses (see page 860) Command Syntax :MEASure:PPULses [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:PPULses command installs a rising pulse count measurement on screen. If the optional source parameter is not specified, the current source is measured. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
19 :MEASure Commands :MEASure:PREShoot (see page 860) Command Syntax :MEASure:PREShoot [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:PREShoot command installs a screen measurement and starts a preshoot measurement. If the optional source parameter is specified, the current source is modified.
:MEASure Commands 19 :MEASure:PWIDth (see page 860) Command Syntax :MEASure:PWIDth [] ::= { | CHANnel | FUNCtion | MATH | WMEMory} ::= DIGital for the MSO models ::= 1 to (# of analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:PWIDth command installs a screen measurement and starts the positive pulse width measurement.
19 :MEASure Commands :MEASure:RESults (see page 860) Query Syntax :MEASure:RESults? The :MEASure:RESults? query returns the results of the continuously displayed measurements. The response to the MEASure:RESults? query is a list of comma- separated values. If more than one measurement is running continuously, the :MEASure:RESults return values are duplicated for each continuous measurement from the first to last (left to right) result displayed.
:MEASure Commands 19 Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub Main() On Error GoTo VisaComError ' Create the VISA COM I/O resource. Set myMgr = New VisaComLib.ResourceManager Set myScope = New VisaComLib.FormattedIO488 Set myScope.IO = myMgr.Open("TCPIP0::130.29.70.228::inst0::INSTR") ' Initialize. myScope.IO.Clear ' Clear the interface. myScope.WriteString "*RST" ' Reset to the defaults. myScope.WriteString "*CLS" ' Clear the status data structures. myScope.
19 :MEASure Commands ValueColumnArray(5) = "Std_Dev" ValueColumnArray(6) = "Count" Dim ValueColumn As Variant For Each ResultType In ResultsTypeArray myScope.WriteString ":MEASure:STATistics " + ResultType ' Get the statistics results. Dim intCounter As Integer intCounter = 0 myScope.WriteString ":MEASure:RESults?" ResultsList() = myScope.ReadList For Each Measurement In MeasurementArray If ResultType = "ON" Then ' All statistics.
:MEASure Commands 19 :MEASure:RISetime (see page 860) Command Syntax :MEASure: RISetime [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:RISetime command installs a screen measurement and starts a rise- time measurement. If the optional source parameter is specified, the current source is modified. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
19 :MEASure Commands :MEASure:SDEViation (see page 860) Command Syntax :MEASure:SDEViation [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format NOTE This ":MEASure:VRMS DISPlay, AC" command is the preferred syntax for making standard deviation measurements. The :MEASure:SDEViation command installs a screen measurement and starts std deviation measurement.
:MEASure Commands 19 :MEASure:SHOW (see page 860) Command Syntax :MEASure:SHOW ::= {1 | ON} The :MEASure:SHOW command enables markers for tracking measurements on the display. This feature is always on. Query Syntax :MEASure:SHOW? The :MEASure:SHOW? query returns the current state of the markers.
19 :MEASure Commands :MEASure:SOURce (see page 860) Command Syntax :MEASure:SOURce [,] , ::= { | CHANnel | FUNCtion | MATH | WMEMory | EXTernal} ::= DIGital for the MSO models ::= 1 to (# of analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:SOURce command sets the default sources for measurements.
:MEASure Commands 19 • ":MEASure:PHASe" on page 352 Example Code ' MEASURE - The commands in the MEASURE subsystem are used to make ' measurements on displayed waveforms. myScope.WriteString ":MEASURE:SOURCE CHANNEL1" ' Source to measure. myScope.WriteString ":MEASURE:FREQUENCY?" ' Query for frequency. varQueryResult = myScope.ReadNumber ' Read frequency. MsgBox "Frequency:" + vbCrLf _ + FormatNumber(varQueryResult / 1000, 4) + " kHz" myScope.WriteString ":MEASURE:DUTYCYCLE?" ' Query for duty cycle.
19 :MEASure Commands :MEASure:STATistics (see page 860) Command Syntax :MEASure:STATistics ::= {{ON | 1} | CURRent | MINimum | MAXimum | MEAN | STDDev | COUNt} The :MEASure:STATistics command determines the type of information returned by the :MEASure:RESults? query. ON means all the statistics are on. Query Syntax :MEASure:STATistics? The :MEASure:STATistics? query returns the current statistics mode.
:MEASure Commands 19 :MEASure:STATistics:INCRement (see page 860) Command Syntax :MEASure:STATistics:INCRement This command updates the statistics once (incrementing the count by one) using the current measurement values. It corresponds to the front panel Increment Statistics softkey in the Measurement Statistics Menu. This command lets you, for example, gather statistics over multiple pulses captured in a single acquisition.
19 :MEASure Commands :MEASure:STATistics:RESet (see page 860) Command Syntax :MEASure:STATistics:RESet This command resets the measurement statistics, zeroing the counts. Note that the measurement (statistics) configuration is not deleted.
:MEASure Commands 19 :MEASure:TEDGe (see page 860) Query Syntax :MEASure:TEDGe? [,] ::= direction of the waveform. A rising slope is indicated by a space or plus sign (+). A falling edge is indicated by a minus sign (-). ::= the transition to be reported. If the occurrence number is one, the first crossing from the left screen edge is reported. If the number is two, the second crossing is reported, etc.
19 :MEASure Commands NOTE Return Format This query is not available if the source is FFT (Fast Fourier Transform). ::= time in seconds of the specified transition in NR3 format :MEASure:TEDGe Code ' Make a delay measurement between channel 1 and 2. Dim dblChan1Edge1 As Double Dim dblChan2Edge1 As Double Dim dblChan1Edge2 As Double Dim dblDelay As Double Dim dblPeriod As Double Dim dblPhase As Double ' Query time at 1st rising edge on ch1. myScope.
19 :MEASure Commands :MEASure:TVALue (see page 860) Query Syntax :MEASure:TVALue? , [][,] ::= the vertical value that the waveform must cross. The value can be volts or a math function value such as dB, Vs, or V/s. ::= direction of the waveform. A rising slope is indicated by a plus sign (+). A falling edge is indicated by a minus sign (-). ::= the transition to be reported. If the occurrence number is one, the first crossing is reported.
19 :MEASure Commands ::= time in seconds of the specified value crossing in NR3 format See Also • "Introduction to :MEASure Commands" on page 330 • ":MEASure:TEDGe" on page 367 • ":MEASure:VTIMe" on page 379 370 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
19 :MEASure Commands :MEASure:VAMPlitude (see page 860) Command Syntax :MEASure:VAMPlitude [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VAMPlitude command installs a screen measurement and starts a vertical amplitude measurement. If the optional source parameter is specified, the current source is modified.
19 :MEASure Commands :MEASure:VAVerage (see page 860) Command Syntax :MEASure:VAVerage [][,][] ::= {CYCLe | DISPlay} ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VAVerage command installs a screen measurement and starts an average value measurement. If the optional source parameter is specified, the current source is modified.
:MEASure Commands 19 :MEASure:VBASe (see page 860) Command Syntax :MEASure:VBASe [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VBASe command installs a screen measurement and starts a waveform base value measurement. If the optional source parameter is specified, the current source is modified. NOTE Query Syntax This command is not available if the source is FFT (Fast Fourier Transform).
19 :MEASure Commands :MEASure:VMAX (see page 860) Command Syntax :MEASure:VMAX [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VMAX command installs a screen measurement and starts a maximum vertical value measurement. If the optional source parameter is specified, the current source is modified.
19 :MEASure Commands :MEASure:VMIN (see page 860) Command Syntax :MEASure:VMIN [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VMIN command installs a screen measurement and starts a minimum vertical value measurement. If the optional source parameter is specified, the current source is modified.
19 :MEASure Commands :MEASure:VPP (see page 860) Command Syntax :MEASure:VPP [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VPP command installs a screen measurement and starts a vertical peak- to- peak measurement. If the optional source parameter is specified, the current source is modified.
:MEASure Commands 19 :MEASure:VRATio (see page 860) Command Syntax :MEASure:VRATio [][,] , ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VRATio command places the instrument in the continuous measurement mode and starts a ratio measurement.
19 :MEASure Commands :MEASure:VRMS (see page 860) Command Syntax :MEASure:VRMS [][,][][,][] ::= {CYCLe | DISPlay} ::= {AC | DC} ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VRMS command installs a screen measurement and starts an RMS value measurement. If the optional source parameter is specified, the current source is modified.
:MEASure Commands 19 :MEASure:VTIMe (see page 860) Query Syntax :MEASure:VTIMe? [,] ::= time from trigger in seconds ::= { | CHANnel | FUNCtion | MATH | WMEMory} ::= DIGital for the MSO models ::= 1 to (# of analog channels) in NR1 format ::= 1-2 in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :MEASure:VTIMe? query returns the value at a specified time on the source specified wit
19 :MEASure Commands :MEASure:VTOP (see page 860) Command Syntax :MEASure:VTOP [] ::= {CHANnel | FUNCtion | MATH} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:VTOP command installs a screen measurement and starts a waveform top value measurement. NOTE Query Syntax This query is not available if the source is FFT (Fast Fourier Transform).
:MEASure Commands 19 :MEASure:WINDow (see page 860) Command Syntax :MEASure:WINDow ::= {MAIN | ZOOM | AUTO} When the zoomed time base is displayed, the :MEASure:WINDow command lets you specify the measurement window: • MAIN — the measurement window is the upper, Main window. • ZOOM — the measurement window is the lower, Zoom window. • AUTO — the measurement is attempted in the lower, Zoom window; if it cannot be made there, the upper, Main window is used.
19 :MEASure Commands :MEASure:XMAX (see page 860) Command Syntax :MEASure:XMAX [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:XMAX command installs a screen measurement and starts an X- at- Max- Y measurement on the selected window. If the optional source parameter is specified, the current source is modified. NOTE Query Syntax :MEASure:XMAX is an alias for :MEASure:TMAX.
:MEASure Commands 19 :MEASure:XMIN (see page 860) Command Syntax :MEASure:XMIN [] ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1-2 or 1-4 (# of analog channels) in NR1 format ::= 1-2 in NR1 format The :MEASure:XMIN command installs a screen measurement and starts an X- at- Min- Y measurement on the selected window. If the optional source parameter is specified, the current source is modified. NOTE Query Syntax :MEASure:XMIN is an alias for :MEASure:TMIN.
19 :MEASure Commands 384 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 20 :MTESt Commands The MTESt subsystem commands and queries control the mask test features. See "Introduction to :MTESt Commands" on page 387.
20 :MTESt Commands Table 80 :MTESt Commands Summary (continued) Command Query Options and Query Returns :MTESt:DELete (see page 401) n/a n/a :MTESt:ENABle {{0 | OFF} | {1 | ON}} (see page 402) :MTESt:ENABle? (see page 402) {0 | 1} :MTESt:LOCK {{0 | OFF} | {1 | ON}} (see page 403) :MTESt:LOCK? (see page 403) {0 | 1} :MTESt:RMODe (see page 404) :MTESt:RMODe? (see page 404) ::= {FORever | TIME | SIGMa | WAVeforms} :MTESt:RMODe:FACTion: MEASure {{0 | OFF} | {1 | ON}} (see page 40
20 :MTESt Commands Table 80 :MTESt Commands Summary (continued) Command Query Options and Query Returns :MTESt:SCALe:XDELta (see page 414) :MTESt:SCALe:XDELta? (see page 414) ::= X delta value in NR3 format :MTESt:SCALe:Y1 (see page 415) :MTESt:SCALe:Y1? (see page 415) ::= Y1 value in NR3 format :MTESt:SCALe:Y2 (see page 416) :MTESt:SCALe:Y2? (see page 416) ::= Y2 value in NR3 format :MTESt:SOURce (see page 417)
20 :MTESt Commands Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub Main() On Error GoTo VisaComError ' Create the VISA COM I/O resource. Set myMgr = New VisaComLib.ResourceManager Set myScope = New VisaComLib.FormattedIO488 Set myScope.IO = _ myMgr.Open("USB0::0x0957::0x17A6::US50210029::0::INSTR") myScope.IO.Clear ' Clear the interface. ' Make sure oscilloscope is running. myScope.WriteString ":RUN" ' Set mask test termination conditions. myScope.
:MTESt Commands 20 myScope.WriteString ":MTESt:AMASk:CREate" Debug.Print "Auto-mask created, mask test automatically enabled." ' Set up timeout variables. Dim lngTimeout As Long ' Max millisecs to wait. Dim lngElapsed As Long lngTimeout = 60000 ' 60 seconds. ' Wait until mask is created. lngElapsed = 0 Do While lngElapsed <= lngTimeout myScope.WriteString ":OPERegister:CONDition?" varQueryResult = myScope.ReadNumber ' Operation Status Condition Register MTE bit (bit 9, &H200).
20 :MTESt Commands :MTESt:ALL (see page 860) Command Syntax :MTESt:ALL ::= {{1 | ON} | {0 | OFF}} The :MTESt:ALL command specifies the channel(s) that are included in the mask test: • ON — All displayed analog channels are included in the mask test. • OFF — Just the selected source channel is included in the test. Query Syntax :MTESt:ENABle? The :MTESt:ENABle? query returns the current setting.
:MTESt Commands 20 :MTESt:AMASk:CREate (see page 860) Command Syntax :MTESt:AMASk:CREate The :MTESt:AMASk:CREate command automatically constructs a mask around the current selected channel, using the tolerance parameters defined by the :MTESt:AMASk:XDELta, :MTESt:AMASk:YDELta, and :MTESt:AMASk:UNITs commands. The mask only encompasses the portion of the waveform visible on the display, so you must ensure that the waveform is acquired and displayed consistently to obtain repeatable results.
20 :MTESt Commands :MTESt:AMASk:SOURce (see page 860) Command Syntax :MTESt:AMASk:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :MTESt:AMASk:SOURce command selects the source for the interpretation of the :MTESt:AMASk:XDELta and :MTESt:AMASk:YDELta parameters when :MTESt:AMASk:UNITs is set to CURRent.
20 :MTESt Commands :MTESt:AMASk:UNITs (see page 860) Command Syntax :MTESt:AMASk:UNITs ::= {CURRent | DIVisions} The :MTESt:AMASk:UNITs command alters the way the mask test subsystem interprets the tolerance parameters for automasking as defined by :MTESt:AMASk:XDELta and :MTESt:AMASk:YDELta commands. • CURRent — the mask test subsystem uses the units as set by the :CHANnel:UNITs command, usually time for X and voltage for Y.
20 :MTESt Commands :MTESt:AMASk:XDELta (see page 860) Command Syntax :MTESt:AMASk:XDELta ::= X delta value in NR3 format The :MTESt:AMASk:XDELta command sets the tolerance in the X direction around the waveform for the automasking feature. The absolute value of the tolerance will be added and subtracted to horizontal values of the waveform to determine the boundaries of the mask.
20 :MTESt Commands :MTESt:AMASk:YDELta (see page 860) Command Syntax :MTESt:AMASk:YDELta ::= Y delta value in NR3 format The :MTESt:AMASk:YDELta command sets the vertical tolerance around the waveform for the automasking feature. The absolute value of the tolerance will be added and subtracted to vertical values of the waveform to determine the boundaries of the mask.
20 :MTESt Commands :MTESt:COUNt:FWAVeforms (see page 860) Query Syntax :MTESt:COUNt:FWAVeforms? [CHANnel] ::= 1 to (# analog channels) in NR1 format The :MTESt:COUNt:FWAVeforms? query returns the total number of failed waveforms in the current mask test run. This count is for all regions and all waveforms. Return Format ::= number of failed waveforms in NR1 format.
:MTESt Commands 20 :MTESt:COUNt:RESet (see page 860) Command Syntax :MTESt:COUNt:RESet The :MTESt:COUNt:RESet command resets the mask statistics.
20 :MTESt Commands :MTESt:COUNt:TIME (see page 860) Query Syntax :MTESt:COUNt:TIME? The :MTESt:COUNt:TIME? query returns the elapsed time in the current mask test run. Return Format ::= elapsed seconds in NR3 format.
:MTESt Commands 20 :MTESt:COUNt:WAVeforms (see page 860) Query Syntax :MTESt:COUNt:WAVeforms? The :MTESt:COUNt:WAVeforms? query returns the total number of waveforms acquired in the current mask test run. Return Format ::= number of waveforms in NR1 format.
20 :MTESt Commands :MTESt:DATA (see page 860) Command Syntax :MTESt:DATA ::= binary block data in IEEE 488.2 # format. The :MTESt:DATA command loads a mask from binary block data. Query Syntax :MTESt:DATA? The :MTESt:DATA? query returns a mask in binary block data format. The format for the data transmission is the # format defined in the IEEE 488.2 specification. Return Format ::= binary block data in IEEE 488.
:MTESt Commands 20 :MTESt:DELete (see page 860) Command Syntax :MTESt:DELete The :MTESt:DELete command clears the currently loaded mask.
20 :MTESt Commands :MTESt:ENABle (see page 860) Command Syntax :MTESt:ENABle ::= {{1 | ON} | {0 | OFF}} The :MTESt:ENABle command enables or disables the mask test features. • ON — Enables the mask test features. • OFF — Disables the mask test features. Query Syntax :MTESt:ENABle? The :MTESt:ENABle? query returns the current state of mask test features.
:MTESt Commands 20 :MTESt:LOCK (see page 860) Command Syntax :MTESt:LOCK ::= {{1 | ON} | {0 | OFF}} The :MTESt:LOCK command enables or disables the mask lock feature: • ON — Locks a mask to the SOURce. As the vertical or horizontal scaling or position of the SOURce changes, the mask is redrawn accordingly. • OFF — The mask is static and does not move. Query Syntax :MTESt:LOCK? The :MTESt:LOCK? query returns the current mask lock setting.
20 :MTESt Commands :MTESt:RMODe (see page 860) Command Syntax :MTESt:RMODe ::= {FORever | SIGMa | TIME | WAVeforms} The :MTESt:RMODe command specifies the termination conditions for the mask test: • FORever — the mask test runs until it is turned off. • SIGMa — the mask test runs until the Sigma level is reached. This level is set by the ":MTESt:RMODe:SIGMa" on page 409 command. • TIME — the mask test runs for a fixed amount of time.
:MTESt Commands 20 :MTESt:RMODe:FACTion:MEASure (see page 860) Command Syntax :MTESt:RMODe:FACTion:MEASure ::= {{1 | ON} | {0 | OFF}} The :MTESt:RMODe:FACTion:MEASure command sets measuring only mask failures on or off. When ON, measurements and measurement statistics run only on waveforms that contain a mask violation; passing waveforms do not affect measurements and measurement statistics. This mode is not available when the acquisition mode is set to Averaging.
20 :MTESt Commands :MTESt:RMODe:FACTion:PRINt (see page 860) Command Syntax :MTESt:RMODe:FACTion:PRINt ::= {{1 | ON} | {0 | OFF}} The :MTESt:RMODe:FACTion:PRINt command sets printing on mask failures on or off. NOTE Setting :MTESt:RMODe:FACTion:PRINt ON automatically sets :MTESt:RMODe:FACTion:SAVE OFF. See Chapter 16, “:HARDcopy Commands,” starting on page 287 for more information on setting the hardcopy device and formatting options.
:MTESt Commands 20 :MTESt:RMODe:FACTion:SAVE (see page 860) Command Syntax :MTESt:RMODe:FACTion:SAVE ::= {{1 | ON} | {0 | OFF}} The :MTESt:RMODe:FACTion:SAVE command sets saving on mask failures on or off. NOTE Setting :MTESt:RMODe:FACTion:SAVE ON automatically sets :MTESt:RMODe:FACTion:PRINt OFF. See Chapter 23, “:SAVE Commands,” starting on page 433 for more information on save options.
20 :MTESt Commands :MTESt:RMODe:FACTion:STOP (see page 860) Command Syntax :MTESt:RMODe:FACTion:STOP ::= {{1 | ON} | {0 | OFF}} The :MTESt:RMODe:FACTion:STOP command sets stopping on a mask failure on or off. When this setting is ON and a mask violation is detected, the mask test is stopped and the acquisition system is stopped. Query Syntax :MTESt:RMODe:FACTion:STOP? The :MTESt:RMODe:FACTion:STOP? query returns the current mask failure stop setting.
:MTESt Commands 20 :MTESt:RMODe:SIGMa (see page 860) Command Syntax :MTESt:RMODe:SIGMa ::= from 0.1 to 9.3 in NR3 format When the :MTESt:RMODe command is set to SIGMa, the :MTESt:RMODe:SIGMa command sets the test sigma level to which a mask test runs. Test sigma is the best achievable process sigma, assuming no failures. (Process sigma is calculated using the number of failures per test.
20 :MTESt Commands :MTESt:RMODe:TIME (see page 860) Command Syntax :MTESt:RMODe:TIME ::= from 1 to 86400 in NR3 format When the :MTESt:RMODe command is set to TIME, the :MTESt:RMODe:TIME command sets the number of seconds for a mask test to run. Query Syntax :MTESt:RMODe:TIME? The :MTESt:RMODe:TIME? query returns the number of seconds currently set.
20 :MTESt Commands :MTESt:RMODe:WAVeforms (see page 860) Command Syntax :MTESt:RMODe:WAVeforms ::= number of waveforms in NR1 format from 1 to 2,000,000,000 When the :MTESt:RMODe command is set to WAVeforms, the :MTESt:RMODe:WAVeforms command sets the number of waveform acquisitions that are mask tested. Query Syntax :MTESt:RMODe:WAVeforms? The :MTESt:RMODe:WAVeforms? query returns the number of waveforms currently set.
20 :MTESt Commands :MTESt:SCALe:BIND (see page 860) Command Syntax :MTESt:SCALe:BIND ::= {{1 | ON} | {0 | OFF}} The :MTESt:SCALe:BIND command enables or disables Bind 1 & 0 Levels (Bind - 1 & 0 Levels for inverted masks) control: • ON — If the Bind 1 & 0 Levels control is enabled, the 1 Level and the 0 Level controls track each other. Adjusting either the 1 Level or the 0 Level control shifts the position of the mask up or down without changing its size.
:MTESt Commands 20 :MTESt:SCALe:X1 (see page 860) Command Syntax :MTESt:SCALe:X1 ::= X1 value in NR3 format The :MTESt:SCALe:X1 command defines where X=0 in the base coordinate system used for mask testing. The other X- coordinate is defined by the :MTESt:SCALe:XDELta command.
20 :MTESt Commands :MTESt:SCALe:XDELta (see page 860) Command Syntax :MTESt:SCALe:XDELta ::= X delta value in NR3 format The :MTESt:SCALe:XDELta command defines the position of the X2 marker with respect to the X1 marker. In the mask test coordinate system, the X1 marker defines where X=0; thus, the X2 marker defines where X=1.
:MTESt Commands 20 :MTESt:SCALe:Y1 (see page 860) Command Syntax :MTESt:SCALe:Y1 ::= Y1 value in NR3 format The :MTESt:SCALe:Y1 command defines where Y=0 in the coordinate system for mask testing. All Y values of vertices in the coordinate system are defined with respect to the boundaries set by SCALe:Y1 and SCALe:Y2 according to the equation: Y = (Y * (Y2 - Y1)) + Y1 Thus, if you set Y1 to 100 mV, and Y2 to 1 V, a Y value of 0.100 in a vertex is at 190 mV.
20 :MTESt Commands :MTESt:SCALe:Y2 (see page 860) Command Syntax :MTESt:SCALe:Y2 ::= Y2 value in NR3 format The :MTESt:SCALe:Y2 command defines the Y2 marker in the coordinate system for mask testing. All Y values of vertices in the coordinate system are defined with respect to the boundaries defined by SCALe:Y1 and SCALe:Y2 according to the following equation: Y = (Y * (Y2 - Y1)) + Y1 Thus, if you set Y1 to 100 mV, and Y2 to 1 V, a Y value of 0.100 in a vertex is at 190 mV.
:MTESt Commands 20 :MTESt:SOURce (see page 860) Command Syntax :MTESt:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :MTESt:SOURce command selects the channel which is configured by the commands contained in a mask file when it is loaded. Query Syntax :MTESt:SOURce? The :MTESt:SOURce? query returns the channel which is configured by the commands contained in the current mask file.
20 :MTESt Commands :MTESt:TITLe (see page 860) Query Syntax :MTESt:TITLe? The :MTESt:TITLe? query returns the mask title which is a string of up to 128 characters. The title is displayed in the mask test dialog box and mask test tab when a mask file is loaded. Return Format
::= a string of up to 128 ASCII characters.Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 21 :POD Commands Control all oscilloscope functions associated with groups of digital channels. See "Introduction to :POD Commands" on page 419.
21 :POD Commands :POD1:DISP 0;THR +1.
:POD Commands 21 :POD:DISPlay (see page 860) Command Syntax :POD:DISPlay ::= {{1 | ON} | {0 | OFF}} ::= An integer, 1 or 2, is attached as a suffix to the command and defines the group of channels that are affected by the command. POD1 ::= D0-D7 POD2 ::= D8-D15 The :POD:DISPlay command turns displaying of the specified group of channels on or off. NOTE Query Syntax This command is only valid for the MSO models.
21 :POD Commands :POD:SIZE (see page 860) Command Syntax :POD:SIZE ::= An integer, 1 or 2, is attached as a suffix to the command and defines the group of channels that are affected by the command. POD1 ::= D0-D7 POD2 ::= D8-D15 ::= {SMALl | MEDium | LARGe} The :POD:SIZE command specifies the size of digital channels on the display. Sizes are set for all pods. Therefore, if you set the size on pod 1 (for example), the same size is set on pod 2 as well.
:POD Commands 21 :POD:THReshold (see page 860) Command Syntax :POD:THReshold [] ::= An integer, 1 or 2, is attached as a suffix to the command and defines the group of channels that are affected by the command. ::= {CMOS | ECL | TTL | } ::= -8.00 to +8.00 in NR3 format ::= {V | mV | uV} POD1 ::= D0-D7 POD2 ::= D8-D15 TTL ::= 1.4V CMOS ::= 2.5V ECL ::= -1.
21 :POD Commands ' Set channels 0-7 to CMOS threshold. myScope.WriteString ":POD1:THRESHOLD CMOS" ' Set channels 8-15 to 2.0 volts. myScope.WriteString ":POD2:THRESHOLD 2.0" ' Set external channel to TTL threshold (short form). myScope.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 22 :RECall Commands Recall previously saved oscilloscope setups, reference waveforms, and masks.
22 :RECall Commands Return Format The following is a sample response from the :RECall? query. In this case, the query was issued following the *RST command.
:RECall Commands 22 :RECall:FILename (see page 860) Command Syntax :RECall:FILename ::= quoted ASCII string The :RECall:FILename command specifies the source for any RECall operations. NOTE Query Syntax This command specifies a file's base name only, without path information or an extension. :RECall:FILename? The :RECall:FILename? query returns the current RECall filename.
22 :RECall Commands :RECall:MASK[:STARt] (see page 860) Command Syntax :RECall:MASK[:STARt] [] ::= { | } ::= 0-3; an integer in NR1 format ::= quoted ASCII string The :RECall:MASK[:STARt] command recalls a mask. NOTE See Also If a file extension is provided as part of a specified , it must be ".msk".
22 :RECall Commands :RECall:PWD (see page 860) Command Syntax :RECall:PWD ::= quoted ASCII string The :RECall:PWD command sets the present working directory for recall operations. Query Syntax :RECall:PWD? The :RECall:PWD? query returns the currently set working directory for recall operations.
22 :RECall Commands :RECall:SETup[:STARt] (see page 860) Command Syntax :RECall:SETup[:STARt] [] ::= { | } ::= 0-9; an integer in NR1 format ::= quoted ASCII string The :RECall:SETup[:STARt] command recalls an oscilloscope setup. NOTE See Also If a file extension is provided as part of a specified , it must be ".scp".
:RECall Commands 22 :RECall:WMEMory[:STARt] (see page 860) Command Syntax :RECall:WMEMory[:STARt] [] ::= 1-2 in NR1 format ::= quoted ASCII string The :RECall:WMEMory[:STARt] command recalls a reference waveform. NOTE See Also If a file extension is provided as part of a specified , it must be ".h5".
22 :RECall Commands 432 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 23 :SAVE Commands Save oscilloscope setups, screen images, and data. See "Introduction to :SAVE Commands" on page 434.
23 :SAVE Commands Table 83 :SAVE Commands Summary (continued) Command Query Options and Query Returns :SAVE:SETup[:STARt] [] (see page 445) n/a ::= { | } ::= 0-9; an integer in NR1 format ::= quoted ASCII string :SAVE:WAVeform[:STARt ] [] (see page 446) n/a ::= quoted ASCII string :SAVE:WAVeform:FORMat (see page 447) :SAVE:WAVeform:FORMat ? (see page 447) ::= {ALB | ASCiixy | CSV |
23 :SAVE Commands The following is a sample response from the :SAVE? query. In this case, the query was issued following the *RST command.
23 :SAVE Commands :SAVE:FILename (see page 860) Command Syntax :SAVE:FILename ::= quoted ASCII string The :SAVE:FILename command specifies the source for any SAVE operations. NOTE Query Syntax This command specifies a file's base name only, without path information or an extension. :SAVE:FILename? The :SAVE:FILename? query returns the current SAVE filename.
:SAVE Commands 23 :SAVE:IMAGe[:STARt] (see page 860) Command Syntax :SAVE:IMAGe[:STARt] [] ::= quoted ASCII string The :SAVE:IMAGe[:STARt] command saves an image. NOTE Be sure to set the :SAVE:IMAGe:FORMat before saving an image. If the format is NONE, the save image command will not succeed.
23 :SAVE Commands :SAVE:IMAGe:FACTors (see page 860) Command Syntax :SAVE:IMAGe:FACTors ::= {{OFF | 0} | {ON | 1}} The :SAVE:IMAGe:FACTors command controls whether the oscilloscope factors are output along with the image. NOTE Query Syntax Factors are written to a separate file with the same path and base name but with the ".txt" extension. :SAVE:IMAGe:FACTors? The :SAVE:IMAGe:FACTors? query returns a flag indicating whether oscilloscope factors are output along with the image.
:SAVE Commands 23 :SAVE:IMAGe:FORMat (see page 860) Command Syntax :SAVE:IMAGe:FORMat ::= {{BMP | BMP24bit} | BMP8bit | PNG} The :SAVE:IMAGe:FORMat command sets the image format type. Query Syntax :SAVE:IMAGe:FORMat? The :SAVE:IMAGe:FORMat? query returns the selected image format type. Return Format ::= {BMP | BMP8 | PNG | NONE} When NONE is returned, it indicates that a waveform data file format is currently selected.
23 :SAVE Commands :SAVE:IMAGe:INKSaver (see page 860) Command Syntax :SAVE:IMAGe:INKSaver ::= {{OFF | 0} | {ON | 1}} The :SAVE:IMAGe:INKSaver command controls whether the graticule colors are inverted or not. Query Syntax :SAVE:IMAGe:INKSaver? The :SAVE:IMAGe:INKSaver? query returns a flag indicating whether graticule colors are inverted or not.
:SAVE Commands 23 :SAVE:IMAGe:PALette (see page 860) Command Syntax :SAVE:IMAGe:PALette ::= {COLor | GRAYscale} The :SAVE:IMAGe:PALette command sets the image palette color. Query Syntax :SAVE:IMAGe:PALette? The :SAVE:IMAGe:PALette? query returns the selected image palette color.
23 :SAVE Commands :SAVE:LISTer[:STARt] (see page 860) Command Syntax :SAVE:LISTer[:STARt] [] ::= quoted ASCII string The :SAVE:LISTer[:STARt] command saves the Lister display data to a file. NOTE See Also If a file extension is provided as part of a specified , it must be ".csv".
:SAVE Commands 23 :SAVE:MASK[:STARt] (see page 860) Command Syntax :SAVE:MASK[:STARt] [] ::= { | } ::= 0-3; an integer in NR1 format ::= quoted ASCII string The :SAVE:MASK[:STARt] command saves a mask. NOTE See Also If a file extension is provided as part of a specified , it must be ".msk".
23 :SAVE Commands :SAVE:PWD (see page 860) Command Syntax :SAVE:PWD ::= quoted ASCII string The :SAVE:PWD command sets the present working directory for save operations. Query Syntax :SAVE:PWD? The :SAVE:PWD? query returns the currently set working directory for save operations.
:SAVE Commands 23 :SAVE:SETup[:STARt] (see page 860) Command Syntax :SAVE:SETup[:STARt] [] ::= { | } ::= 0-9; an integer in NR1 format ::= quoted ASCII string The :SAVE:SETup[:STARt] command saves an oscilloscope setup. NOTE See Also If a file extension is provided as part of a specified , it must be ".scp".
23 :SAVE Commands :SAVE:WAVeform[:STARt] (see page 860) Command Syntax :SAVE:WAVeform[:STARt] [] ::= quoted ASCII string The :SAVE:WAVeform[:STARt] command saves oscilloscope waveform data to a file. NOTE Be sure to set the :SAVE:WAVeform:FORMat before saving waveform data. If the format is NONE, the save waveform command will not succeed.
23 :SAVE Commands :SAVE:WAVeform:FORMat (see page 860) Command Syntax :SAVE:WAVeform:FORMat ::= {ALB | ASCiixy | CSV | BINary} The :SAVE:WAVeform:FORMat command sets the waveform data format type: • ALB — creates an Agilent module binary format file. These files can be viewed offline by the Agilent Logic Analyzer application software. The proper file extension for this format is ".alb".
23 :SAVE Commands :SAVE:WAVeform:LENGth (see page 860) Command Syntax :SAVE:WAVeform:LENGth ::= 100 to max. length; an integer in NR1 format The :SAVE:WAVeform:LENGth command sets the waveform data length (that is, the number of points saved). Query Syntax :SAVE:WAVeform:LENGth? The :SAVE:WAVeform:LENGth? query returns the specified waveform data length. Return Format ::= 100 to max.
:SAVE Commands 23 :SAVE:WAVeform:SEGMented (see page 860) Command Syntax :SAVE:WAVeform:SEGMented
23 :SAVE Commands :SAVE:WMEMory:SOURce (see page 860) Command Syntax :SAVE:WMEMory:SOURce ::= {CHANnel | FUNCtion | MATH | WMEMory} ::= 1 to (# analog channels) in NR1 format ::= {1 | 2} The :SAVE:WMEMory:SOURce command selects the source to be saved as a reference waveform file. NOTE Only ADD or SUBtract math operations can be saved as reference waveforms. NOTE MATH is an alias for FUNCtion. The query will return FUNC if the source is FUNCtion or MATH.
:SAVE Commands 23 :SAVE:WMEMory[:STARt] (see page 860) Command Syntax :SAVE:WMEMory[:STARt] [] ::= quoted ASCII string The :SAVE:WMEMory[:STARt] command saves oscilloscope waveform data to a reference waveform file. NOTE See Also If a file extension is provided as part of a specified , it must be ".h5".
23 :SAVE Commands 452 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 24 :SBUS Commands Control the modes and parameters for each serial bus decode/trigger type.
24 :SBUS Commands • LIN (Local Interconnect Network) triggering— will trigger on LIN sync break at the beginning of a message frame.You can trigger on Sync Break, Frame IDs, or Frame IDs and Data. • SPI (Serial Peripheral Interface) triggering— consists of connecting the oscilloscope to a clock, data (MOSI or MISO), and framing signal. You can then trigger on a data pattern during a specific framing period. The serial data string can be specified to be from 4 to 64 bits long.
24 :SBUS Commands General :SBUS Commands Table 84 General :SBUS Commands Summary Command Query Options and Query Returns :SBUS:DISPlay {{0 | OFF} | {1 | ON}} (see page 456) :SBUS:DISPlay? (see page 456) {0 | 1} :SBUS:MODE (see page 457) :SBUS:MODE? (see page 457) ::= {CAN | I2S | IIC | LIN | SPI | UART} Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 455
24 :SBUS Commands :SBUS:DISPlay (see page 860) Command Syntax :SBUS:DISPlay ::= {{1 | ON} | {0 | OFF}} The :SBUS:DISPlay command turns displaying of the serial decode bus on or off. NOTE This command is only valid when a serial decode option has been licensed. NOTE Two I2S buses or two SPI buses cannot be decoded on both SBUS1 and SBUS2 at the same time.
24 :SBUS Commands :SBUS:MODE (see page 860) Command Syntax :SBUS:MODE ::= {CAN | I2S | IIC | LIN | SPI | UART} The :SBUS:MODE command determines the decode mode for the serial bus. NOTE Query Syntax This command is only valid when a serial decode option has been licensed. :SBUS:MODE? The :SBUS:MODE? query returns the current serial bus decode mode setting.
24 :SBUS Commands :SBUS:CAN Commands NOTE These commands are valid on when the automotive CAN and LIN serial decode option (Option AMS) has been licensed.
24 :SBUS Commands Table 85 :SBUS:CAN Commands Summary (continued) Command Query Options and Query Returns :SBUS:CAN:TRIGger: PATTern:DATA (see page 471) :SBUS:CAN:TRIGger: PATTern:DATA? (see page 471) ::= "nn...n" where n ::= {0 | 1 | X | $}
24 :SBUS Commands :SBUS:CAN:COUNt:ERRor (see page 860) Query Syntax :SBUS:CAN:COUNt:ERRor? Returns the error frame count.
:SBUS Commands 24 :SBUS:CAN:COUNt:OVERload (see page 860) Query Syntax :SBUS:CAN:COUNt:OVERload? Returns the overload frame count.
24 :SBUS Commands :SBUS:CAN:COUNt:RESet (see page 860) Command Syntax :SBUS:CAN:COUNt:RESet Resets the frame counters.
:SBUS Commands 24 :SBUS:CAN:COUNt:TOTal (see page 860) Query Syntax :SBUS:CAN:COUNt:TOTal? Returns the total frame count.
24 :SBUS Commands :SBUS:CAN:COUNt:UTILization (see page 860) Query Syntax :SBUS:CAN:COUNt:UTILization? Returns the percent utilization.
24 :SBUS Commands :SBUS:CAN:SAMPlepoint (see page 860) Command Syntax :SBUS:CAN:SAMPlepoint ::= {60 | 62.5 | 68 | 70 | 75 | 80 | 87.5} in NR3 format The :SBUS:CAN:SAMPlepoint command sets the point during the bit time where the bit level is sampled to determine whether the bit is dominant or recessive. The sample point represents the percentage of time between the beginning of the bit time to the end of the bit time.
24 :SBUS Commands :SBUS:CAN:SIGNal:BAUDrate (see page 860) Command Syntax :SBUS:CAN:SIGNal:BAUDrate ::= integer from 10000 to 1000000 in 100 b/s increments The :SBUS:CAN:SIGNal:BAUDrate command sets the standard baud rate of the CAN signal from 10 kb/s to 1 Mb/s in 100 b/s increments. If you enter a baud rate that is not divisible by 100 b/s, the baud rate is set to the nearest baud rate divisible by 100 b/s.
24 :SBUS Commands :SBUS:CAN:SIGNal:DEFinition (see page 860) Command Syntax :SBUS:CAN:SIGNal:DEFinition ::= {CANH | CANL | RX | TX | DIFFerential | DIFL | DIFH} The :SBUS:CAN:SIGNal:DEFinition command sets the CAN signal type when :SBUS:CAN:SBUS is set to SOF (start of frame). These signals can be set to: Dominant high signals: • CANH — the actual CAN_H differential bus signal.
24 :SBUS Commands :SBUS:CAN:SOURce (see page 860) Command Syntax :SBUS:CAN:SOURce ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:CAN:SOURce command sets the source for the CAN signal. Query Syntax :SBUS:CAN:SOURce? The :SBUS:CAN:SOURce? query returns the current source for the CAN signal.
:SBUS Commands 24 :SBUS:CAN:TRIGger (see page 860) Command Syntax :SBUS:CAN:TRIGger ::= {SOF | DATA | ERRor | IDData | IDEither | IDRemote | ALLerrors | OVERload | ACKerror} The :SBUS:CAN:TRIGger command sets the CAN trigger on condition: • SOF - will trigger on the Start of Frame (SOF) bit of a Data frame, Remote Transfer Request (RTR) frame, or an Overload frame.
24 :SBUS Commands CAN Id specification is set by the :SBUS:CAN:TRIGger:PATTern:ID and:SBUS:CAN:TRIGger:PATTern:ID:MODE commands. CAN Data specification is set by the :SBUS:CAN:TRIGger:PATTern:DATA command. CAN Data Length Code is set by the :SBUS:CAN:TRIGger:PATTern:DATA:LENGth command. Query Syntax :SBUS:CAN:TRIGger? The :SBUS:CAN:TRIGger? query returns the current CAN trigger on condition.
24 :SBUS Commands :SBUS:CAN:TRIGger:PATTern:DATA (see page 860) Command Syntax :SBUS:CAN:TRIGger:PATTern:DATA ::= "nn...n" where n ::= {0 | 1 | X | $} :CAN:TRIGger:PATTern:DATA command defines the CAN data pattern resource according to the string parameter.
24 :SBUS Commands :SBUS:CAN:TRIGger:PATTern:DATA:LENGth (see page 860) Command Syntax :SBUS:CAN:TRIGger:PATTern:DATA:LENGth ::= integer from 1 to 8 in NR1 format The :SBUS:CAN:TRIGger:PATTern:DATA:LENGth command sets the number of 8- bit bytes in the CAN data string. The number of bytes in the string can be anywhere from 1 bytes to 8 bytes (64 bits). The value for these bytes is set by the :SBUS:CAN:TRIGger:PATTern:DATA command.
:SBUS Commands 24 :SBUS:CAN:TRIGger:PATTern:ID (see page 860) Command Syntax :SBUS:CAN:TRIGger:PATTern:ID ::= "nn...n" where n ::= {0 | 1 | X | $} :CAN:TRIGger:PATTern:ID command defines the CAN identifier pattern resource according to the string parameter.
24 :SBUS Commands :SBUS:CAN:TRIGger:PATTern:ID:MODE (see page 860) Command Syntax :SBUS:CAN:TRIGger:PATTern:ID:MODE ::= {STANdard | EXTended} The :SBUS:CAN:TRIGger:PATTern:ID:MODE command sets the CAN identifier mode. STANdard selects the standard 11- bit identifier. EXTended selects the extended 29- bit identifier. The CAN identifier is set by the :SBUS:CAN:TRIGger:PATTern:ID command.
24 :SBUS Commands :SBUS:I2S Commands NOTE These commands are only valid when the I2S serial decode option (Option SND) has been licensed.
24 :SBUS Commands Table 86 :SBUS:I2S Commands Summary (continued) Command Query Options and Query Returns :SBUS:I2S:TRIGger (see page 484) :SBUS:I2S:TRIGger? (see page 484) ::= {EQUal | NOTequal | LESSthan | GREaterthan | INRange | OUTRange | INCReasing | DECReasing} :SBUS:I2S:TRIGger: AUDio (see page 486) :SBUS:I2S:TRIGger: AUDio? (see page 486) ::= {RIGHt | LEFT | EITHer} :SBUS:I2S:TRIGger: PATTern:DATA (see page 487) :SB
:SBUS Commands 24 :SBUS:I2S:ALIGnment (see page 860) Command Syntax :SBUS:I2S:ALIGnment ::= {I2S | LJ | RJ} The :SBUS:I2S:ALIGnment command selects the data alignment of the I2S bus for the serial decoder and/or trigger when in I2S mode: • I2S — standard. • LJ — left justified. • RJ — right justified. Note that the word select (WS) polarity is specified separately with the :SBUS:I2S:WSLow command.
24 :SBUS Commands :SBUS:I2S:BASE (see page 860) Command Syntax :SBUS:I2S:BASE ::= {DECimal | HEX} The :SBUS:I2S:BASE command determines the base to use for the I2S decode display. Query Syntax :SBUS:I2S:BASE? The :SBUS:I2S:BASE? query returns the current I2S display decode base.
:SBUS Commands 24 :SBUS:I2S:CLOCk:SLOPe (see page 860) Command Syntax :SBUS:I2S:CLOCk:SLOPe ::= {NEGative | POSitive} The :SBUS:I2S:CLOCk:SLOPe command specifies which edge of the I2S serial clock signal clocks in data. • NEGative — Falling edge. • POSitive — Rising edge. Query Syntax :SBUS:I2S:CLOCk:SLOPe? The :SBUS:I2S:CLOCk:SLOPe? query returns the current I2S clock slope setting.
24 :SBUS Commands :SBUS:I2S:RWIDth (see page 860) Command Syntax :SBUS:I2S:RWIDth ::= 4-32 in NR1 format The :SBUS:I2S:RWIDth command sets the width of the receiver (decoded) data word in I2S anywhere from 4 bits to 32 bits. Query Syntax :SBUS:I2S:RWIDth? The :SBUS:I2S:RWIDth? query returns the currently set I2S receiver data word width.
24 :SBUS Commands :SBUS:I2S:SOURce:CLOCk (see page 860) Command Syntax :SBUS:I2S:SOURce:CLOCk ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:I2S:SOURce:CLOCk controls which signal is used as the serial clock (SCLK) source by the serial decoder and/or trigger when in I2S mode.
24 :SBUS Commands :SBUS:I2S:SOURce:DATA (see page 860) Command Syntax :SBUS:I2S:SOURce:DATA ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:I2S:SOURce:DATA command controls which signal is used as the serial data (SDATA) source by the serial decoder and/or trigger when in I2S mode.
:SBUS Commands 24 :SBUS:I2S:SOURce:WSELect (see page 860) Command Syntax :SBUS:I2S:SOURce:WSELect ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:I2S:SOURce:WSELect command controls which signal is used as the word select (WS) source by the serial decoder and/or trigger when in I2S mode.
24 :SBUS Commands :SBUS:I2S:TRIGger (see page 860) Command Syntax :SBUS:I2S:TRIGger ::= {EQUal | NOTequal | LESSthan | GREaterthan | INRange | OUTRange | INCReasing | DECReasing} The :SBUS:I2S:TRIGger command sets the I2S trigger operator: • EQUal— triggers on the specified audio channel's data word when it equals the specified word. • NOTequal — triggers on any word other than the specified word.
:SBUS Commands See Also 24 • "Introduction to :TRIGger Commands" on page 641 • ":SBUS:I2S:TRIGger:AUDio" on page 486 • ":SBUS:I2S:TRIGger:RANGe" on page 490 • ":SBUS:I2S:TRIGger:PATTern:FORMat" on page 489 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 485
24 :SBUS Commands :SBUS:I2S:TRIGger:AUDio (see page 860) Command Syntax :SBUS:I2S:TRIGger:AUDio ::= {RIGHt | LEFT | EITHer} The :SBUS:I2S:TRIGger:AUDio command specifies the audio channel to trigger on: • RIGHt — right channel. • LEFT— left channel. • EITHer — right or left channel. Query Syntax :SBUS:I2S:TRIGger:AUDio? The :SBUS:I2S:TRIGger:AUDio? query returns the current audio channel for the I2S trigger.
24 :SBUS Commands :SBUS:I2S:TRIGger:PATTern:DATA (see page 860) Command Syntax :SBUS:I2S:TRIGger:PATTern:DATA ::= "n" where n ::= 32-bit integer in signed decimal when = DECimal ::= "nn...n" where n ::= {0 | 1 | X | $} when = BINary ::= "0xnn...n" where n ::= {0,..,9 | A,..,F | X | $} when = HEX NOTE is specified with the :SBUS:I2S:TRIGger:PATTern:FORMat command. The default is DECimal.
24 :SBUS Commands NOTE Query Syntax If more bits are sent for than the specified trigger data length, the most significant bits will be truncated. If the word size is changed after the is programmed, the added or deleted bits will be added to or deleted from the least significant bits. :SBUS:I2S:TRIGger:PATTern:DATA? The :SBUS:I2S:TRIGger:PATTern:DATA? query returns the currently specified I2S trigger data pattern.
24 :SBUS Commands :SBUS:I2S:TRIGger:PATTern:FORMat (see page 860) Command Syntax :SBUS:I2S:TRIGger:PATTern:FORMat ::= {BINary | HEX | DECimal} The :SBUS:I2S:TRIGger:PATTern:FORMat command sets the entry (and query) number base used by the :SBUS:I2S:TRIGger:PATTern:DATA command. The default is DECimal. Query Syntax :SBUS:I2S:TRIGger:PATTern:FORMat? The :SBUS:I2S:TRIGger:PATTern:FORMat? query returns the currently set number base for I2S pattern data.
24 :SBUS Commands :SBUS:I2S:TRIGger:RANGe (see page 860) Command Syntax :SBUS:I2S:TRIGger:RANGe , ::= 32-bit integer in signed decimal, or ::= 32-bit integer in signed decimal, , or ::= #Hnn...n where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...n where n ::= {0 | 1} for binary ::= "0xnn...n" where n ::= {0,..,9 | A,..
:SBUS Commands 24 • ":SBUS:I2S:TRIGger" on page 484 • ":SBUS:I2S:RWIDth" on page 480 • ":SBUS:I2S:TWIDth" on page 492 • ":SBUS:I2S:WSLow" on page 493 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 491
24 :SBUS Commands :SBUS:I2S:TWIDth (see page 860) Command Syntax :SBUS:I2S:TWIDth ::= 4-32 in NR1 format The :SBUS:I2S:TWIDth command sets the width of the transmitted data word in I2S anywhere from 4 bits to 32 bits. Query Syntax :SBUS:I2S:TWIDth? The :SBUS:I2S:TWIDth? query returns the currently set I2S transmitted data word width.
24 :SBUS Commands :SBUS:I2S:WSLow (see page 860) Command Syntax :SBUS:I2S:WSLow ::= {LEFT | RIGHt} The :SBUS:I2S:WSLow command selects the polarity of the word select (WS) signal: • LEFT— a word select (WS) state of low indicates left channel data is active on the I2S bus, and a WS state of high indicates right channel data is active on the bus.
24 :SBUS Commands :SBUS:IIC Commands NOTE These commands are only valid when the low-speed IIC and SPI serial decode option (Option LSS) has been licensed.
:SBUS Commands 24 :SBUS:IIC:ASIZe (see page 860) Command Syntax :SBUS:IIC:ASIZe ::= {BIT7 | BIT8} The :SBUS:IIC:ASIZe command determines whether the Read/Write bit is included as the LSB in the display of the IIC address field of the decode bus. Query Syntax :SBUS:IIC:ASIZe? The :SBUS:IIC:ASIZe? query returns the current IIC address width setting.
24 :SBUS Commands :SBUS:IIC[:SOURce]:CLOCk (see page 860) Command Syntax :SBUS:IIC:[SOURce:]CLOCk ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:IIC:[SOURce:]CLOCk command sets the source for the IIC serial clock (SCL).
:SBUS Commands 24 :SBUS:IIC[:SOURce]:DATA (see page 860) Command Syntax :SBUS:IIC:[SOURce:]DATA ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:IIC:[SOURce:]DATA command sets the source for IIC serial data (SDA).
24 :SBUS Commands :SBUS:IIC:TRIGger:PATTern:ADDRess (see page 860) Command Syntax :SBUS:IIC:TRIGger:PATTern:ADDRess ::= integer or ::= "0xnn" where n ::= {0,..,9 | A,..,F} The :SBUS:IIC:TRIGger:PATTern:ADDRess command sets the address for IIC data.The address can range from 0x00 to 0x7F (7- bit) or 0x3FF (10- bit) hexadecimal. Use the don't care address (- 1 or 0xFFFFFFFF) to ignore the address value.
:SBUS Commands 24 :SBUS:IIC:TRIGger:PATTern:DATA (see page 860) Command Syntax :SBUS:IIC:TRIGger:PATTern:DATA ::= integer or ::= "0xnn" where n ::= {0,..,9 | A,..,F} The :SBUS:IIC:TRIGger:PATTern:DATA command sets IIC data. The data value can range from 0x00 to 0x0FF (hexadecimal). Use the don't care data pattern (- 1 or 0xFFFFFFFF) to ignore the data value.
24 :SBUS Commands :SBUS:IIC:TRIGger:PATTern:DATa2 (see page 860) Command Syntax :SBUS:IIC:TRIGger:PATTern:DATa2 ::= integer or ::= "0xnn" where n ::= {0,..,9 | A,..,F} The :SBUS:IIC:TRIGger:PATTern:DATa2 command sets IIC data 2. The data value can range from 0x00 to 0x0FF (hexadecimal). Use the don't care data pattern (- 1 or 0xFFFFFFFF) to ignore the data value.
24 :SBUS Commands :SBUS:IIC:TRIGger:QUALifier (see page 860) Command Syntax :SBUS:IIC:TRIGger:QUALifier ::= {EQUal | NOTequal | LESSthan | GREaterthan} The :SBUS:IIC:TRIGger:QUALifier command sets the IIC data qualifier when TRIGger:IIC:TRIGger[:TYPE] is set to READEprom. Query Syntax :SBUS:IIC:TRIGger:QUALifier? The :SBUS:IIC:TRIGger:QUALifier? query returns the current IIC data qualifier value.
24 :SBUS Commands :SBUS:IIC:TRIGger[:TYPE] (see page 860) Command Syntax :SBUS:IIC:TRIGger[:TYPE] ::= {STARt | STOP | READ7 | READEprom | WRITe7 | WRITe10 | NACKnowledge | ANACk | R7Data2 | W7Data2 | RESTart} The :SBUS:IIC:TRIGger[:TYPE] command sets the IIC trigger type: • STARt — Start condition. • STOP — Stop condition. • READ7 — 7- bit address frame containing (Start:Address7:Read:Ack:Data). The value READ is also accepted for READ7.
:SBUS Commands 24 • ":SBUS:IIC:TRIGger:PATTern:ADDRess" on page 498 • ":SBUS:IIC:TRIGger:PATTern:DATA" on page 499 • ":SBUS:IIC:TRIGger:PATTern:DATa2" on page 500 • ":SBUS:IIC:TRIGger:QUALifier" on page 501 • "Long Form to Short Form Truncation Rules" on page 862 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 503
24 :SBUS Commands :SBUS:LIN Commands NOTE These commands are valid on when the automotive CAN and LIN serial decode option (Option AMS) has been licensed. Table 88 :SBUS:LIN Commands Summary Command Query Options and Query Returns :SBUS:LIN:PARity {{0 | OFF} | {1 | ON}} (see page 506) :SBUS:LIN:PARity? (see page 506) {0 | 1} :SBUS:LIN:SAMPlepo int (see page 507) :SBUS:LIN:SAMPlepo int? (see page 507) ::= {60 | 62.5 | 68 | 70 | 75 | 80 | 87.
24 :SBUS Commands Table 88 :SBUS:LIN Commands Summary (continued) Command Query Options and Query Returns :SBUS:LIN:TRIGger: PATTern:DATA (see page 514) :SBUS:LIN:TRIGger: PATTern:DATA? (see page 514) ::= "n" where n ::= 32-bit integer in signed decimal when = DECimal ::= "nn...n" where n ::= {0 | 1 | X | $} when = BINary ::= "0xnn...n" where n ::= {0,..,9 | A,..
24 :SBUS Commands :SBUS:LIN:PARity (see page 860) Command Syntax :SBUS:LIN:PARity ::= {{1 | ON} | {0 | OFF}} The :SBUS:LIN:PARity command determines whether the parity bits are included as the most significant bits (MSB) in the display of the Frame Id field in the LIN decode bus. Query Syntax :SBUS:LIN:PARity? The :SBUS:LIN:PARity? query returns the current LIN parity bits display setting of the serial decode bus.
:SBUS Commands 24 :SBUS:LIN:SAMPlepoint (see page 860) Command Syntax :SBUS:LIN:SAMPlepoint ::= {60 | 62.5 | 68 | 70 | 75 | 80 | 87.5} in NR3 format The :SBUS:LIN:SAMPlepoint command sets the point during the bit time where the bit level is sampled to determine whether the bit is dominant or recessive. The sample point represents the percentage of time between the beginning of the bit time to the end of the bit time.
24 :SBUS Commands :SBUS:LIN:SIGNal:BAUDrate (see page 860) Command Syntax :SBUS:LIN:SIGNal:BAUDrate ::= integer from 2400 to 625000 in 100 b/s increments The :SBUS:LIN:SIGNal:BAUDrate command sets the standard baud rate of the LIN signal from 2400 b/s to 625 kb/s in 100 b/s increments. If you enter a baud rate that is not divisible by 100 b/s, the baud rate is set to the nearest baud rate divisible by 100 b/s.
:SBUS Commands 24 :SBUS:LIN:SOURce (see page 860) Command Syntax :SBUS:LIN:SOURce ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:LIN:SOURce command sets the source for the LIN signal. Query Syntax :SBUS:LIN:SOURce? The :SBUS:LIN:SOURce? query returns the current source for the LIN signal.
24 :SBUS Commands :SBUS:LIN:STANdard (see page 860) Command Syntax :SBUS:LIN:STANdard ::= {LIN13 | LIN20} The :SBUS:LIN:STANdard command sets the LIN standard in effect for triggering and decoding to be LIN1.3 or LIN2.0. Query Syntax :SBUS:LIN:STANdard? The :SBUS:LIN:STANdard? query returns the current LIN standard setting.
:SBUS Commands 24 :SBUS:LIN:SYNCbreak (see page 860) Command Syntax :SBUS:LIN:SYNCbreak ::= integer = {11 | 12 | 13} The :SBUS:LIN:SYNCbreak command sets the length of the LIN sync break to be greater than or equal to 11, 12, or 13 clock lengths. The sync break is the idle period in the bus activity at the beginning of each packet that distinguishes one information packet from the previous one.
24 :SBUS Commands :SBUS:LIN:TRIGger (see page 860) Command Syntax :SBUS:LIN:TRIGger ::= {SYNCbreak | ID | DATA} The :SBUS:LIN:TRIGger command sets the LIN trigger condition to be: • SYNCbreak — Sync Break. • ID — Frame ID. Use the :SBUS:LIN:ID command to specify the frame ID. • DATA — Frame ID and Data. Use the :SBUS:LIN:ID command to specify the frame ID.
:SBUS Commands 24 :SBUS:LIN:TRIGger:ID (see page 860) Command Syntax :SBUS:LIN:TRIGger:ID ::= 7-bit integer in decimal, , or from 0-63 or 0x00-0x3f ::= #Hnn where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...n where n ::= {0 | 1} for binary ::= "0xnn" where n ::= {0,..,9 | A,..
24 :SBUS Commands :SBUS:LIN:TRIGger:PATTern:DATA (see page 860) Command Syntax :SBUS:LIN:TRIGger:PATTern:DATA ::= "n" where n ::= 32-bit integer in signed decimal when = DECimal ::= "nn...n" where n ::= {0 | 1 | X | $} when = BINary ::= "0xnn...n" where n ::= {0,..,9 | A,..,F | X | $} when = HEX NOTE is specified with the :SBUS:LIN:TRIGger:PATTern:FORMat command. The default is BINary.
:SBUS Commands See Also 24 • "Introduction to :TRIGger Commands" on page 641 • ":SBUS:LIN:TRIGger:PATTern:FORMat" on page 517 • ":SBUS:LIN:TRIGger" on page 512 • ":SBUS:LIN:TRIGger:PATTern:DATA:LENGth" on page 516 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 515
24 :SBUS Commands :SBUS:LIN:TRIGger:PATTern:DATA:LENGth (see page 860) Command Syntax :SBUS:LIN:TRIGger:PATTern:DATA:LENGth ::= integer from 1 to 8 in NR1 format The :SBUS:LIN:TRIGger:PATTern:DATA:LENGth command sets the number of 8- bit bytes in the LIN data string. The number of bytes in the string can be anywhere from 1 bytes to 8 bytes (64 bits). The value for these bytes is set by the :SBUS:LIN:TRIGger:PATTern:DATA command.
:SBUS Commands 24 :SBUS:LIN:TRIGger:PATTern:FORMat (see page 860) Command Syntax :SBUS:LIN:TRIGger:PATTern:FORMat ::= {BINary | HEX | DECimal} The :SBUS:LIN:TRIGger:PATTern:FORMat command sets the entry (and query) number base used by the :SBUS:LIN:TRIGger:PATTern:DATA command. The default is BINary. Query Syntax :SBUS:LIN:TRIGger:PATTern:FORMat? The :SBUS:LIN:TRIGger:PATTern:FORMat? query returns the currently set number base for LIN pattern data.
24 :SBUS Commands :SBUS:SPI Commands NOTE These commands are only valid when the low-speed IIC and SPI serial decode option (Option LSS) has been licensed.
24 :SBUS Commands Table 89 :SBUS:SPI Commands Summary (continued) Command Query Options and Query Returns :SBUS:SPI:SOURce:M ISO (see page 527) :SBUS:SPI:SOURce:M ISO? (see page 527) ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :SBUS:SPI:SOURce:M OSI (see page 528) :SBUS:SPI:SOURce:M OSI? (see page 5
24 :SBUS Commands :SBUS:SPI:BITorder (see page 860) Command Syntax :SBUS:SPI:BITorder ::= {LSBFirst | MSBFirst} The :SBUS:SPI:BITorder command selects the bit order, most significant bit first (MSB) or least significant bit first (LSB), used when displaying data in the serial decode waveform and in the Lister. Query Syntax :SBUS:SPI:BITorder? The :SBUS:SPI:BITorder? query returns the current SPI decode bit order.
:SBUS Commands 24 :SBUS:SPI:CLOCk:SLOPe (see page 860) Command Syntax :SBUS:SPI:CLOCk:SLOPe ::= {NEGative | POSitive} The :SBUS:SPI:CLOCk:SLOPe command specifies the rising edge (POSitive) or falling edge (NEGative) of the SPI clock source that will clock in the data. Query Syntax :SBUS:SPI:CLOCk:SLOPe? The :SBUS:SPI:CLOCk:SLOPe? query returns the current SPI clock source slope.
24 :SBUS Commands :SBUS:SPI:CLOCk:TIMeout (see page 860) Command Syntax :SBUS:SPI:CLOCk:TIMeout ::= time in seconds in NR3 format The :SBUS:SPI:CLOCk:TIMeout command sets the SPI signal clock timeout resource in seconds from 100 ns to 10 s when the :SBUS:SPI:FRAMing command is set to TIMeout. The timer is used to frame a signal by a clock timeout.
:SBUS Commands 24 :SBUS:SPI:FRAMing (see page 860) Command Syntax :SBUS:SPI:FRAMing ::= {CHIPselect | {NCHipselect | NOTC} | TIMeout} The :SBUS:SPI:FRAMing command sets the SPI trigger framing value. If TIMeout is selected, the timeout value is set by the :SBUS:SPI:CLOCk:TIMeout command. NOTE Query Syntax The NOTC value is deprecated. It is the same as NCHipselect. :SBUS:SPI:FRAMing? The :SBUS:SPI:FRAMing? query returns the current SPI framing value.
24 :SBUS Commands :SBUS:SPI:SOURce:CLOCk (see page 860) Command Syntax :SBUS:SPI:SOURce:CLOCk ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:SPI:SOURce:CLOCk command sets the source for the SPI serial clock.
:SBUS Commands 24 :SBUS:SPI:SOURce:DATA (see page 860) Command Syntax :SBUS:SPI:SOURce:DATA ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:SPI:SOURce:DATA command sets the source for the SPI serial MOSI data. This command is the same as the :SBUS:SPI:SOURce:MOSI command.
24 :SBUS Commands :SBUS:SPI:SOURce:FRAMe (see page 860) Command Syntax :SBUS:SPI:SOURce:FRAMe ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:SPI:SOURce:FRAMe command sets the frame source when :SBUS:SPI:FRAMing is set to CHIPselect or NOTChipselect.
:SBUS Commands 24 :SBUS:SPI:SOURce:MISO (see page 860) Command Syntax :SBUS:SPI:SOURce:MISO ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:SPI:SOURce:MISO command sets the source for the SPI serial MISO data.
24 :SBUS Commands :SBUS:SPI:SOURce:MOSI (see page 860) Command Syntax :SBUS:SPI:SOURce:MOSI ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:SPI:SOURce:MOSI command sets the source for the SPI serial MOSI data. You can also use the equivalent :SBUS:SPI:SOURce:DATA command to set the MOSI data source.
:SBUS Commands 24 :SBUS:SPI:TRIGger:PATTern:MISO:DATA (see page 860) Command Syntax :SBUS:SPI:TRIGger:PATTern:MISO:DATA ::= "nn...n" where n ::= {0 | 1 | X | $} :SPI:TRIGger:PATTern:MISO:DATA command defines the SPI data pattern resource according to the string parameter. This pattern, along with the data width, control the data pattern searched for in the data stream.
24 :SBUS Commands :SBUS:SPI:TRIGger:PATTern:MISO:WIDTh (see page 860) Command Syntax :SBUS:SPI:TRIGger:PATTern:MISO:WIDTh ::= integer from 4 to 64 in NR1 format The :SBUS:SPI:TRIGger:PATTern:MISO:WIDTh command sets the width of the SPI data pattern anywhere from 4 bits to 64 bits. NOTE Query Syntax The :SBUS:SPI:TRIGger:PATTern:MISO:WIDTh should be set before :SBUS:SPI:TRIGger:PATTern:MISO:DATA.
:SBUS Commands 24 :SBUS:SPI:TRIGger:PATTern:MOSI:DATA (see page 860) Command Syntax :SBUS:SPI:TRIGger:PATTern:MOSI:DATA ::= "nn...n" where n ::= {0 | 1 | X | $} :SPI:TRIGger:PATTern:MOSI:DATA command defines the SPI data pattern resource according to the string parameter. This pattern, along with the data width, control the data pattern searched for in the data stream.
24 :SBUS Commands :SBUS:SPI:TRIGger:PATTern:MOSI:WIDTh (see page 860) Command Syntax :SBUS:SPI:TRIGger:PATTern:MOSI:WIDTh ::= integer from 4 to 64 in NR1 format The :SBUS:SPI:TRIGger:PATTern:MOSI:WIDTh command sets the width of the SPI data pattern anywhere from 4 bits to 64 bits. NOTE Query Syntax The :SBUS:SPI:TRIGger:PATTern:MOSI:WIDTh should be set before :SBUS:SPI:TRIGger:PATTern:MOSI:DATA.
:SBUS Commands 24 :SBUS:SPI:TRIGger:TYPE (see page 860) Command Syntax :SBUS:SPI:TRIGger:TYPE ::= {MOSI | MISO} The :SBUS:SPI:TRIGger:TYPE command specifies whether the SPI trigger will be on the MOSI data or the MISO data. When triggering on MOSI data, the data value is specified by the :SBUS:SPI:TRIGger:PATTern:MOSI:DATA and :SBUS:SPI:TRIGger:PATTern:MOSI:WIDTh commands.
24 :SBUS Commands :SBUS:SPI:WIDTh (see page 860) Command Syntax :SBUS:SPI:WIDTh ::= integer 4-16 in NR1 format The :SBUS:SPI:WIDTh command determines the number of bits in a word of data for SPI. Query Syntax :SBUS:SPI:WIDTh? The :SBUS:SPI:WIDTh? query returns the current SPI decode word width.
24 :SBUS Commands :SBUS:UART Commands NOTE These commands are only valid when the UART/RS-232 triggering and serial decode option (Option 232) has been licensed.
24 :SBUS Commands Table 90 :SBUS:UART Commands Summary (continued) Command Query Options and Query Returns :SBUS:UART:SOURce: RX (see page 548) :SBUS:UART:SOURce: RX? (see page 548) ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :SBUS:UART:SOURce: TX (see page 549) :SBUS:UART:SOURce: TX? (see page 549)
:SBUS Commands 24 Table 90 :SBUS:UART Commands Summary (continued) Command Query Options and Query Returns :SBUS:UART:TRIGger :TYPE (see page 555) :SBUS:UART:TRIGger :TYPE? (see page 555) ::= RDATa | RD1 PARityerror TDATa | TD1 :SBUS:UART:WIDTh (see page 556) :SBUS:UART:WIDTh? (see page 556) ::= {5 | 6 | 7 | 8 | 9} Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide {RSTArt | RSTOp | | RD0 | RDX | | TSTArt | TSTOp | | TD0 | TDX}
24 :SBUS Commands :SBUS:UART:BASE (see page 860) Command Syntax :SBUS:UART:BASE ::= {ASCii | BINary | HEX} The :SBUS:UART:BASE command determines the base to use for the UART decode and Lister display. Query Syntax :SBUS:UART:BASE? The :SBUS:UART:BASE? query returns the current UART decode and Lister base setting.
:SBUS Commands 24 :SBUS:UART:BAUDrate (see page 860) Command Syntax :SBUS:UART:BAUDrate ::= integer from 1200 to 8000000 in 100 b/s increments The :SBUS:UART:BAUDrate command selects the bit rate (in bps) for the serial decoder and/or trigger when in UART mode. The baud rate can be set from 1200 b/s to 8 Mb/s in 100 b/s increments. If you enter a baud rate that is not divisible by 100 b/s, the baud rate is set to the nearest baud rate divisible by 100 b/s.
24 :SBUS Commands :SBUS:UART:BITorder (see page 860) Command Syntax :SBUS:UART:BITorder ::= {LSBFirst | MSBFirst} The :SBUS:UART:BITorder command specifies the order of transmission used by the physical Tx and Rx input signals for the serial decoder and/or trigger when in UART mode. LSBFirst sets the least significant bit of each message "byte" as transmitted first. MSBFirst sets the most significant bit as transmitted first.
:SBUS Commands 24 :SBUS:UART:COUNt:ERRor (see page 860) Query Syntax :SBUS:UART:COUNt:ERRor? Returns the UART error frame count.
24 :SBUS Commands :SBUS:UART:COUNt:RESet (see page 860) Command Syntax :SBUS:UART:COUNt:RESet Resets the UART frame counters.
:SBUS Commands 24 :SBUS:UART:COUNt:RXFRames (see page 860) Query Syntax :SBUS:UART:COUNt:RXFRames? Returns the UART Rx frame count.
24 :SBUS Commands :SBUS:UART:COUNt:TXFRames (see page 860) Query Syntax :SBUS:UART:COUNt:TXFRames? Returns the UART Tx frame count.
:SBUS Commands 24 :SBUS:UART:FRAMing (see page 860) Command Syntax :SBUS:UART:FRAMing ::= {OFF | | } ::= 8-bit integer in decimal from 0-255 (0x00-0xff) ::= #Hnn where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...n where n ::= {0 | 1} for binary The :SBUS:UART:FRAMing command determines the byte value to use for framing (end of packet) or to turn off framing for UART decode.
24 :SBUS Commands :SBUS:UART:PARity (see page 860) Command Syntax :SBUS:UART:PARity ::= {EVEN | ODD | NONE} The :SBUS:UART:PARity command selects the parity to be used with each message "byte" for the serial decoder and/or trigger when in UART mode. Query Syntax :SBUS:UART:PARity? The :SBUS:UART:PARity? query returns the current UART parity setting.
:SBUS Commands 24 :SBUS:UART:POLarity (see page 860) Command Syntax :SBUS:UART:POLarity ::= {HIGH | LOW} The :SBUS:UART:POLarity command selects the polarity as idle low or idle high for the serial decoder and/or trigger when in UART mode. Query Syntax :SBUS:UART:POLarity? The :SBUS:UART:POLarity? query returns the current UART polarity setting.
24 :SBUS Commands :SBUS:UART:SOURce:RX (see page 860) Command Syntax :SBUS:UART:SOURce:RX ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:UART:SOURce:RX command controls which signal is used as the Rx source by the serial decoder and/or trigger when in UART mode.
:SBUS Commands 24 :SBUS:UART:SOURce:TX (see page 860) Command Syntax :SBUS:UART:SOURce:TX ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :SBUS:UART:SOURce:TX command controls which signal is used as the Tx source by the serial decoder and/or trigger when in UART mode.
24 :SBUS Commands :SBUS:UART:TRIGger:BASE (see page 860) Command Syntax :SBUS:UART:TRIGger:BASE ::= {ASCii | HEX} The :SBUS:UART:TRIGger:BASE command sets the front panel UART/RS232 trigger setup data selection option: • ASCii — front panel data selection is from ASCII values. • HEX — front panel data selection is from hexadecimal values.
:SBUS Commands 24 :SBUS:UART:TRIGger:BURSt (see page 860) Command Syntax :SBUS:UART:TRIGger:BURSt ::= {OFF | 1 to 4096 in NR1 format} The :SBUS:UART:TRIGger:BURSt command selects the burst value (Nth frame after idle period) in the range 1 to 4096 or OFF, for the trigger when in UART mode. Query Syntax :SBUS:UART:TRIGger:BURSt? The :SBUS:UART:TRIGger:BURSt? query returns the current UART trigger burst value.
24 :SBUS Commands :SBUS:UART:TRIGger:DATA (see page 860) Command Syntax :SBUS:UART:TRIGger:DATA ::= 8-bit integer from 0-255 (0x00-0xff) in decimal, , , or format ::= #Hnn where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...
:SBUS Commands 24 :SBUS:UART:TRIGger:IDLE (see page 860) Command Syntax :SBUS:UART:TRIGger:IDLE ::= time from 1 us to 10 s in NR3 format The :SBUS:UART:TRIGger:IDLE command selects the value of the idle period for burst trigger in the range from 1 us to 10 s when in UART mode. Query Syntax :SBUS:UART:TRIGger:IDLE? The :SBUS:UART:TRIGger:IDLE? query returns the current UART trigger idle period time.
24 :SBUS Commands :SBUS:UART:TRIGger:QUALifier (see page 860) Command Syntax :SBUS:UART:TRIGger:QUALifier ::= {EQUal | NOTequal | GREaterthan | LESSthan} The :SBUS:UART:TRIGger:QUALifier command selects the data qualifier when :TYPE is set to RDATa, RD1, RD0, RDX, TDATa, TD1, TD0, or TDX for the trigger when in UART mode. Query Syntax :SBUS:UART:TRIGger:QUALifier? The :SBUS:UART:TRIGger:QUALifier? query returns the current UART trigger qualifier.
:SBUS Commands 24 :SBUS:UART:TRIGger:TYPE (see page 860) Command Syntax :SBUS:UART:TRIGger:TYPE ::= {RSTArt | RSTOp | RDATa | RD1 | RD0 | RDX | PARityerror | TSTArt | TSTOp | TDATa | TD1 | TD0 | TDX} The :SBUS:UART:TRIGger:TYPE command selects the UART trigger type. When one of the RD or TD types is selected, the :SBUS:UART:TRIGger:DATA and :SBUS:UART:TRIGger:QUALifier commands are used to specify the data value and comparison operator.
24 :SBUS Commands :SBUS:UART:WIDTh (see page 860) Command Syntax :SBUS:UART:WIDTh ::= {5 | 6 | 7 | 8 | 9} The :SBUS:UART:WIDTh command determines the number of bits (5- 9) for each message "byte" for the serial decoder and/or trigger when in UART mode. Query Syntax :SBUS:UART:WIDTh? The :SBUS:UART:WIDTh? query returns the current UART width setting.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 25 :SEARch Commands Control the event search modes and parameters for each search type.
25 :SEARch Commands General :SEARch Commands Table 91 General :SEARch Commands Summary Command Query Options and Query Returns n/a :SEARch:COUNt? (see page 559) ::= an integer count value :SEARch:MODE (see page 560) :SEARch:MODE? (see page 560) ::= {EDGE | GLITch | RUNT | TRANsition | SERial{1 | 2}} :SEARch:STATe (see page 561) :SEARch:STATe? (see page 561) ::= {{0 | OFF} | {1 | ON}} 558 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guid
:SEARch Commands 25 :SEARch:COUNt (see page 860) Query Syntax :SEARch:COUNt? The :SEARch:COUNt? query returns the number of search events found.
25 :SEARch Commands :SEARch:MODE (see page 860) Command Syntax :SEARch:MODE ::= {EDGE | GLITch | RUNT | TRANsition | SERial{1 | 2}} The :SEARch:MODE command selects the search mode. The command is only valid when the :SEARch:STATe is ON. Query Syntax :SEARch:MODE? The :SEARch:MODE? query returns the currently selected mode or OFF if the :SEARch:STATe is OFF.
:SEARch Commands 25 :SEARch:STATe (see page 860) Command Syntax :SEARch:STATe ::= {{0 | OFF} | {1 | ON}} The :SEARch:STATe command enables or disables the search feature. Query Syntax :SEARch:STATe? The :SEARch:STATe? query returns returns the current setting.
25 :SEARch Commands :SEARch:EDGE Commands Table 92 :SEARch:EDGE Commands Summary Command Query Options and Query Returns :SEARch:EDGE:SLOPe (see page 563) :SEARch:EDGE:SLOPe? (see page 563) ::= {POSitive | NEGative | EITHer} :SEARch:EDGE:SOURce (see page 564) :SEARch:EDGE:SOURce? (see page 564) ::= CHANnel ::= 1 to (# analog channels) in NR1 format 562 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
:SEARch Commands 25 :SEARch:EDGE:SLOPe (see page 860) Command Syntax :SEARch:EDGE:SLOPe ::= {NEGative | POSitive | EITHer} The :SEARch:EDGE:SLOPe command specifies the slope of the edge for the search. Query Syntax :SEARch:EDGE:SLOPe? The :SEARch:EDGE:SLOPe? query returns the current slope setting.
25 :SEARch Commands :SEARch:EDGE:SOURce (see page 860) Command Syntax :SEARch:EDGE:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :SEARch:EDGE:SOURce command selects the channel on which to search for edges. Query Syntax :SEARch:EDGE:SOURce? The :SEARch:EDGE:SOURce? query returns the current source.
25 :SEARch Commands :SEARch:GLITch Commands Table 93 :SEARch:GLITch Commands Summary Command Query Options and Query Returns :SEARch:GLITch:GREate rthan [s uffix] (see page 566) :SEARch:GLITch:GREate rthan? (see page 566) ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} :SEARch:GLITch:LESSth an [suff ix] (see page 567) :SEARch:GLITch:LESSth an? (see page 567) ::= floating-point number in NR3 format
25 :SEARch Commands :SEARch:GLITch:GREaterthan (see page 860) Command Syntax :SEARch:GLITch:GREaterthan [] ::= floating-point number in NR3 format ::= {s | ms | us | ns | ps} The :SEARch:GLITch:GREaterthan command sets the minimum pulse width duration for the selected :SEARch:GLITch:SOURce. Query Syntax :SEARch:GLITch:GREaterthan? The :SEARch:GLITch:GREaterthan? query returns the minimum pulse width duration time for :SEARch:GLITch:SOURce.
25 :SEARch Commands :SEARch:GLITch:LESSthan (see page 860) Command Syntax :SEARch:GLITch:LESSthan [] ::= floating-point number in NR3 format ::= {s | ms | us | ns | ps} The :SEARch:GLITch:LESSthan command sets the maximum pulse width duration for the selected :SEARch:GLITch:SOURce. Query Syntax :SEARch:GLITch:LESSthan? The :SEARch:GLITch:LESSthan? query returns the pulse width duration time for :SEARch:GLITch:SOURce.
25 :SEARch Commands :SEARch:GLITch:POLarity (see page 860) Command Syntax :SEARch:GLITch:POLarity ::= {POSitive | NEGative} The :SEARch:GLITch:POLarity command sets the polarity for the glitch (pulse width) search. Query Syntax :SEARch:GLITch:POLarity? The :SEARch:GLITch:POLarity? query returns the current polarity setting for the glitch (pulse width) search.
:SEARch Commands 25 :SEARch:GLITch:QUALifier (see page 860) Command Syntax :SEARch:GLITch:QUALifier ::= {GREaterthan | LESSthan | RANGe} This command sets the mode of operation of the glitch (pulse width) search. The oscilloscope can search for a pulse width that is greater than a time value, less than a time value, or within a range of time values. Query Syntax :SEARch:GLITch:QUALifier? The :SEARch:GLITch:QUALifier? query returns the glitch (pulse width) qualifier.
25 :SEARch Commands :SEARch:GLITch:RANGe (see page 860) Command Syntax :SEARch:GLITch:RANGe [suffix], [suffix] ::= (15 ns - 10 seconds) in NR3 format ::= (10 ns - 9.99 seconds) in NR3 format [suffix] ::= {s | ms | us | ns | ps} The :SEARch:GLITch:RANGe command sets the pulse width duration for the selected :SEARch:GLITch:SOURce.
:SEARch Commands 25 :SEARch:GLITch:SOURce (see page 860) Command Syntax :SEARch:GLITch:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :SEARch:GLITch:SOURce command selects the channel on which to search for glitches (pulse widths). Query Syntax :SEARch:GLITch:SOURce? The :SEARch:GLITch:SOURce? query returns the current pulse width source. If all channels are off, the query returns "NONE.
25 :SEARch Commands :SEARch:RUNT Commands Table 94 :SEARch:RUNT Commands Summary Command Query Options and Query Returns :SEARch:RUNT:POLarity (see page 573) :SEARch:RUNT:POLarity ? (see page 573) ::= {POSitive | NEGative | EITHer} :SEARch:RUNT:QUALifie r (see page 574) :SEARch:RUNT:QUALifie r? (see page 574) ::= {GREaterthan | LESSthan | NONE} :SEARch:RUNT:SOURce (see page 575) :SEARch:RUNT:SOURce? (see page 575) ::= CHANnel
:SEARch Commands 25 :SEARch:RUNT:POLarity (see page 860) Command Syntax :SEARch:RUNT:POLarity ::= {POSitive | NEGative | EITHer} The :SEARch:RUNT:POLarity command sets the polarity for the runt search. Query Syntax :SEARch:RUNT:POLarity? The :SEARch:RUNT:POLarity? query returns the currently set runt polarity.
25 :SEARch Commands :SEARch:RUNT:QUALifier (see page 860) Command Syntax :SEARch:RUNT:QUALifier ::= {GREaterthan | LESSthan | NONE} The :SEARch:RUNT:QUALifier command specifies whether to search for a runt that is greater than a time value, less than a time value, or any time value. Query Syntax :SEARch:RUNT:QUALifier? The :SEARch:RUNT:QUALifier? query returns the current runt search qualifier.
:SEARch Commands 25 :SEARch:RUNT:SOURce (see page 860) Command Syntax :SEARch:RUNT:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :SEARch:RUNT:SOURce command selects the channel on which to search for the runt pulse. Query Syntax :SEARch:RUNT:SOURce? The :SEARch:RUNT:SOURce? query returns the current runt search source.
25 :SEARch Commands :SEARch:RUNT:TIME (see page 860) Command Syntax :SEARch:RUNT:TIME [suffix] ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} When searching for runt pulses whose widths are greater than or less than a time (see :SEARch:RUNT:QUALifier), the :SEARch:RUNT:TIME command specifies the time value. Query Syntax :SEARch:RUNT:TIME? The :SEARch:RUNT:TIME? query returns the currently specified runt time value.
25 :SEARch Commands :SEARch:TRANsition Commands Table 95 :SEARch:TRANsition Commands Summary Command Query Options and Query Returns :SEARch:TRANsition:QU ALifier (see page 578) :SEARch:TRANsition:QU ALifier? (see page 578) ::= {GREaterthan | LESSthan} :SEARch:TRANsition:SL OPe (see page 579) :SEARch:TRANsition:SL OPe? (see page 579) ::= {NEGative | POSitive} :SEARch:TRANsition:SO URce (see page 580) :SEARch:TRANsition:SO URce? (see page 580)
25 :SEARch Commands :SEARch:TRANsition:QUALifier (see page 860) Command Syntax :SEARch:TRANsition:QUALifier ::= {GREaterthan | LESSthan} The :SEARch:TRANsition:QUALifier command specifies whether to search for edge transitions greater than or less than a time. Query Syntax :SEARch:TRANsition:QUALifier? The :SEARch:TRANsition:QUALifier? query returns the current transition search qualifier.
:SEARch Commands 25 :SEARch:TRANsition:SLOPe (see page 860) Command Syntax :SEARch:TRANsition:SLOPe ::= {NEGative | POSitive} The :SEARch:TRANsition:SLOPe command selects whether to search for rising edge (POSitive slope) transitions or falling edge (NEGative slope) transitions. Query Syntax :SEARch:TRANsition:SLOPe? The :SEARch:TRANsition:SLOPe? query returns the current transition search slope setting.
25 :SEARch Commands :SEARch:TRANsition:SOURce (see page 860) Command Syntax :SEARch:TRANsition:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :SEARch:TRANsition:SOURce command selects the channel on which to search for edge transitions. Query Syntax :SEARch:TRANsition:SOURce? The :SEARch:TRANsition:SOURce? query returns the current transition search source.
:SEARch Commands 25 :SEARch:TRANsition:TIME (see page 860) Command Syntax :SEARch:TRANsition:TIME [suffix] ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} The :SEARch:TRANsition:TIME command sets the time of the transition to search for. You can search for transitions greater than or less than this time. Query Syntax :SEARch:TRANsition:TIME? The :SEARch:TRANsition:TIME? query returns the current transition time value.
25 :SEARch Commands :SEARch:SERial:CAN Commands Table 96 :SEARch:SERial:CAN Commands Summary Command Query Options and Query Returns :SEARch:SERial:CAN:MO DE (see page 587) :SEARch:SERial:CAN:MO DE? (see page 587) ::= {DATA | IDData | IDEither | IDRemote | ALLerrors | OVERload | ERRor} :SEARch:SERial:CAN:PA TTern:DATA (see page 583) :SEARch:SERial:CAN:PA TTern:DATA? (see page 583) ::= "0xnn...n" where n ::= {0,..,9 | A,..
25 :SEARch Commands :SEARch:SERial:CAN:PATTern:DATA (see page 860) Command Syntax :SEARch:SERial:CAN:PATTern:DATA ::= "0xnn...n" where n ::= {0,..,9 | A,..,F | X} for hexadecimal The :SEARch:SERial:CAN:PATTern:DATA command specifies the data value when searching for Data Frame ID and Data. The length of the data value is specified using the :SEARch:SERial:CAN:PATTern:DATA:LENGth command.
25 :SEARch Commands :SEARch:SERial:CAN:PATTern:DATA:LENGth (see page 860) Command Syntax :SEARch:SERial:CAN:PATTern:DATA:LENGth ::= integer from 1 to 8 in NR1 format The :SEARch:SERial:CAN:PATTern:DATA:LENGth command specifies the length of the data value when searching for Data Frame ID and Data. The data value is specified using the :SEARch:SERial:CAN:PATTern:DATA command.
:SEARch Commands 25 :SEARch:SERial:CAN:PATTern:ID (see page 860) Command Syntax :SEARch:SERial:CAN:PATTern:ID ::= "0xnn...n" where n ::= {0,..,9 | A,..,F | X} for hexadecimal The :SEARch:SERial:CAN:PATTern:ID command specifies the ID value when searching for a CAN event. The value can be a standard ID or an extended ID, depending on the :SEARch:SERial:CAN:PATTern:ID:MODE command's setting.
25 :SEARch Commands :SEARch:SERial:CAN:PATTern:ID:MODE (see page 860) Command Syntax :SEARch:SERial:CAN:PATTern:ID:MODE ::= {STANdard | EXTended} The :SEARch:SERial:CAN:PATTern:ID:MODE command specifies whether a standard ID value or an extended ID value is used when searching for a CAN event. The ID value is specified using the :SEARch:SERial:CAN:PATTern:ID command.
:SEARch Commands 25 :SEARch:SERial:CAN:MODE (see page 860) Command Syntax :SEARch:SERial:CAN:MODE ::= {DATA | IDData | IDEither | IDRemote | ALLerrors | OVERload | ERRor} The :SEARch:SERial:CAN:MODE command selects the type of CAN information to find in the Lister display: • DATA - searches for CAN Data frames matching the specified ID, Data, and the DLC (Data length code). • IDData - searches for CAN frames matching the specified ID of a Data frame.
25 :SEARch Commands :SEARch:SERial:I2S Commands Table 97 :SEARch:SERial:I2S Commands Summary Command Query Options and Query Returns :SEARch:SERial:I2S:AU Dio (see page 589) :SEARch:SERial:I2S:AU Dio? (see page 589) ::= {RIGHt | LEFT | EITHer} :SEARch:SERial:I2S:MO DE (see page 590) :SEARch:SERial:I2S:MO DE? (see page 590) ::= {EQUal | NOTequal | LESSthan | GREaterthan | INRange | OUTRange} :SEARch:SERial:I2S:PA TTern:DATA (see page 591) :SEARch:SERi
:SEARch Commands 25 :SEARch:SERial:I2S:AUDio (see page 860) Command Syntax :SEARch:SERial:I2S:AUDio ::= {RIGHt | LEFT | EITHer} The :SEARch:SERial:I2S:AUDio command specifies the channel on which to search for I2S events: right, left, or either channel. Query Syntax :SEARch:SERial:I2S:AUDio? The :SEARch:SERial:I2S:AUDio? query returns the current channel setting.
25 :SEARch Commands :SEARch:SERial:I2S:MODE (see page 860) Command Syntax :SEARch:SERial:I2S:MODE ::= {EQUal | NOTequal | LESSthan | GREaterthan | INRange | OUTRange} The :SEARch:SERial:I2S:MODE command selects the type of I2S information to find in the Lister display: • EQUal— searches for the specified audio channel's data word when it equals the specified word. • NOTequal — searches for any word other than the specified word.
25 :SEARch Commands :SEARch:SERial:I2S:PATTern:DATA (see page 860) Command Syntax :SEARch:SERial:I2S:PATTern:DATA ::= "n" where n ::= 32-bit integer in signed decimal when = DECimal ::= "nn...n" where n ::= {0 | 1 | X} when = BINary ::= "0xnn...n" where n ::= {0,..,9 | A,..,F | X} when = HEX The :SEARch:SERial:I2S:PATTern:DATA command specifies the data word value when searching for I2S events.
25 :SEARch Commands :SEARch:SERial:I2S:PATTern:FORMat (see page 860) Command Syntax :SEARch:SERial:I2S:PATTern:FORMat ::= {BINary | HEX | DECimal} The :SEARch:SERial:I2S:PATTern:FORMat command specifies the number base used with the :SEARch:SERial:I2S:PATTern:DATA command. Query Syntax :SEARch:SERial:I2S:PATTern:FORMat? The :SEARch:SERial:I2S:PATTern:FORMat? query returns the current number base setting.
:SEARch Commands 25 :SEARch:SERial:I2S:RANGe (see page 860) Command Syntax :SEARch:SERial:I2S:RANGe , ::= 32-bit integer in signed decimal, , or ::= 32-bit integer in signed decimal, , or ::= #Hnn...n where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...n where n ::= {0 | 1} for binary ::= "0xnn...n" where n ::= {0,..,9 | A,..
25 :SEARch Commands :SEARch:SERial:IIC Commands Table 98 :SEARch:SERial:IIC Commands Summary Command Query Options and Query Returns :SEARch:SERial:IIC:MO DE (see page 595) :SEARch:SERial:IIC:MO DE? (see page 595) ::= { READ7 | WRITE7 | NACKnowledge | ANACk | R7Data2 | W7Data2 | RESTart | READEprom} :SEARch:SERial:IIC:PA TTern:ADDRess (see page 597) :SEARch:SERial:IIC:PA TTern:ADDRess? (see page 597) ::= integer or ::= "0xnn" n ::= {0,..,9 | A,..
:SEARch Commands 25 :SEARch:SERial:IIC:MODE (see page 860) Command Syntax :SEARch:SERial:IIC:MODE ::= {READ7 | WRITE7 | NACKnowledge | ANACk | R7Data2 | W7Data2 | RESTart | READEprom} The :SEARch:SERial:IIC:MODE command selects the type of IIC information to find in the Lister display: • READ7 — searched for 7- bit address frames containing Start:Address7:Read:Ack:Data. The value READ is also accepted for READ7.
25 :SEARch Commands • ":SEARch:SERial:IIC:PATTern:ADDRess" on page 597 • ":SEARch:SERial:IIC:PATTern:DATA" on page 598 • ":SEARch:SERial:IIC:PATTern:DATA2" on page 599 • ":SEARch:SERial:IIC:QUALifier" on page 600 596 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
:SEARch Commands 25 :SEARch:SERial:IIC:PATTern:ADDRess (see page 860) Command Syntax :SEARch:SERial:IIC:PATTern:ADDRess ::= integer or ::= "0xnn" n ::= {0,..,9 | A,..,F} The :SEARch:SERial:IIC:PATTern:ADDRess command specifies address values when searching for IIC events. Query Syntax :SEARch:SERial:IIC:PATTern:ADDRess? The :SEARch:SERial:IIC:PATTern:ADDRess? query returns the current address value setting.
25 :SEARch Commands :SEARch:SERial:IIC:PATTern:DATA (see page 860) Command Syntax :SEARch:SERial:IIC:PATTern:DATA ::= integer or ::= "0xnn" n ::= {0,..,9 | A,..,F} The :SEARch:SERial:IIC:PATTern:DATA command specifies data values when searching for IIC events. When searching for IIC EEPROM data read events, you specify the data value qualifier using the :SEARch:SERial:IIC:QUALifier command.
:SEARch Commands 25 :SEARch:SERial:IIC:PATTern:DATA2 (see page 860) Command Syntax :SEARch:SERial:IIC:PATTern:DATA2 ::= integer or ::= "0xnn" n ::= {0,..,9 | A,..,F} The :SEARch:SERial:IIC:PATTern:DATA2 command specifies the second data value when searching for IIC events with two data values. Query Syntax :SEARch:SERial:IIC:PATTern:DATA2? The :SEARch:SERial:IIC:PATTern:DATA2? query returns the current second data value setting.
25 :SEARch Commands :SEARch:SERial:IIC:QUALifier (see page 860) Command Syntax :SEARch:SERial:IIC:QUALifier ::= {EQUal | NOTequal | LESSthan | GREaterthan} The :SEARch:SERial:IIC:QUALifier command specifies the data value qualifier used when searching for IIC EEPROM data read events. Query Syntax :SEARch:SERial:IIC:QUALifier? The :SEARch:SERial:IIC:QUALifier? query returns the current data value qualifier setting.
25 :SEARch Commands :SEARch:SERial:LIN Commands Table 99 :SEARch:SERial:LIN Commands Summary Command Query Options and Query Returns :SEARch:SERial:LIN:ID (see page 602) :SEARch:SERial:LIN:ID ? (see page 602) ::= 7-bit integer in decimal, , or from 0-63 or 0x00-0x3f (with Option AMS) ::= #Hnn where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...n where n ::= {0 | 1} for binary ::= "0xnn" where n ::= {0,..,9 | A,..
25 :SEARch Commands :SEARch:SERial:LIN:ID (see page 860) Command Syntax :SEARch:SERial:LIN:ID ::= 7-bit integer in decimal, , or from 0-63 or 0x00-0x3f (with Option AMS) ::= #Hnn where n ::= {0,..,9 | A,..,F} for hexadecimal ::= #Bnn...n where n ::= {0 | 1} for binary ::= "0xnn" where n ::= {0,..,9 | A,..,F} for hexadecimal The :SEARch:SERial:LIN:ID command specifies the frame ID value when searching for LIN events.
:SEARch Commands 25 :SEARch:SERial:LIN:MODE (see page 860) Command Syntax :SEARch:SERial:LIN:MODE ::= {ID | DATA | ERRor} The :SEARch:SERial:LIN:MODE command selects the type of LIN information to find in the Lister display: • ID — searches for a frame ID. • DATA — searches for a frame ID and data. • ERRor — searches for errors. Frame IDs are specified usind the :SEARch:SERial:LIN:ID command. Data values are specified using the:SEARch:SERial:LIN:PATTern:DATA command.
25 :SEARch Commands :SEARch:SERial:LIN:PATTern:DATA (see page 860) Command Syntax :SEARch:SERial:LIN:PATTern:DATA ::= "n" where n ::= 32-bit integer in signed decimal when = DECimal ::= "0xnn...n" where n ::= {0,..,9 | A,..,F | X } when = HEX The :SEARch:SERial:LIN:PATTern:DATA command specifies the data value when searching for LIN events. The number base of the value entered with this command is specified using the :SEARch:SERial:LIN:PATTern:FORMat command.
25 :SEARch Commands :SEARch:SERial:LIN:PATTern:DATA:LENGth (see page 860) Command Syntax :SEARch:SERial:LIN:PATTern:DATA:LENGth ::= integer from 1 to 8 in NR1 format The :SEARch:SERial:LIN:PATTern:DATA:LENGth command specifies the the length of the data value when searching for LIN events. The data value is specified using the :SEARch:SERial:LIN:PATTern:DATA command.
25 :SEARch Commands :SEARch:SERial:LIN:PATTern:FORMat (see page 860) Command Syntax :SEARch:SERial:LIN:PATTern:FORMat ::= {HEX | DECimal} The :SEARch:SERial:LIN:PATTern:FORMat command specifies the number base used with the :SEARch:SERial:LIN:PATTern:DATA command. Query Syntax :SEARch:SERial:LIN:PATTern:FORMat? The :SEARch:SERial:LIN:PATTern:FORMat? query returns the current number base setting.
25 :SEARch Commands :SEARch:SERial:SPI Commands Table 100 :SEARch:SERial:SPI Commands Summary Command Query Options and Query Returns :SEARch:SERial:SPI:MO DE (see page 608) :SEARch:SERial:SPI:MO DE? (see page 608) ::= {MOSI | MISO} :SEARch:SERial:SPI:PA TTern:DATA (see page 609) :SEARch:SERial:SPI:PA TTern:DATA? (see page 609) ::= "0xnnnnnn" where n ::= {0,..,9 | A,..
25 :SEARch Commands :SEARch:SERial:SPI:MODE (see page 860) Command Syntax :SEARch:SERial:SPI:MODE ::= {MOSI | MISO} The :SEARch:SERial:SPI:MODE command specifies whether the SPI search will be on the MOSI data or the MISO data. Data values are specified using the :SEARch:SERial:SPI:PATTern:DATA command. Query Syntax :SEARch:SERial:SPI:MODE? The :SEARch:SERial:SPI:MODE? query returns the current SPI search mode setting.
:SEARch Commands 25 :SEARch:SERial:SPI:PATTern:DATA (see page 860) Command Syntax :SEARch:SERial:SPI:PATTern:DATA ::= "0xnnnnnn" where n ::= {0,..,9 | A,..,F | X} The :SEARch:SERial:SPI:PATTern:DATA command specifies the data value when searching for SPI events. The width of the data value is specified using the :SEARch:SERial:SPI:PATTern:WIDTh command. Query Syntax :SEARch:SERial:SPI:PATTern:DATA? The :SEARch:SERial:SPI:PATTern:DATA? query returns the current data value setting.
25 :SEARch Commands :SEARch:SERial:SPI:PATTern:WIDTh (see page 860) Command Syntax :SEARch:SERial:SPI:PATTern:WIDTh ::= integer from 1 to 10 The :SEARch:SERial:SPI:PATTern:WIDTh command specifies the width of the data value (in bytes) when searching for SPI events. The data value is specified using the :SEARch:SERial:SPI:PATTern:DATA command. Query Syntax :SEARch:SERial:SPI:PATTern:WIDTh? The :SEARch:SERial:SPI:PATTern:WIDTh? query returns the current data width setting.
25 :SEARch Commands :SEARch:SERial:UART Commands Table 101 :SEARch:SERial:UART Commands Summary Command Query Options and Query Returns :SEARch:SERial:UART:D ATA (see page 612) :SEARch:SERial:UART:D ATA? (see page 612) ::= 8-bit integer from 0-255 (0x00-0xff) in decimal, , , or format ::= #Hnn where n ::= {0,..,9| A,..,F} for hexadecimal ::= #Bnn...
25 :SEARch Commands :SEARch:SERial:UART:DATA (see page 860) Command Syntax :SEARch:SERial:UART:DATA ::= 8-bit integer from 0-255 (0x00-0xff) in decimal, , , or format ::= #Hnn where n ::= {0,..,9| A,..,F} for hexadecimal ::= #Bnn...
:SEARch Commands 25 :SEARch:SERial:UART:MODE (see page 860) Command Syntax :SEARch:SERial:UART:MODE ::= {RDATa | RD1 | RD0 | RDX | TDATa | TD1 | TD0 | TDX | PARityerror | AERRor} The :SEARch:SERial:UART:MODE command selects the type of UART/RS232 information to find in the Lister display: • RDATa — searches for a receive data value when data words are from 5 to 8 bits long. • RD1 — searches for a receive data value when data words are 9 bits long and the 9th (alert) bit is 1.
25 :SEARch Commands :SEARch:SERial:UART:QUALifier (see page 860) Command Syntax :SEARch:SERial:UART:QUALifier ::= {EQUal | NOTequal | GREaterthan | LESSthan} The :SEARch:SERial:UART:QUALifier command specifies the data value qualifier when searching for UART/RS232 events. Query Syntax :SEARch:SERial:UART:QUALifier? The :SEARch:SERial:UART:QUALifier? query returns the current data value qualifier setting.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 26 :SYSTem Commands Control basic system functions of the oscilloscope. See "Introduction to :SYSTem Commands" on page 616. Table 102 :SYSTem Commands Summary Command Query Options and Query Returns :SYSTem:DATE (see page 617) :SYSTem:DATE? (see page 617) ::= ,, ::= 4-digit year in NR1 format ::= {1,..
26 :SYSTem Commands Introduction to :SYSTem Commands 616 SYSTem subsystem commands enable writing messages to the display, setting and reading both the time and the date, querying for errors, and saving and recalling setups.
:SYSTem Commands 26 :SYSTem:DATE (see page 860) Command Syntax :SYSTem:DATE ::= ,, ::= 4-digit year in NR1 format ::= {1,..,12 | JANuary | FEBruary | MARch | APRil | MAY | JUNe | JULy | AUGust | SEPtember | OCTober | NOVember | DECember} ::= {1,..,31} The :SYSTem:DATE command sets the date. Validity checking is performed to ensure that the date is valid. Query Syntax :SYSTem:DATE? The SYSTem:DATE? query returns the date.
26 :SYSTem Commands :SYSTem:DSP (see page 860) Command Syntax :SYSTem:DSP ::= quoted ASCII string (up to 75 characters) The :SYSTem:DSP command writes the quoted string (excluding quotation marks) to a text box in the center of the display. Use :SYStem:DSP "" to remotely remove the message from the display. (Two sets of quote marks without a space between them creates a NULL string.) Press any menu key to manually remove the message from the display.
:SYSTem Commands 26 :SYSTem:ERRor (see page 860) Query Syntax :SYSTem:ERRor? The :SYSTem:ERRor? query outputs the next error number and text from the error queue. The instrument has an error queue that is 30 errors deep and operates on a first- in, first- out basis. Repeatedly sending the :SYSTem:ERRor? query returns the errors in the order that they occurred until the queue is empty. Any further queries then return zero until another error occurs.
26 :SYSTem Commands :SYSTem:LOCK (see page 860) Command Syntax :SYSTem:LOCK ::= {{1 | ON} | {0 | OFF}} The :SYSTem:LOCK command disables the front panel. LOCK ON is the equivalent of sending a local lockout message over the programming interface. Query Syntax :SYSTem:LOCK? The :SYSTem:LOCK? query returns the lock status of the front panel.
:SYSTem Commands 26 :SYSTem:PRESet (see page 860) Command Syntax :SYSTem:PRESet The :SYSTem:PRESet command places the instrument in a known state. This is the same as pressing the [Default Setup] key or [Save/Recall] > Default/Erase > Default Setup on the front panel. When you perform a default setup, some user settings (like preferences) remain unchanged. To reset all user settings to their factory defaults, use the *RST command.
26 :SYSTem Commands Digital Channel Menu (MSO models only) Channel 0 - 7 Off Labels Off Threshold TTL (1.4V) Display Menu Persistence Off Grid 33% Quick Meas Menu Source Channel 1 Run Control Scope is running Time Base Menu Main time/division 100 us Main time base delay 0.00 s Delay time/division 500 ns Delay time base delay 0.00 s Reference center Mode main Vernier Off Trigger Menu 622 Type Edge Mode Auto Coupling dc Source Channel 1 Level 0.
:SYSTem Commands 26 Trigger Menu See Also HF Reject and noise reject Off Holdoff 60 ns External probe attenuation 10:1 External Units Volts External Impedance 1 M Ohm (cannot be changed) • "Introduction to Common (*) Commands" on page 127 • "*RST (Reset)" on page 140 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 623
26 :SYSTem Commands :SYSTem:PROTection:LOCK (see page 860) Command Syntax :SYSTem:PROTection:LOCK ::= {{1 | ON} | {0 | OFF}} The :SYSTem:PROTection:LOCK command disables the fifty ohm impedance setting for all analog channels. Query Syntax :SYSTem:PROTection:LOCK? The :SYSTem:PROTection:LOCK? query returns the analog channel protection lock status.
:SYSTem Commands 26 :SYSTem:SETup (see page 860) Command Syntax :SYSTem:SETup ::= binary block data in IEEE 488.2 # format. The :SYSTem:SETup command sets the oscilloscope as defined by the data in the setup (learn) string sent from the controller. The setup string does not change the interface mode or interface address. Query Syntax :SYSTem:SETup? The :SYSTem:SETup? query operates the same as the *LRN? query.
26 :SYSTem Commands ' Write setup string back to oscilloscope using ":SYSTEM:SETUP" ' command: myScope.
:SYSTem Commands 26 :SYSTem:TIME (see page 860) Command Syntax :SYSTem:TIME ::= hours,minutes,seconds in NR1 format The :SYSTem:TIME command sets the system time, using a 24- hour format. Commas are used as separators. Validity checking is performed to ensure that the time is valid. Query Syntax :SYSTem:TIME? The :SYSTem:TIME? query returns the current system time.
26 :SYSTem Commands 628 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 27 :TIMebase Commands Control all horizontal sweep functions. See "Introduction to :TIMebase Commands" on page 630.
27 :TIMebase Commands Introduction to :TIMebase Commands The TIMebase subsystem commands control the horizontal (X- axis) functions and set the oscilloscope to X- Y mode (where channel 1 becomes the X input and channel 2 becomes the Y input). The time per division, delay, vernier control, and reference can be controlled for the main and window (zoomed) time bases. Reporting the Setup Use :TIMebase? to query setup information for the TIMebase subsystem.
:TIMebase Commands 27 :TIMebase:MODE (see page 860) Command Syntax :TIMebase:MODE ::= {MAIN | WINDow | XY | ROLL} The :TIMebase:MODE command sets the current time base. There are four time base modes: • MAIN — The normal time base mode is the main time base. It is the default time base mode after the *RST (Reset) command.
27 :TIMebase Commands :TIMebase:POSition (see page 860) Command Syntax :TIMebase:POSition ::= time in seconds from the trigger to the display reference in NR3 format The :TIMebase:POSition command sets the time interval between the trigger event and the display reference point on the screen. The display reference point is either left, right, or center and is set with the :TIMebase:REFerence command. The maximum position value depends on the time/division settings.
:TIMebase Commands 27 :TIMebase:RANGe (see page 860) Command Syntax :TIMebase:RANGe ::= 20 ns through 500 s in NR3 format The :TIMebase:RANGe command sets the full- scale horizontal time in seconds for the main window. The range is 10 times the current time- per- division setting. Query Syntax :TIMebase:RANGe? The :TIMebase:RANGe query returns the current full- scale range value for the main window.
27 :TIMebase Commands :TIMebase:REFerence (see page 860) Command Syntax :TIMebase:REFerence ::= {LEFT | CENTer | RIGHt} The :TIMebase:REFerence command sets the time reference to one division from the left side of the screen, to the center of the screen, or to one division from the right side of the screen. Time reference is the point on the display where the trigger point is referenced.
:TIMebase Commands 27 :TIMebase:SCALe (see page 860) Command Syntax :TIMebase:SCALe ::= 2 ns through 50 s in NR3 format The :TIMebase:SCALe command sets the horizontal scale or units per division for the main window. Query Syntax :TIMebase:SCALe? The :TIMebase:SCALe? query returns the current horizontal scale setting in seconds per division for the main window.
27 :TIMebase Commands :TIMebase:VERNier (see page 860) Command Syntax :TIMebase:VERNier ::= {{1 | ON} | {0 | OFF} The :TIMebase:VERNier command specifies whether the time base control's vernier (fine horizontal adjustment) setting is ON (1) or OFF (0). Query Syntax :TIMebase:VERNier? The :TIMebase:VERNier? query returns the current state of the time base control's vernier setting.
:TIMebase Commands 27 :TIMebase:WINDow:POSition (see page 860) Command Syntax :TIMebase:WINDow:POSition ::= time from the trigger event to the zoomed (delayed) view reference point in NR3 format The :TIMebase:WINDow:POSition command sets the horizontal position in the zoomed (delayed) view of the main sweep. The main sweep range and the main sweep horizontal position determine the range for this command.
27 :TIMebase Commands :TIMebase:WINDow:RANGe (see page 860) Command Syntax :TIMebase:WINDow:RANGe ::= range value in seconds in NR3 format The :TIMebase:WINDow:RANGe command sets the full- scale horizontal time in seconds for the zoomed (delayed) window. The range is 10 times the current zoomed view window seconds per division setting. The main sweep range determines the range for this command. The maximum value is one half of the :TIMebase:RANGe value.
:TIMebase Commands 27 :TIMebase:WINDow:SCALe (see page 860) Command Syntax :TIMebase:WINDow:SCALe ::= scale value in seconds in NR3 format The :TIMebase:WINDow:SCALe command sets the zoomed (delayed) window horizontal scale (seconds/division). The main sweep scale determines the range for this command. The maximum value is one half of the :TIMebase:SCALe value.
27 :TIMebase Commands 640 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 28 :TRIGger Commands Control the trigger modes and parameters for each trigger type.
28 :TRIGger Commands • Edge triggering— identifies a trigger by looking for a specified slope and voltage level on a waveform. • Nth Edge Burst triggering— lets you trigger on the Nth edge of a burst that occurs after an idle time. • Pulse width triggering— (:TRIGger:GLITch commands) sets the oscilloscope to trigger on a positive pulse or on a negative pulse of a specified width. • Pattern triggering— identifies a trigger condition by looking for a specified pattern.
28 :TRIGger Commands General :TRIGger Commands Table 104 General :TRIGger Commands Summary Command Query Options and Query Returns :TRIGger:HFReject {{0 | OFF} | {1 | ON}} (see page 644) :TRIGger:HFReject? (see page 644) {0 | 1} :TRIGger:HOLDoff (see page 645) :TRIGger:HOLDoff? (see page 645) ::= 60 ns to 10 s in NR3 format :TRIGger:LEVel:HIGH , (see page 646) :TRIGger:LEVel:HIGH? (see page 646) ::= .
28 :TRIGger Commands :TRIGger:HFReject (see page 860) Command Syntax :TRIGger:HFReject ::= {{0 | OFF} | {1 | ON}} The :TRIGger:HFReject command turns the high frequency reject filter off and on. The high frequency reject filter adds a 50 kHz low- pass filter in the trigger path to remove high frequency components from the trigger waveform. Use this filter to remove high- frequency noise, such as AM or FM broadcast stations, from the trigger path.
:TRIGger Commands 28 :TRIGger:HOLDoff (see page 860) Command Syntax :TRIGger:HOLDoff ::= 60 ns to 10 s in NR3 format The :TRIGger:HOLDoff command defines the holdoff time value in seconds. Holdoff keeps a trigger from occurring until after a certain amount of time has passed since the last trigger. This feature is valuable when a waveform crosses the trigger level multiple times during one period of the waveform.
28 :TRIGger Commands :TRIGger:LEVel:HIGH (see page 860) Command Syntax :TRIGger:LEVel:HIGH , ::= 0.75 x full-scale voltage from center screen in NR3 format for internal triggers ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :TRIGger:LEVel:HIGH command sets the high trigger voltage level voltage for the specified source. High and low trigger levels are used with runt triggers and rise/fall time (transition) triggers.
28 :TRIGger Commands :TRIGger:LEVel:LOW (see page 860) Command Syntax :TRIGger:LEVel:LOW , ::= 0.75 x full-scale voltage from center screen in NR3 format for internal triggers ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :TRIGger:LEVel:LOW command sets the low trigger voltage level voltage for the specified source. High and low trigger levels are used with runt triggers and rise/fall time (transition) triggers.
28 :TRIGger Commands :TRIGger:MODE (see page 860) Command Syntax :TRIGger:MODE ::= {EDGE | GLITch | PATTern | TV | EBURst | RUNT | SHOLd | TRANsition | SBUS{1 | 2} | USB} The :TRIGger:MODE command selects the trigger mode (trigger type). Query Syntax :TRIGger:MODE? The :TRIGger:MODE? query returns the current trigger mode. If the :TIMebase:MODE is ROLL or XY, the query returns "NONE".
:TRIGger Commands 28 :TRIGger:NREJect (see page 860) Command Syntax :TRIGger:NREJect ::= {{0 | OFF} | {1 | ON}} The :TRIGger:NREJect command turns the noise reject filter off and on. When the noise reject filter is on, the trigger circuitry is less sensitive to noise but may require a greater amplitude waveform to trigger the oscilloscope. This command is not valid in TV trigger mode.
28 :TRIGger Commands :TRIGger:SWEep (see page 860) Command Syntax :TRIGger:SWEep ::= {AUTO | NORMal} The :TRIGger:SWEep command selects the trigger sweep mode. When AUTO sweep mode is selected, a baseline is displayed in the absence of a signal. If a signal is present but the oscilloscope is not triggered, the unsynchronized signal is displayed instead of a baseline.
28 :TRIGger Commands :TRIGger:EBURst Commands Table 105 :TRIGger:EBURst Commands Summary Command Query Options and Query Returns :TRIGger:EBURst:COUNt (see page 652) :TRIGger:EBURst:COUNt ? (see page 652) ::= integer in NR1 format :TRIGger:EBURst:IDLE (see page 653) :TRIGger:EBURst:IDLE? (see page 653) ::= time in seconds in NR3 format :TRIGger:EBURst:SLOPe (see page 654) :TRIGger:EBURst:SLOPe ? (see page 654) ::= {NEGative | POSitive}
28 :TRIGger Commands :TRIGger:EBURst:COUNt (see page 860) Command Syntax :TRIGger:EBURst:COUNt ::= integer in NR1 format The :TRIGger:EBURst:COUNt command sets the Nth edge at burst counter resource. The edge counter is used in the trigger stage to determine which edge in a burst will generate a trigger. Query Syntax :TRIGger:EBURst:COUNt? The :TRIGger:EBURst:COUNt? query returns the current Nth edge of burst edge counter setting.
:TRIGger Commands 28 :TRIGger:EBURst:IDLE (see page 860) Command Syntax :TRIGger:EBURst:IDLE ::= time in seconds in NR3 format The :TRIGger:EBURst:IDLE command sets the Nth edge in a burst idle resource in seconds from 10 ns to 10 s. The timer is used to set the minimum time before the next burst. Query Syntax :TRIGger:EBURst:IDLE? The :TRIGger:EBURst:IDLE? query returns current Nth edge in a burst idle setting.
28 :TRIGger Commands :TRIGger:EBURst:SLOPe (see page 860) Command Syntax :TRIGger:EBURst:SLOPe ::= {NEGative | POSitive} The :TRIGger:EBURst:SLOPe command specifies whether the rising edge (POSitive) or falling edge (NEGative) of the Nth edge in a burst will generate a trigger. Query Syntax :TRIGger:EBURst:SLOPe? The :TRIGger:EBURst:SLOPe? query returns the current Nth edge in a burst slope.
28 :TRIGger Commands :TRIGger:EBURst:SOURce (see page 860) Command Syntax :TRIGger:EBURst:SOURce ::= {CHANnel | DIGital} ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :TRIGger:EBURst:SOURce command selects the input that produces the Nth edge burst trigger. Query Syntax :TRIGger:EBURst:SOURce? The :TRIGger:EBURst:SOURce? query returns the current Nth edge burst trigger source.
28 :TRIGger Commands :TRIGger[:EDGE] Commands Table 106 :TRIGger[:EDGE] Commands Summary Command Query Options and Query Returns :TRIGger[:EDGE]:COUPl ing {AC | DC | LFReject} (see page 657) :TRIGger[:EDGE]:COUPl ing? (see page 657) {AC | DC | LFReject} :TRIGger[:EDGE]:LEVel [,] (see page 658) :TRIGger[:EDGE]:LEVel ? [] (see page 658) For internal triggers, ::= .75 x full-scale voltage from center screen in NR3 format.
:TRIGger Commands 28 :TRIGger[:EDGE]:COUPling (see page 860) Command Syntax :TRIGger[:EDGE]:COUPling ::= {AC | DC | LFReject} The :TRIGger[:EDGE]:COUPling command sets the input coupling for the selected trigger sources. The coupling can be set to AC, DC, or LFReject. • AC coupling places a high- pass filter (10 Hz for analog channels, and 3.5 Hz for all External trigger inputs) in the trigger path, removing dc offset voltage from the trigger waveform.
28 :TRIGger Commands :TRIGger[:EDGE]:LEVel (see page 860) Command Syntax :TRIGger[:EDGE]:LEVel ::= [,] ::= 0.
28 :TRIGger Commands :TRIGger[:EDGE]:REJect (see page 860) Command Syntax :TRIGger[:EDGE]:REJect ::= {OFF | LFReject | HFReject} The :TRIGger[:EDGE]:REJect command turns the low- frequency or high- frequency reject filter on or off. You can turn on one of these filters at a time. • The high frequency reject filter adds a 50 kHz low- pass filter in the trigger path to remove high frequency components from the trigger waveform.
28 :TRIGger Commands :TRIGger[:EDGE]:SLOPe (see page 860) Command Syntax :TRIGger[:EDGE]:SLOPe ::= {NEGative | POSitive | EITHer | ALTernate} The :TRIGger[:EDGE]:SLOPe command specifies the slope of the edge for the trigger. The SLOPe command is not valid in TV trigger mode. Instead, use :TRIGger:TV:POLarity to set the polarity in TV trigger mode. Query Syntax :TRIGger[:EDGE]:SLOPe? The :TRIGger[:EDGE]:SLOPe? query returns the current trigger slope.
:TRIGger Commands 28 :TRIGger[:EDGE]:SOURce (see page 860) Command Syntax :TRIGger[:EDGE]:SOURce ::= {CHANnel | EXTernal | LINE | WGEN} for the DSO models ::= {CHANnel | DIGital | EXTernal | LINE | WGEN} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :TRIGger[:EDGE]:SOURce command selects the input that produces the trigger. • EXTernal — triggers on the rear panel EXT TRIG IN signal.
28 :TRIGger Commands :TRIGger:GLITch Commands Table 107 :TRIGger:GLITch Commands Summary Command Query Options and Query Returns :TRIGger:GLITch:GREat erthan [s uffix] (see page 664) :TRIGger:GLITch:GREat erthan? (see page 664) ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} :TRIGger:GLITch:LESSt han [suff ix] (see page 665) :TRIGger:GLITch:LESSt han? (see page 665) ::= floating-point number in NR3
28 :TRIGger Commands Table 107 :TRIGger:GLITch Commands Summary (continued) Command Query Options and Query Returns :TRIGger:GLITch:RANGe [suff ix], [s uffix] (see page 669) :TRIGger:GLITch:RANGe ? (see page 669) ::= 15 ns to 10 seconds in NR3 format ::= 10 ns to 9.
28 :TRIGger Commands :TRIGger:GLITch:GREaterthan (see page 860) Command Syntax :TRIGger:GLITch:GREaterthan [] ::= floating-point number in NR3 format ::= {s | ms | us | ns | ps} The :TRIGger:GLITch:GREaterthan command sets the minimum pulse width duration for the selected :TRIGger:GLITch:SOURce. Query Syntax :TRIGger:GLITch:GREaterthan? The :TRIGger:GLITch:GREaterthan? query returns the minimum pulse width duration time for :TRIGger:GLITch:SOURce.
28 :TRIGger Commands :TRIGger:GLITch:LESSthan (see page 860) Command Syntax :TRIGger:GLITch:LESSthan [] ::= floating-point number in NR3 format ::= {s | ms | us | ns | ps} The :TRIGger:GLITch:LESSthan command sets the maximum pulse width duration for the selected :TRIGger:GLITch:SOURce. Query Syntax :TRIGger:GLITch:LESSthan? The :TRIGger:GLITch:LESSthan? query returns the pulse width duration time for :TRIGger:GLITch:SOURce.
28 :TRIGger Commands :TRIGger:GLITch:LEVel (see page 860) Command Syntax :TRIGger:GLITch:LEVel ::= [, ] ::= .
:TRIGger Commands 28 :TRIGger:GLITch:POLarity (see page 860) Command Syntax :TRIGger:GLITch:POLarity ::= {POSitive | NEGative} The :TRIGger:GLITch:POLarity command sets the polarity for the glitch pulse width trigger. Query Syntax :TRIGger:GLITch:POLarity? The :TRIGger:GLITch:POLarity? query returns the glitch pulse width trigger polarity.
28 :TRIGger Commands :TRIGger:GLITch:QUALifier (see page 860) Command Syntax :TRIGger:GLITch:QUALifier ::= {GREaterthan | LESSthan | RANGe} This command sets the mode of operation of the glitch pulse width trigger. The oscilloscope can trigger on a pulse width that is greater than a time value, less than a time value, or within a range of time values. Query Syntax :TRIGger:GLITch:QUALifier? The :TRIGger:GLITch:QUALifier? query returns the glitch pulse width qualifier.
:TRIGger Commands 28 :TRIGger:GLITch:RANGe (see page 860) Command Syntax :TRIGger:GLITch:RANGe [suffix], [suffix] ::= (15 ns - 10 seconds) in NR3 format ::= (10 ns - 9.99 seconds) in NR3 format [suffix] ::= {s | ms | us | ns | ps} The :TRIGger:GLITch:RANGe command sets the pulse width duration for the selected :TRIGger:GLITch:SOURce.
28 :TRIGger Commands :TRIGger:GLITch:SOURce (see page 860) Command Syntax :TRIGger:GLITch:SOURce ::= {DIGital | CHANnel} ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :TRIGger:GLITch:SOURce command selects the channel that produces the pulse width trigger. Query Syntax :TRIGger:GLITch:SOURce? The :TRIGger:GLITch:SOURce? query returns the current pulse width source. If all channels are off, the query returns "NONE".
28 :TRIGger Commands :TRIGger:PATTern Commands Table 108 :TRIGger:PATTern Commands Summary Command Query Options and Query Returns :TRIGger:PATTern [,,] (see page 672) :TRIGger:PATTern? (see page 673) ::= "nn...n" where n ::= {0 | 1 | X | R | F} when = ASCii ::= "0xnn...n" where n ::= {0,..,9 | A,..
28 :TRIGger Commands :TRIGger:PATTern (see page 860) Command Syntax :TRIGger:PATTern ::= [,,] ::= "nn...n" where n ::= {0 | 1 | X | R | F} when = ASCii ::= "0xnn...n" where n ::= {0,..,9 | A,..
:TRIGger Commands NOTE 28 The optional and parameters should be sent together or not at all. The edge can be specified in the ASCII parameter. If the edge source and edge parameters are used, they take precedence. You can only specify an edge on one channel. When an edge is specified, the :TRIGger:PATTern:QUALifier does not apply. Query Syntax :TRIGger:PATTern? The :TRIGger:PATTern? query returns the pattern string, edge source, and edge.
28 :TRIGger Commands :TRIGger:PATTern:FORMat (see page 860) Command Syntax :TRIGger:PATTern:FORMat ::= {ASCii | HEX} The :TRIGger:PATTern:FORMat command sets the entry (and query) number base used by the :TRIGger:PATTern command. The default is ASCii. Query Syntax :TRIGger:PATTern:FORMat? The :TRIGger:PATTern:FORMat? query returns the currently set number base for pattern trigger patterns.
:TRIGger Commands 28 :TRIGger:PATTern:GREaterthan (see page 860) Command Syntax :TRIGger:PATTern:GREaterthan [] ::= minimum trigger duration in seconds in NR3 format ::= {s | ms | us | ns | ps } The :TRIGger:PATTern:GREaterthan command sets the minimum duration for the defined pattern when :TRIGger:PATTern:QUALifier is set to GREaterthan. The command also sets the timeout value when the :TRIGger:PATTern:QUALifier is set to TIMeout.
28 :TRIGger Commands :TRIGger:PATTern:LESSthan (see page 860) Command Syntax :TRIGger:PATTern:LESSthan [] ::= maximum trigger duration in seconds in NR3 format ::= {s | ms | us | ns | ps} The :TRIGger:PATTern:LESSthan command sets the maximum duration for the defined pattern when :TRIGger:PATTern:QUALifier is set to LESSthan. Query Syntax :TRIGger:PATTern:LESSthan? The :TRIGger:PATTern:LESSthan? query returns the duration time for the defined pattern.
28 :TRIGger Commands :TRIGger:PATTern:QUALifier (see page 860) Command Syntax :TRIGger:PATTern:QUALifier ::= {ENTered | GREaterthan | LESSthan | INRange | OUTRange | TIMeout} The :TRIGger:PATTern:QUALifier command qualifies when the trigger occurs: • ENTered — when the pattern is entered. • LESSthan — when the pattern is present for less than a time value. • GREaterthan — when the pattern is present for greater than a time value.
28 :TRIGger Commands • ":TRIGger:PATTern:LESSthan" on page 676 • ":TRIGger:PATTern:RANGe" on page 679 678 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
:TRIGger Commands 28 :TRIGger:PATTern:RANGe (see page 860) Command Syntax :TRIGger:PATTern:RANGe [], [] ::= 10 ns to 9.99 seconds in NR3 format ::= 15 ns to 10 seconds in NR3 format ::= {s | ms | us | ns | ps} The :TRIGger:PATTern:RANGe command sets the duration for the defined pattern when the :TRIGger:PATTern:QUALifier command is set to INRange or OUTRange.
28 :TRIGger Commands :TRIGger:RUNT Commands Table 109 :TRIGger:RUNT Commands Summary Command Query Options and Query Returns :TRIGger:RUNT:POLarit y (see page 681) :TRIGger:RUNT:POLarit y? (see page 681) ::= {POSitive | NEGative | EITHer} :TRIGger:RUNT:QUALifi er (see page 682) :TRIGger:RUNT:QUALifi er? (see page 682) ::= {GREaterthan | LESSthan | NONE} :TRIGger:RUNT:SOURce (see page 683) :TRIGger:RUNT:SOURce? (see page 683) ::= CHA
:TRIGger Commands 28 :TRIGger:RUNT:POLarity (see page 860) Command Syntax :TRIGger:RUNT:POLarity ::= {POSitive | NEGative | EITHer} The :TRIGger:RUNT:POLarity command sets the polarity for the runt trigger: • POSitive — positive runt pulses. • NEGative — negative runt pulses. • EITHer — either positive or negative runt pulses. Query Syntax :TRIGger:RUNT:POLarity? The :TRIGger:RUNT:POLarity? query returns the runt trigger polarity.
28 :TRIGger Commands :TRIGger:RUNT:QUALifier (see page 860) Command Syntax :TRIGger:RUNT:QUALifier ::= {GREaterthan | LESSthan | NONE} The :TRIGger:RUNT:QUALifier command selects the qualifier used for specifying runt pulse widths: • GREaterthan — triggers on runt pulses whose width is greater than the :TRIGger:RUNT:TIME. • LESSthan — triggers on runt pulses whose width is less than the :TRIGger:RUNT:TIME. • NONE — triggers on runt pulses of any width.
:TRIGger Commands 28 :TRIGger:RUNT:SOURce (see page 860) Command Syntax :TRIGger:RUNT:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :TRIGger:RUNT:SOURce command selects the channel used to produce the trigger. Query Syntax :TRIGger:RUNT:SOURce? The :TRIGger:RUNT:SOURce? query returns the current runt trigger source.
28 :TRIGger Commands :TRIGger:RUNT:TIME (see page 860) Command Syntax :TRIGger:RUNT:TIME [suffix] ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} When triggering on runt pulses whose width is greater than or less than a certain value (see :TRIGger:RUNT:QUALifier), the :TRIGger:RUNT:TIME command specifies the time used with the qualifer. Query Syntax :TRIGger:RUNT:TIME? The :TRIGger:RUNT:TIME? query returns the current runt pulse qualifier time setting.
28 :TRIGger Commands :TRIGger:SHOLd Commands Table 110 :TRIGger:SHOLd Commands Summary Command Query Options and Query Returns :TRIGger:SHOLd:SLOPe (see page 686) :TRIGger:SHOLd:SLOPe? (see page 686) ::= {NEGative | POSitive} :TRIGger:SHOLd:SOURce :CLOCk (see page 687) :TRIGger:SHOLd:SOURce :CLOCk? (see page 687) ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0
28 :TRIGger Commands :TRIGger:SHOLd:SLOPe (see page 860) Command Syntax :TRIGger:SHOLd:SLOPe ::= {NEGative | POSitive} The :TRIGger:SHOLd:SLOPe command sets the polarity for the TV trigger. Query Syntax :TRIGger:SHOLd:SLOPe? The :TRIGger:SHOLd:SLOPe? query returns the TV trigger polarity.
:TRIGger Commands 28 :TRIGger:SHOLd:SOURce:CLOCk (see page 860) Command Syntax :TRIGger:SHOLd:SOURce:CLOCk ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :TRIGger:SHOLd:SOURce:CLOCk command selects the channel used to produce the trigger.
28 :TRIGger Commands :TRIGger:SHOLd:SOURce:DATA (see page 860) Command Syntax :TRIGger:SHOLd:SOURce:DATA ::= {CHANnel | EXTernal} for DSO models ::= {CHANnel | DIGital} for MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :TRIGger:SHOLd:SOURce:DATA command selects the channel used to produce the trigger.
:TRIGger Commands 28 :TRIGger:SHOLd:TIME:HOLD (see page 860) Command Syntax :TRIGger:SHOLd:TIME:HOLD [suffix] ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} The :TRIGger:SHOLd:TIME:HOLD command allows triggering on a specific line of video. The line number limits vary with the standard and mode, as shown in the following table. Query Syntax :TRIGger:SHOLd:TIME:HOLD? The :TRIGger:SHOLd:TIME:HOLD? query returns the current TV trigger line number setting.
28 :TRIGger Commands :TRIGger:SHOLd:TIME:SETup (see page 860) Command Syntax :TRIGger:SHOLd:TIME:SETup [suffix] ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} The :TRIGger:SHOLd:TIME:SETup command allows triggering on a specific line of video. The line number limits vary with the standard and mode, as shown in the following table. Query Syntax :TRIGger:SHOLd:TIME:SETup? The :TRIGger:SHOLd:TIME:SETup? query returns the current TV trigger line number setting.
28 :TRIGger Commands :TRIGger:TRANsition Commands The :TRIGger:TRANsition comamnds set the rise/fall time trigger options.
28 :TRIGger Commands :TRIGger:TRANsition:QUALifier (see page 860) Command Syntax :TRIGger:TRANsition:QUALifier ::= {GREaterthan | LESSthan} The :TRIGger:TRANsition:QUALifier command specifies whether you are looking for rise/fall times greater than or less than a certain time value. The time value is set using the :TRIGger:TRANsition:TIME command.
:TRIGger Commands 28 :TRIGger:TRANsition:SLOPe (see page 860) Command Syntax :TRIGger:TRANsition:SLOPe ::= {NEGative | POSitive} The :TRIGger:TRANsition:SLOPe command specifies a POSitive rising edge or a NEGative falling edge. Query Syntax :TRIGger:TRANsition:SLOPe? The :TRIGger:TRANsition:SLOPe? query returns the current rise/fall time trigger slope setting.
28 :TRIGger Commands :TRIGger:TRANsition:SOURce (see page 860) Command Syntax :TRIGger:TRANsition:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :TRIGger:TRANsition:SOURce command selects the channel used to produce the trigger. Query Syntax :TRIGger:TRANsition:SOURce? The :TRIGger:TRANsition:SOURce? query returns the current transition trigger source.
:TRIGger Commands 28 :TRIGger:TRANsition:TIME (see page 860) Command Syntax :TRIGger:TRANsition:TIME [suffix] ::= floating-point number in NR3 format [suffix] ::= {s | ms | us | ns | ps} The :TRIGger:TRANsition:TIME command sets the time value for rise/fall time triggers. You also use the :TRIGger:TRANsition:QUALifier command to specify whether you are triggering on times greater than or less than this time value.
28 :TRIGger Commands :TRIGger:TV Commands Table 112 :TRIGger:TV Commands Summary Command Query Options and Query Returns :TRIGger:TV:LINE (see page 697) :TRIGger:TV:LINE? (see page 697) ::= integer in NR1 format :TRIGger:TV:MODE (see page 698) :TRIGger:TV:MODE? (see page 698) ::= {FIEld1 | FIEld2 | AFIelds | ALINes | LFIeld1 | LFIeld2 | LALTernate} :TRIGger:TV:POLarity (see page 699) :TRIGger:TV:POLarity? (see page 699) ::= {P
:TRIGger Commands 28 :TRIGger:TV:LINE (see page 860) Command Syntax :TRIGger:TV:LINE ::= integer in NR1 format The :TRIGger:TV:LINE command allows triggering on a specific line of video. The line number limits vary with the standard and mode, as shown in the following table.
28 :TRIGger Commands :TRIGger:TV:MODE (see page 860) Command Syntax :TRIGger:TV:MODE ::= {FIEld1 | FIEld2 | AFIelds | ALINes | LFIeld1 | LFIeld2 | LALTernate} The :TRIGger:TV:MODE command selects the TV trigger mode and field.
:TRIGger Commands 28 :TRIGger:TV:POLarity (see page 860) Command Syntax :TRIGger:TV:POLarity ::= {POSitive | NEGative} The :TRIGger:TV:POLarity command sets the polarity for the TV trigger. Query Syntax :TRIGger:TV:POLarity? The :TRIGger:TV:POLarity? query returns the TV trigger polarity.
28 :TRIGger Commands :TRIGger:TV:SOURce (see page 860) Command Syntax :TRIGger:TV:SOURce ::= {CHANnel} ::= 1 to (# analog channels) in NR1 format The :TRIGger:TV:SOURce command selects the channel used to produce the trigger. Query Syntax :TRIGger:TV:SOURce? The :TRIGger:TV:SOURce? query returns the current TV trigger source.
:TRIGger Commands 28 :TRIGger:TV:STANdard (see page 860) Command Syntax :TRIGger:TV:STANdard ::= {NTSC | PALM | PAL | SECam} The :TRIGger:TV:STANdard command selects the video standard: • NTSC • PAL • PAL- M • SECAM Query Syntax :TRIGger:TV:STANdard? The :TRIGger:TV:STANdard? query returns the current TV trigger standard setting.
28 :TRIGger Commands :TRIGger:USB Commands Table 114 :TRIGger:USB Commands Summary Command Query Options and Query Returns :TRIGger:USB:SOURce:D MINus (see page 703) :TRIGger:USB:SOURce:D MINus? (see page 703) ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format :TRIGger:USB:SOURce:D PLus (see page 704) :TRIGger:USB:SOURce:D
28 :TRIGger Commands :TRIGger:USB:SOURce:DMINus (see page 860) Command Syntax :TRIGger:USB:SOURce:DMINus ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :TRIGger:USB:SOURce:DMINus command sets the source for the USB D- signal.
28 :TRIGger Commands :TRIGger:USB:SOURce:DPLus (see page 860) Command Syntax :TRIGger:USB:SOURce:DPLus ::= {CHANnel | EXTernal} for the DSO models ::= {CHANnel | DIGital} for the MSO models ::= 1 to (# analog channels) in NR1 format ::= 0 to (# digital channels - 1) in NR1 format The :TRIGger:USB:SOURce:DPLus command sets the source for the USB D+ signal.
28 :TRIGger Commands :TRIGger:USB:SPEed (see page 860) Command Syntax :TRIGger:USB:SPEed ::= {LOW | FULL} The :TRIGger:USB:SPEed command sets the expected USB signal speed to be Low Speed (1.5 Mb/s) or Full Speed (12 Mb/s). Query Syntax :TRIGger:USB:SPEed? The :TRIGger:USB:SPEed? query returns the current speed value for the USB signal.
28 :TRIGger Commands :TRIGger:USB:TRIGger (see page 860) Command Syntax :TRIGger:USB:TRIGger ::= {SOP | EOP | ENTersuspend | EXITsuspend | RESet} The :TRIGger:USB:TRIGger command sets where the USB trigger will occur: • SOP — Start of packet. • EOP — End of packet. • ENTersuspend — Enter suspend state. • EXITsuspend — Exit suspend state. • RESet — Reset complete. Query Syntax :TRIGger:USB:TRIGger? The :TRIGger:USB:TRIGger? query returns the current USB trigger value.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 29 :WAVeform Commands Provide access to waveform data. See "Introduction to :WAVeform Commands" on page 709.
29 :WAVeform Commands Table 115 :WAVeform Commands Summary (continued) Command Query Options and Query Returns :WAVeform:POINts:MODE (see page 722) :WAVeform:POINts:MODE ? (see page 722) ::= {NORMal | MAXimum | RAW} n/a :WAVeform:PREamble? (see page 724) ::= , ,,, , , ,, , ::= an integer in NR1 format: • 0 for B
29 :WAVeform Commands Table 115 :WAVeform Commands Summary (continued) Command Query Options and Query Returns :WAVeform:UNSigned {{0 | OFF} | {1 | ON}} (see page 735) :WAVeform:UNSigned? (see page 735) {0 | 1} :WAVeform:VIEW (see page 736) :WAVeform:VIEW? (see page 736) ::= {MAIN} n/a :WAVeform:XINCrement? (see page 737) ::= x-increment in the current preamble in NR3 format n/a :WAVeform:XORigin? (see page 738) ::= x-origin value in the current pr
29 :WAVeform Commands Data Acquisition Types There are four types of waveform acquisitions that can be selected for analog channels with the :ACQuire:TYPE command (see page 199): NORMal, AVERage, PEAK, and HRESolution. Digital channels are always acquired using NORMal. When the data is acquired using the :DIGitize command (see page 163) or :RUN command (see page 180), the data is placed in the channel buffer of the specified source.
:WAVeform Commands 29 Normal data consists of the last data point (hit) in each time bucket. This data is transmitted over the programming interface in a linear fashion starting with time bucket 0 and going through time bucket n - 1, where n is the number returned by the :WAVeform:POINts? query (see page 720). Only the magnitude values of each data point are transmitted.
29 :WAVeform Commands The high resolution (smoothing) mode is used to reduce noise at slower sweep speeds where the digitizer samples faster than needed to fill memory for the displayed time range. Data Conversion Word or byte data sent from the oscilloscope must be scaled for useful interpretation. The values used to interpret the data are the X and Y references, X and Y origins, and X and Y increments. These values are read from the waveform preamble. Each channel has its own waveform preamble.
:WAVeform Commands 29 Use the :WAVeform:UNSigned command (see page 735) to control whether data values are sent as unsigned or signed integers. This command can be used to match the instrument's internal data type to the data type used by the programming language. This command has no effect if the data format is ASCii.
29 :WAVeform Commands Digital Channel Data (MSO models only) The waveform record for digital channels is similar to that of analog channels. The main difference is that the data points represent either DIGital0,..,7 (POD1), DIGital8,..,15 (POD2), or any grouping of digital channels (BUS1 or BUS2). For digital channels, :WAVeform:UNSigned (see page 735) must be set to ON. Digital Channel POD Data Format Data for digital channels is only available in groups of 8 bits (Pod1 = D0 D7, Pod2 = D8 - D15).
:WAVeform Commands 29 :WAVeform:BYTeorder (see page 860) Command Syntax :WAVeform:BYTeorder ::= {LSBFirst | MSBFirst} The :WAVeform:BYTeorder command sets the output sequence of the WORD data. The parameter MSBFirst sets the most significant byte to be transmitted first. The parameter LSBFirst sets the least significant byte to be transmitted first. This command affects the transmitting sequence only when :WAVeform:FORMat WORD is selected. The default setting is LSBFirst.
29 :WAVeform Commands :WAVeform:COUNt (see page 860) Query Syntax :WAVeform:COUNt? The :WAVeform:COUNT? query returns the count used to acquire the current waveform. This may differ from current values if the unit has been stopped and its configuration modified. For all acquisition types except average, this value is 1.
:WAVeform Commands 29 :WAVeform:DATA (see page 860) Query Syntax :WAVeform:DATA? The :WAVeform:DATA query returns the binary block of sampled data points transmitted using the IEEE 488.2 arbitrary block data format. The binary data is formatted according to the settings of the :WAVeform:UNSigned, :WAVeform:BYTeorder, :WAVeform:FORMat, and :WAVeform:SOURce commands. The number of points returned is controlled by the :WAVeform:POINts command.
29 :WAVeform Commands ' ' ' ' Where: ' = #800001000 (This is an example header) ' The "#8" may be stripped off of the header and the remaining ' numbers are the size, in bytes, of the waveform data block. The ' size can vary depending on the number of points acquired for the ' waveform. You can then read that number of bytes from the ' oscilloscope and the terminating NL character. ' Dim lngI As Long Dim lngDataValue As Long varQueryResult = myScope.
29 :WAVeform Commands :WAVeform:FORMat (see page 860) Command Syntax :WAVeform:FORMat ::= {WORD | BYTE | ASCii} The :WAVeform:FORMat command sets the data transmission mode for waveform data points. This command controls how the data is formatted when sent from the oscilloscope. • ASCii formatted data converts the internal integer data values to real Y- axis values. Values are transferred as ASCii digits in floating point notation, separated by commas.
29 :WAVeform Commands :WAVeform:POINts (see page 860) Command Syntax :WAVeform:POINts <# points> <# points> ::= {100 | 250 | 500 | 1000 | } if waveform points mode is NORMal <# points> ::= {100 | 250 | 500 | 1000 | 2000 | 5000 | 10000 | 20000 | 50000 | 100000 | 200000 | 500000 | 1000000 | 2000000 | 4000000 | 8000000 | } if waveform points mode is MAXimum or RAW ::= {NORMal | MAXimum | RAW} NOTE The option is deprecated.
:WAVeform Commands 29 | 4000000 | 8000000 | } if waveform points mode is MAXimum or RAW NOTE See Also If a full screen of data is not displayed, the number of points returned will not be 1000 or an even divisor of it.
29 :WAVeform Commands :WAVeform:POINts:MODE (see page 860) Command Syntax :WAVeform:POINts:MODE ::= {NORMal | MAXimum | RAW} The :WAVeform:POINts:MODE command sets the data record to be transferred with the :WAVeform:DATA? query. For the analog or digital sources, there are two different records that can be transferred: • The first is the raw acquisition record. The maximum number of points available in this record is returned by the :ACQuire:POINts? query.
:WAVeform Commands 29 The :WAVeform:POINts:MODE? query returns the current points mode. Setting the points mode will affect what data is transferred. See the discussion above.
29 :WAVeform Commands :WAVeform:PREamble (see page 860) Query Syntax :WAVeform:PREamble? The :WAVeform:PREamble query requests the preamble information for the selected waveform source. The preamble data contains information concerning the vertical and horizontal scaling of the data of the corresponding channel.
:WAVeform Commands 29 • ":DIGitize" on page 163 • ":WAVeform:COUNt" on page 716 • ":WAVeform:DATA" on page 717 • ":WAVeform:FORMat" on page 719 • ":WAVeform:POINts" on page 720 • ":WAVeform:TYPE" on page 734 • ":WAVeform:XINCrement" on page 737 • ":WAVeform:XORigin" on page 738 • ":WAVeform:XREFerence" on page 739 • ":WAVeform:YINCrement" on page 740 • ":WAVeform:YORigin" on page 741 • ":WAVeform:YREFerence" on page 742 Example Code ' GET_PREAMBLE - The preamble block contains all of the current ' WAVEFO
29 :WAVeform Commands sngYIncrement = Preamble(7) sngYOrigin = Preamble(8) lngYReference = Preamble(9) See complete example programs at: Chapter 37, “Programming Examples,” starting on page 869 726 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
29 :WAVeform Commands :WAVeform:SEGMented:COUNt (see page 860) Query Syntax NOTE :WAVeform:SEGMented:COUNt? This command is available when the segmented memory option (Option SGM) is enabled. The :WAVeform:SEGMented:COUNt query returns the number of memory segments in the acquired data. You can use the :WAVeform:SEGMented:COUNt? query while segments are being acquired (although :DIGitize blocks subsequent queries until the full segmented acquisition is complete).
29 :WAVeform Commands :WAVeform:SEGMented:TTAG (see page 860) Query Syntax NOTE :WAVeform:SEGMented:TTAG? This command is available when the segmented memory option (Option SGM) is enabled. The :WAVeform:SEGMented:TTAG? query returns the time tag of the currently selected segmented memory index. The index is selected using the :ACQuire:SEGMented:INDex command.
29 :WAVeform Commands :WAVeform:SOURce (see page 860) Command Syntax :WAVeform:SOURce ::= {CHANnel | FUNCtion | MATH | WMEMory | SBUS{1 | 2}} for DSO models ::= {CHANnel | POD{1 | 2} | BUS{1 | 2} | FUNCtion | MATH | WMEMory | SBUS{1 | 2}} for MSO models ::= 1 to (# analog channels) in NR1 format ::= {1 | 2} The :WAVeform:SOURce command selects the analog channel, function, digital pod, digital bus, reference waveform, or serial decode bus to be used as the
29 :WAVeform Commands NOTE Return Format MATH is an alias for FUNCtion. The :WAVeform:SOURce? Query returns FUNC if the source is FUNCtion or MATH.
:WAVeform Commands ' where is: ' FORMAT : int16 ' TYPE : int16 ' POINTS : int32 ' COUNT : int32 ' XINCREMENT : float64 ' XORIGIN : float64 ' XREFERENCE : int32 ' ' YINCREMENT : float32 ' YORIGIN : float32 ' YREFERENCE : int32 ' Dim Preamble() Dim intFormat As Integer Dim intType As Integer Dim lngPoints As Long Dim lngCount As Long Dim dblXIncrement As Double Dim dblXOrigin As Double Dim lngXReference As Long Dim sngYIncrement As Single Dim sngYOrigin As Single Dim lngYReference As Long Di
29 :WAVeform Commands " V" + vbCrLf strOutput = strOutput + "Offset = " + _ FormatNumber((lngVSteps / 2 - lngYReference) * _ sngYIncrement + sngYOrigin) + " V" + vbCrLf strOutput = strOutput + "Sec/Div = " + _ FormatNumber(lngPoints * dblXIncrement / 10 * _ 1000000) + " us" + vbCrLf strOutput = strOutput + "Delay = " + _ FormatNumber(((lngPoints / 2 - lngXReference) * _ dblXIncrement + dblXOrigin) * 1000000) + " us" + vbCrLf ' QUERY_WAVE_DATA - Outputs waveform data that is stored in a buffer.
29 :WAVeform Commands :WAVeform:SOURce:SUBSource (see page 860) Command Syntax :WAVeform:SOURce:SUBSource ::= {{SUB0 | RX | MOSI} | {SUB1 | TX | MISO}} If the :WAVeform:SOURce is SBUS (serial decode), more than one data set may be available, and this command lets you choose from the available data sets. When using UART serial decode, this option lets you get "TX" data. (TX is an alias for SUB1.) The default, SUB0, specifies "RX" data. (RX is an alias for SUB0.
29 :WAVeform Commands :WAVeform:TYPE (see page 860) Query Syntax :WAVeform:TYPE? The :WAVeform:TYPE? query returns the acquisition mode associated with the currently selected waveform. The acquisition mode is set by the :ACQuire:TYPE command. Return Format ::= {NORM | PEAK | AVER | HRES} NOTE See Also If the :WAVeform:SOURce is POD1, POD2, or SBUS1, SBUS2, the type is always NORM.
:WAVeform Commands 29 :WAVeform:UNSigned (see page 860) Command Syntax :WAVeform:UNSigned ::= {{0 | OFF} | {1 | ON}} The :WAVeform:UNSigned command turns unsigned mode on or off for the currently selected waveform. Use the WAVeform:UNSigned command to control whether data values are sent as unsigned or signed integers. This command can be used to match the instrument's internal data type to the data type used by the programming language.
29 :WAVeform Commands :WAVeform:VIEW (see page 860) Command Syntax :WAVeform:VIEW ::= {MAIN} The :WAVeform:VIEW command sets the view setting associated with the currently selected waveform. Currently, the only legal value for the view setting is MAIN. Query Syntax :WAVeform:VIEW? The :WAVeform:VIEW? query returns the view setting associated with the currently selected waveform.
:WAVeform Commands 29 :WAVeform:XINCrement (see page 860) Query Syntax :WAVeform:XINCrement? The :WAVeform:XINCrement? query returns the x- increment value for the currently specified source. This value is the time difference between consecutive data points in seconds.
29 :WAVeform Commands :WAVeform:XORigin (see page 860) Query Syntax :WAVeform:XORigin? The :WAVeform:XORigin? query returns the x- origin value for the currently specified source. XORigin is the X- axis value of the data point specified by the :WAVeform:XREFerence value. In this product, that is always the X- axis value of the first data point (XREFerence = 0).
:WAVeform Commands 29 :WAVeform:XREFerence (see page 860) Query Syntax :WAVeform:XREFerence? The :WAVeform:XREFerence? query returns the x- reference value for the currently specified source. This value specifies the index of the data point associated with the x- origin data value. In this product, the x- reference point is the first point displayed and XREFerence is always 0.
29 :WAVeform Commands :WAVeform:YINCrement (see page 860) Query Syntax :WAVeform:YINCrement? The :WAVeform:YINCrement? query returns the y- increment value in volts for the currently specified source. This value is the voltage difference between consecutive data values. The y- increment for digital waveforms is always "1".
:WAVeform Commands 29 :WAVeform:YORigin (see page 860) Query Syntax :WAVeform:YORigin? The :WAVeform:YORigin? query returns the y- origin value for the currently specified source. This value is the Y- axis value of the data value specified by the :WAVeform:YREFerence value. For this product, this is the Y- axis value of the center of the screen.
29 :WAVeform Commands :WAVeform:YREFerence (see page 860) Query Syntax :WAVeform:YREFerence? The :WAVeform:YREFerence? query returns the y- reference value for the currently specified source. This value specifies the data point value where the y- origin occurs. In this product, this is the data point value of the center of the screen. It is undefined if the format is ASCii.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 30 :WGEN Commands When the built- in waveform generator is licensed (Option WGN), you can use it to output sine, square, ramp, pulse, DC, and noise waveforms. The :WGEN commands are used to select the waveform function and parameters. See "Introduction to :WGEN Commands" on page 744.
30 :WGEN Commands Table 116 :WGEN Commands Summary (continued) Command Query Options and Query Returns :WGEN:VOLTage (see page 755) :WGEN:VOLTage? (see page 755) ::= amplitude in volts in NR3 format :WGEN:VOLTage:HIGH (see page 756) :WGEN:VOLTage:HIGH? (see page 756) ::= high-level voltage in volts, in NR3 format :WGEN:VOLTage:LOW (see page 757) :WGEN:VOLTage:LOW? (see page 757) ::= low-level voltage in volts, in NR3 format :WGEN:VOLTage:OFFSet
:WGEN Commands 30 :WGEN:FREQuency (see page 860) Command Syntax :WGEN:FREQuency ::= frequency in Hz in NR3 format For Sine, Square, Ramp, and Pulse waveforms, the :WGEN:FREQuency command specifies the frequency of the waveform. You can also specify the frequency indirectly using the :WGEN:PERiod command. Query Syntax :WGEN:FREQuency? The :WGEN:FREQuency? query returns the currently set waveform generator frequency.
30 :WGEN Commands :WGEN:FUNCtion (see page 860) Command Syntax :WGEN:FUNCtion ::= {SINusoid | SQUare | RAMP | PULSe | NOISe | DC} The :WGEN:FUNCtion command selects the type of waveform: 746 Waveform Type Characteristics SINusoid Use these commands to set the sine signal parameters: • ":WGEN:FREQuency" on page 745 • ":WGEN:PERiod" on page 753 • ":WGEN:VOLTage" on page 755 • ":WGEN:VOLTage:OFFSet" on page 758 • ":WGEN:VOLTage:HIGH" on page 756 • ":WGEN:VOLTage:LOW" on page 757 The f
:WGEN Commands Waveform Type PULSe 30 Characteristics Use these commands to set the pulse signal parameters: ":WGEN:FREQuency" on page 745 ":WGEN:PERiod" on page 753 ":WGEN:VOLTage" on page 755 ":WGEN:VOLTage:OFFSet" on page 758 ":WGEN:VOLTage:HIGH" on page 756 ":WGEN:VOLTage:LOW" on page 757 ":WGEN:FUNCtion:PULSe:WIDTh" on page 748 The frequency can be adjusted from 100 mHz to 10 MHz. The pulse width can be adjusted from 20 ns to the period minus 20 ns.
30 :WGEN Commands :WGEN:FUNCtion:PULSe:WIDTh (see page 860) Command Syntax :WGEN:FUNCtion:PULSe:WIDTh ::= pulse width in seconds in NR3 format For Pulse waveforms, the :WGEN:FUNCtion:PULSe:WIDTh command specifies the width of the pulse. The pulse width can be adjusted from 20 ns to the period minus 20 ns. Query Syntax :WGEN:FUNCtion:PULSe:WIDTh? The :WGEN:FUNCtion:PULSe:WIDTh? query returns the currently set pulse width.
:WGEN Commands 30 :WGEN:FUNCtion:RAMP:SYMMetry (see page 860) Command Syntax :WGEN:FUNCtion:RAMP:SYMMetry ::= symmetry percentage from 0% to 100% in NR3 format For Ramp waveforms, the :WGEN:FUNCtion:RAMP:SYMMetry command specifies the symmetry of the waveform. Symmetry represents the amount of time per cycle that the ramp waveform is rising. Query Syntax :WGEN:FUNCtion:RAMP:SYMMetry? The :WGEN:FUNCtion:RAMP:SYMMetry? query returns the currently set ramp symmetry.
30 :WGEN Commands :WGEN:FUNCtion:SQUare:DCYCle (see page 860) Command Syntax :WGEN:FUNCtion:SQUare:DCYCle ::= duty cycle percentage from 20% to 80% in NR3 format For Square waveforms, the :WGEN:FUNCtion:SQUare:DCYCle command specifies the square wave duty cycle. Duty cycle is the percentage of the period that the waveform is high. Query Syntax :WGEN:FUNCtion:SQUare:DCYCle? The :WGEN:FUNCtion:SQUare:DCYCle? query returns the currently set square wave duty cycle.
30 :WGEN Commands :WGEN:OUTPut (see page 860) Command Syntax :WGEN:OUTPut ::= {{1 | ON} | {0 | OFF} The :WGEN:OUTPut command specifies whether the waveform generator signal output is ON (1) or OFF (0). Query Syntax :WGEN:OUTPut? The :WGEN:OUTPut? query returns the current state of the waveform generator output setting.
30 :WGEN Commands :WGEN:OUTPut:LOAD (see page 860) Command Syntax :WGEN:OUTPut:LOAD ::= {ONEMeg | FIFTy} The :WGEN:OUTPut:LOAD command selects the expected output load impedance. The output impedance of the Gen Out BNC is fixed at 50 ohms. However, the output load selection lets the waveform generator display the correct amplitude and offset levels for the expected output load.
30 :WGEN Commands :WGEN:PERiod (see page 860) Command Syntax :WGEN:PERiod ::= period in seconds in NR3 format For Sine, Square, Ramp, and Pulse waveforms, the :WGEN:PERiod command specifies the period of the waveform. You can also specify the period indirectly using the :WGEN:FREQuency command. Query Syntax :WGEN:PERiod? The :WGEN:PERiod? query returns the currently set waveform generator period.
30 :WGEN Commands :WGEN:RST (see page 860) Command Syntax :WGEN:RST The :WGEN:RST command restores the waveform generator factory default settings (1 kHz sine wave, 500 mVpp, 0 V offset).
:WGEN Commands 30 :WGEN:VOLTage (see page 860) Command Syntax :WGEN:VOLTage ::= amplitude in volts in NR3 format For Sine, Square, Ramp, Pulse, and Noise waveforms, the :WGEN:VOLTage command specifies the waveform's amplitude. Use the :WGEN:VOLTage:OFFSet command to specify the offset voltage. You can also specify the amplitude and offset indirectly using the :WGEN:VOLTage:HIGH and :WGEN:VOLTage:LOW commands.
30 :WGEN Commands :WGEN:VOLTage:HIGH (see page 860) Command Syntax :WGEN:VOLTage:HIGH ::= high-level voltage in volts, in NR3 format For Sine, Square, Ramp, Pulse, and Noise waveforms, the :WGEN:VOLTage:HIGH command specifies the waveform's high- level voltage. Use the :WGEN:VOLTage:LOW command to specify the low- level voltage. You can also specify the high- level and low- level voltages indirectly using the :WGEN:VOLTage and :WGEN:VOLTage:OFFSet commands.
:WGEN Commands 30 :WGEN:VOLTage:LOW (see page 860) Command Syntax :WGEN:VOLTage:LOW ::= low-level voltage in volts, in NR3 format For Sine, Square, Ramp, Pulse, and Noise waveforms, the :WGEN:VOLTage:LOW command specifies the waveform's low- level voltage. Use the :WGEN:VOLTage:HIGH command to specify the high- level voltage. You can also specify the high- level and low- level voltages indirectly using the :WGEN:VOLTage and :WGEN:VOLTage:OFFSet commands.
30 :WGEN Commands :WGEN:VOLTage:OFFSet (see page 860) Command Syntax :WGEN:VOLTage:OFFSet ::= offset in volts in NR3 format For Sine, Square, Ramp, Pulse, and Noise waveforms, the :WGEN:VOLTage:OFFSet command specifies the waveform's offset voltage. Use the :WGEN:VOLTage command to specify the amplitude. You can also specify the amplitude and offset indirectly using the :WGEN:VOLTage:HIGH and :WGEN:VOLTage:LOW commands.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 31 :WMEMory Commands Control reference waveforms.
31 :WMEMory Commands Table 117 :WMEMory Commands Summary (continued) Command Query Options and Query Returns :WMEMory:YRANge [suffix] (see page 767) :WMEMory:YRANge? (see page 767) ::= 1-2 in NR1 format ::= vertical full-scale range value in NR3 format [suffix] ::= {V | mV} :WMEMory:YSCale [suffix] (see page 768) :WMEMory:YSCale? (see page 768) ::= 1-2 in NR1 format ::= vertical units per division value in NR3 format [suffix] ::= {V | mV} 760
:WMEMory Commands 31 :WMEMory:CLEar (see page 860) Command Syntax :WMEMory:CLEar ::= 1-2 in NR1 format The :WMEMory:CLEar command clears the specified reference waveform location.
31 :WMEMory Commands :WMEMory:DISPlay (see page 860) Command Syntax :WMEMory:DISPlay ::= 1-2 in NR1 format ::= {{1 | ON} | {0 | OFF}} The :WMEMory:DISPlay command turns the display of the specified reference waveform on or off. There are two reference waveform locations, but only one reference waveform can be displayed at a time. That means, if :WMEMory1:DISPlay is ON, sending the :WMEMory2:DISPlay ON command will automatically set :WMEMory1:DISPlay OFF.
31 :WMEMory Commands :WMEMory:LABel (see page 860) Command Syntax :WMEMory:LABel ::= 1-2 in NR1 format ::= quoted ASCII string NOTE Label strings are 10 characters or less, and may contain any commonly used ASCII characters. Labels with more than 10 characters are truncated to 10 characters. Lower case characters are converted to upper case. The :WMEMory:LABel command sets the reference waveform label to the string that follows.
31 :WMEMory Commands :WMEMory:SAVE (see page 860) Command Syntax :WMEMory:SAVE ::= 1-2 in NR1 format ::= {CHANnel | FUNCtion | MATH} ::= 1 to (# analog channels) in NR1 format The :WMEMory:SAVE command copies the analog channel or math function waveform to the specified reference waveform location. NOTE See Also Only ADD or SUBtract math operations can be saved as reference waveforms.
:WMEMory Commands 31 :WMEMory:SKEW (see page 860) Command Syntax :WMEMory:SKEW ::= 1-2 in NR1 format ::= time in seconds in NR3 format The :WMEMory:SKEW command sets the skew factor for the specified reference waveform. Query Syntax :WMEMory:SKEW? The :WMEMory:SKEW? query returns the current skew setting for the selected reference waveform.
31 :WMEMory Commands :WMEMory:YOFFset (see page 860) Command Syntax :WMEMory:YOFFset [] ::= 1-2 in NR1 format ::= vertical offset value in NR3 format ::= {V | mV} The :WMEMory:YOFFset command sets the value that is represented at center screen for the selected reference waveform. The range of legal values varies with the value set by the :WMEMory:YRANge or :WMEMory:YSCale commands.
:WMEMory Commands 31 :WMEMory:YRANge (see page 860) Command Syntax :WMEMory:YRANge [] ::= 1-2 in NR1 format ::= vertical full-scale range value in NR3 format ::= {V | mV} The :WMEMory:YRANge command defines the full- scale vertical axis of the selected reference waveform. Legal values for the range are copied from the original source waveform (that is, the analog channel or math function waveform that was originally saved as a reference waveform).
31 :WMEMory Commands :WMEMory:YSCale (see page 860) Command Syntax :WMEMory:YSCale [] ::= 1-2 in NR1 format ::= vertical units per division in NR3 format ::= {V | mV} The :WMEMory:YSCale command sets the vertical scale, or units per division, of the selected reference waveform. Legal values for the scale are copied from the original source waveform (that is, the analog channel or math function waveform that was originally saved as a reference waveform).
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 32 Obsolete and Discontinued Commands Obsolete commands are older forms of commands that are provided to reduce customer rework for existing systems and programs (see"Obsolete Commands" on page 860).
32 Obsolete and Discontinued Commands 770 Obsolete Command Current Command Equivalent Behavior Differences :CHANnel:INPut (see page 778) :CHANnel:IMPedance (see page 227) :CHANnel:PMODe (see page 779) none :DISPlay:CONNect (see page 780) :DISPlay:VECTors (see page 262) :DISPlay:ORDer (see page 781) none :ERASe (see page 782) :DISplay:CLEar (see page 257) :EXTernal:PMODe (see page 783) none FUNCtion1, FUNCtion2 :FUNCtion Commands (see page 269) ADD not included :FUNCtion:SOURce (
Obsolete and Discontinued Commands 32 Obsolete Command Current Command Equivalent :MEASure:TMAX (see page 795) :MEASure:XMAX (see page 382) :MEASure:TMIN (see page 796) :MEASure:XMIN (see page 383) :MEASure:TSTArt (see page 797) :MARKer:X1Position (see page 312) :MEASure:TSTOp (see page 798) :MARKer:X2Position (see page 314) :MEASure:TVOLt (see page 799) :MEASure:TVALue (see page 369) TVALue measures additional values such as db, Vs, etc.
32 Obsolete and Discontinued Commands Discontinued Commands 772 Obsolete Command Current Command Equivalent :SAVE:IMAGe:AREA (see page 815) none :TIMebase:DELay (see page 817) :TIMebase:POSition (see page 632) or :TIMebase:WINDow:POSition (see page 637) :SBUS:LIN:SIGNal:DEFiniti on (see page 816) none :TRIGger:THReshold (see page 818) :POD:THReshold (see page 423) or :DIGital:THReshold (see page 253) :TRIGger:TV:TVMode (see page 819) :TRIGger:TV:MODE (see page 698) Behavior Differenc
Obsolete and Discontinued Commands Discontinued Command Current Command Equivalent DISPlay:POSition none DISPlay:ROW none DISPlay:TEXT none FUNCtion:MOVE none FUNCtion:PEAKs none HARDcopy:ADDRess none Only parallel printer port is supported.
32 Obsolete and Discontinued Commands :CHANnel:ACTivity (see page 860) Command Syntax :CHANnel:ACTivity The :CHANnel:ACTivity command clears the cumulative edge variables for the next activity query. NOTE Query Syntax The :CHANnel:ACTivity command is an obsolete command provided for compatibility to previous oscilloscopes. Use the :ACTivity command (see page 155) instead.
Obsolete and Discontinued Commands 32 :CHANnel:LABel (see page 860) Command Syntax :CHANnel:LABel ::= {CHANnel1 | CHANnel2 | DIGital} ::= 0 to (# digital channels - 1) in NR1 format ::= quoted ASCII string The :CHANnel:LABel command sets the source text to the string that follows. Setting a channel will also result in the name being added to the label list.
32 Obsolete and Discontinued Commands :CHANnel:THReshold (see page 860) Command Syntax :CHANnel:THReshold , [, ] ::= {POD1 | POD2} ::= {CMOS | ECL | TTL | USERdef} ::= voltage for USERdef in NR3 format [volt_type] [volt_type] ::= {V | mV (-3) | uV (-6)} The :CHANnel:THReshold command sets the threshold for a group of channels. The threshold is either set to a predefined value or to a user- defined value.
32 Obsolete and Discontinued Commands :CHANnel2:SKEW (see page 860) Command Syntax :CHANnel2:SKEW ::= skew time in NR3 format ::= -100 ns to +100 ns The :CHANnel2:SKEW command sets the skew between channels 1 and 2. The maximum skew is +/- 100 ns. You can use the oscilloscope's analog probe skew control to remove cable delay errors between channel 1 and channel 2.
32 Obsolete and Discontinued Commands :CHANnel:INPut (see page 860) Command Syntax :CHANnel:INPut ::= {ONEMeg | FIFTy} ::= 1 to (# analog channels) in NR1 format The :CHANnel:INPut command selects the input impedance setting for the specified channel. The legal values for this command are ONEMeg (1 M) and FIFTy (50). NOTE Query Syntax The :CHANnel:INPut command is an obsolete command provided for compatibility to previous oscilloscopes.
Obsolete and Discontinued Commands 32 :CHANnel:PMODe (see page 860) Command Syntax :CHANnel:PMODe ::= {AUTo | MANual} ::= 1 to (# analog channels) in NR1 format The probe sense mode is controlled internally and cannot be set. If a probe with sense is connected to the specified channel, auto sensing is enabled; otherwise, the mode is manual. If the PMODe sent matches the oscilloscope's setting, the command will be accepted.
32 Obsolete and Discontinued Commands :DISPlay:CONNect (see page 860) Command Syntax :DISPlay:CONNect ::= {{ 1 | ON} | {0 | OFF}} The :DISPlay:CONNect command turns vectors on and off. When vectors are turned on, the oscilloscope displays lines connecting sampled data points. When vectors are turned off, only the sampled data is displayed. NOTE Query Syntax The :DISPlay:CONNEct command is an obsolete command provided for compatibility to previous oscilloscopes.
Obsolete and Discontinued Commands 32 :DISPlay:ORDer (see page 860) Query Syntax :DISPlay:ORDer? The :DISPlay:ORDer? query returns a list of digital channel numbers in screen order, from top to bottom, separated by commas. Busing is displayed as digital channels with no separator. For example, in the following list, the bus consists of digital channels 4 and 5: DIG1, DIG4 DIG5, DIG7.
32 Obsolete and Discontinued Commands :ERASe (see page 860) Command Syntax :ERASe The :ERASe command erases the screen. NOTE 782 The :ERASe command is an obsolete command provided for compatibility to previous oscilloscopes. Use the :DISplay:CLEar command (see page 257) instead.
Obsolete and Discontinued Commands 32 :EXTernal:PMODe (see page 860) Command Syntax :EXTernal:PMODe ::= {AUTo | MANual} The probe sense mode is controlled internally and cannot be set. If a probe with sense is connected to the specified channel, auto sensing is enabled; otherwise, the mode is manual. If the pmode sent matches the oscilloscope's setting, the command will be accepted. Otherwise, a setting conflict error is generated.
32 Obsolete and Discontinued Commands :FUNCtion:SOURce (see page 860) Command Syntax :FUNCtion:SOURce ::= {CHANnel | ADD | SUBTract | MULTiply} ::= 1 to (# analog channels) in NR1 format The :FUNCtion:SOURce command is only used when an FFT (Fast Fourier Transform), DIFF, or INT operation is selected (see the:FUNCtion:OPERation command for more information about selecting an operation). The :FUNCtion:SOURce command selects the source for function operations.
Obsolete and Discontinued Commands 32 :FUNCtion:VIEW (see page 860) Command Syntax :FUNCtion:VIEW ::= {{1 | ON} | (0 | OFF}} The :FUNCtion:VIEW command turns the selected function on or off. When ON is selected, the function performs as specified using the other FUNCtion commands. When OFF is selected, function is neither calculated nor displayed. NOTE Query Syntax The :FUNCtion:VIEW command is provided for backward compatibility to previous oscilloscopes.
32 Obsolete and Discontinued Commands :HARDcopy:DESTination (see page 860) Command Syntax :HARDcopy:DESTination ::= {CENTronics | FLOPpy} The :HARDcopy:DESTination command sets the hardcopy destination. NOTE Query Syntax The :HARDcopy:DESTination command is an obsolete command provided for compatibility to previous oscilloscopes. Use the :HARDcopy:FILename command (see page 787) instead.
Obsolete and Discontinued Commands 32 :HARDcopy:FILename (see page 860) Command Syntax :HARDcopy:FILename ::= quoted ASCII string The HARDcopy:FILename command sets the output filename for those print formats whose output is a file. NOTE Query Syntax The :HARDcopy:FILename command is an obsolete command provided for compatibility to previous oscilloscopes. Use the :SAVE:FILename command (see page 436) and :RECall:FILename command (see page 427) instead.
32 Obsolete and Discontinued Commands :HARDcopy:GRAYscale (see page 860) Command Syntax :HARDcopy:GRAYscale ::= {{OFF | 0} | {ON | 1}} The :HARDcopy:GRAYscale command controls whether grayscaling is performed in the hardcopy dump. NOTE Query Syntax The :HARDcopy:GRAYscale command is an obsolete command provided for compatibility to previous oscilloscopes. Use the :HARDcopy:PALette command (see page 301) instead.
Obsolete and Discontinued Commands 32 :HARDcopy:IGColors (see page 860) Command Syntax :HARDcopy:IGColors ::= {{OFF | 0} | {ON | 1}} The HARDcopy:IGColors command controls whether the graticule colors are inverted or not. NOTE Query Syntax The :HARDcopy:IGColors command is an obsolete command provided for compatibility to previous oscilloscopes. Use the :HARDcopy:INKSaver (see page 293) command instead.
32 Obsolete and Discontinued Commands :HARDcopy:PDRiver (see page 860) Command Syntax :HARDcopy:PDRiver ::= {AP2Xxx | AP21xx | {AP2560 | AP25} | {DJ350 | DJ35} | DJ6xx | {DJ630 | DJ63} | DJ6Special | DJ6Photo | DJ8Special | DJ8xx | DJ9Vip | OJPRokx50 | DJ9xx | GVIP | DJ55xx | {PS470 | PS47} {PS100 | PS10} | CLASer | MLASer | LJFastraster | POSTscript} The HARDcopy:PDRiver command sets the hardcopy printer driver used for the selected printer.
Obsolete and Discontinued Commands 32 :MEASure:LOWer (see page 860) Command Syntax :MEASure:LOWer The :MEASure:LOWer command sets the lower measurement threshold value. This value and the UPPer value represent absolute values when the thresholds are ABSolute and percentage when the thresholds are PERCent as defined by the :MEASure:DEFine THResholds command. NOTE Query Syntax The :MEASure:LOWer command is obsolete and is provided for backward compatibility to previous oscilloscopes.
32 Obsolete and Discontinued Commands :MEASure:SCRatch (see page 860) Command Syntax :MEASure:SCRatch The :MEASure:SCRatch command clears all selected measurements and markers from the screen. NOTE 792 The :MEASure:SCRatch command is obsolete and is provided for backward compatibility to previous oscilloscopes. Use the :MEASure:CLEar command (see page 335) instead.
Obsolete and Discontinued Commands 32 :MEASure:TDELta (see page 860) Query Syntax :MEASure:TDELta? The :MEASure:TDELta? query returns the time difference between the Tstop marker (X2 cursor) and the Tstart marker (X1 cursor). Tdelta = Tstop - Tstart Tstart is the time at the start marker (X1 cursor) and Tstop is the time at the stop marker (X2 cursor). No measurement is made when the :MEASure:TDELta? query is received by the oscilloscope. The delta time value that is output is the current value.
32 Obsolete and Discontinued Commands :MEASure:THResholds (see page 860) Command Syntax :MEASure:THResholds {T1090 | T2080 | VOLTage} The :MEASure:THResholds command selects the thresholds used when making time measurements. NOTE Query Syntax The :MEASure:THResholds command is obsolete and is provided for backward compatibility to previous oscilloscopes. Use the :MEASure:DEFine THResholds command (see page 337) instead.
Obsolete and Discontinued Commands 32 :MEASure:TMAX (see page 860) Command Syntax :MEASure:TMAX [] ::= {CHANnel | FUNCtion | MATH} ::= 1 to (# analog channels) in NR1 format The :MEASure:TMAX command installs a screen measurement and starts an X- at- Max- Y measurement on the selected waveform. If the optional source is specified, the current source is modified.
32 Obsolete and Discontinued Commands :MEASure:TMIN (see page 860) Command Syntax :MEASure:TMIN [] ::= {CHANnel | FUNCtion | MATH} ::= 1 to (# analog channels) in NR1 format The :MEASure:TMIN command installs a screen measurement and starts an X- at- Min- Y measurement on the selected waveform. If the optional source is specified, the current source is modified.
Obsolete and Discontinued Commands 32 :MEASure:TSTArt (see page 860) Command Syntax :MEASure:TSTArt [suffix] ::= time at the start marker in seconds [suffix] ::= {s | ms | us | ns | ps} The :MEASure:TSTArt command moves the start marker (X1 cursor) to the specified time with respect to the trigger time. NOTE The short form of this command, TSTA, does not follow the defined Long Form to Short Form Truncation Rules (see page 862).
32 Obsolete and Discontinued Commands :MEASure:TSTOp (see page 860) Command Syntax :MEASure:TSTOp [suffix] ::= time at the stop marker in seconds [suffix] ::= {s | ms | us | ns | ps} The :MEASure:TSTOp command moves the stop marker (X2 cursor) to the specified time with respect to the trigger time. NOTE The short form of this command, TSTO, does not follow the defined Long Form to Short Form Truncation Rules (see page 862).
32 Obsolete and Discontinued Commands :MEASure:TVOLt (see page 860) Query Syntax :MEASure:TVOLt? , [][,] ::= the voltage level that the waveform must cross. ::= direction of the waveform. A rising slope is indicated by a plus sign (+). A falling edge is indicated by a minus sign (-). ::= the transition to be reported. If the occurrence number is one, the first crossing is reported. If the number is two, the second crossing is reported, etc.
32 Obsolete and Discontinued Commands ::= time in seconds of the specified voltage crossing in NR3 format 800 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Obsolete and Discontinued Commands 32 :MEASure:UPPer (see page 860) Command Syntax :MEASure:UPPer The :MEASure:UPPer command sets the upper measurement threshold value. This value and the LOWer value represent absolute values when the thresholds are ABSolute and percentage when the thresholds are PERCent as defined by the :MEASure:DEFine THResholds command. NOTE Query Syntax The :MEASure:UPPer command is obsolete and is provided for backward compatibility to previous oscilloscopes.
32 Obsolete and Discontinued Commands :MEASure:VDELta (see page 860) Query Syntax :MEASure:VDELta? The :MEASure:VDELta? query returns the voltage difference between vertical marker 1 (Y1 cursor) and vertical marker 2 (Y2 cursor). No measurement is made when the :MEASure:VDELta? query is received by the oscilloscope. The delta value that is returned is the current value. This is the same value as the front- panel cursors delta Y value.
Obsolete and Discontinued Commands 32 :MEASure:VSTArt (see page 860) Command Syntax :MEASure:VSTArt ::= value for vertical marker 1 The :MEASure:VSTArt command moves the vertical marker (Y1 cursor) to the specified value corresponding to the selected source. The source can be selected by the MARKer:X1Y1source command. NOTE The short form of this command, VSTA, does not follow the defined Long Form to Short Form Truncation Rules (see page 862).
32 Obsolete and Discontinued Commands :MEASure:VSTOp (see page 860) Command Syntax :MEASure:VSTOp ::= value for Y2 cursor The :MEASure:VSTOp command moves the vertical marker 2 (Y2 cursor) to the specified value corresponding to the selected source. The source can be selected by the MARKer:X2Y2source command. NOTE The short form of this command, VSTO, does not follow the defined Long Form to Short Form Truncation Rules (see page 862).
32 Obsolete and Discontinued Commands :MTESt:AMASk:{SAVE | STORe} (see page 860) Command Syntax :MTESt:AMASk:{SAVE | STORe} "" The :MTESt:AMASk:SAVE command saves the automask generated mask to a file. If an automask has not been generated, an error occurs. The parameter is an MS- DOS compatible name of the file, a maximum of 254 characters long (including the path name, if used). The filename assumes the present working directory if a path does not precede the file name.
32 Obsolete and Discontinued Commands :MTESt:AVERage (see page 860) Command Syntax :MTESt:AVERage ::= {{1 | ON} | {0 | OFF}} The :MTESt:AVERage command enables or disables averaging. When ON, the oscilloscope acquires multiple data values for each time bucket, and averages them. When OFF, averaging is disabled. To set the number of averages, use the :MTESt:AVERage:COUNt command described next.
32 Obsolete and Discontinued Commands :MTESt:AVERage:COUNt (see page 860) Command Syntax :MTESt:AVERage:COUNt ::= an integer from 2 to 65536 in NR1 format The :MTESt:AVERage:COUNt command sets the number of averages for the waveforms. With the AVERage acquisition type, the :MTESt:AVERage:COUNt command specifies the number of data values to be averaged for each time bucket before the acquisition is considered complete for that time bucket.
32 Obsolete and Discontinued Commands :MTESt:LOAD (see page 860) Command Syntax :MTESt:LOAD "" The :MTESt:LOAD command loads the specified mask file. The parameter is an MS- DOS compatible name of the file, a maximum of 254 characters long (including the path name, if used). NOTE See Also The :MTESt:LOAD command is obsolete and is provided for backward compatibility to previous oscilloscopes. Use the :RECall:MASK[:STARt] command (see page 428) instead.
32 Obsolete and Discontinued Commands :MTESt:RUMode (see page 860) Command Syntax :MTESt:RUMode {FORever | TIME, | {WAVeforms,}} ::= from 1 to 86400 in NR3 format ::= number of waveforms in NR1 format from 1 to 1,000,000,000 The :MTESt:RUMode command determines the termination conditions for the mask test. The choices are FORever, TIME, or WAVeforms. • FORever — runs the Mask Test until the test is turned off.
32 Obsolete and Discontinued Commands :MTESt:RUMode:SOFailure (see page 860) Command Syntax :MTESt:RUMode:SOFailure ::= {{1 | ON} | {0 | OFF}} The :MTESt:RUMode:SOFailure command enables or disables the Stop On Failure run until criteria. When a mask test is run and a mask violation is detected, the mask test is stopped and the acquisition system is stopped.
Obsolete and Discontinued Commands 32 :MTESt:{STARt | STOP} (see page 860) Command Syntax :MTESt:{STARt | STOP} The :MTESt:{STARt | STOP} command starts or stops the acquisition system. NOTE See Also The :MTESt:STARt and :MTESt:STOP commands are obsolete and are provided for backward compatibility to previous oscilloscopes. Use the :RUN command (see page 180) and :STOP command (see page 184) instead.
32 Obsolete and Discontinued Commands :MTESt:TRIGger:SOURce (see page 860) Command Syntax :MTESt:TRIGger:SOURce ::= CHANnel ::= 1 to (# analog channels) in NR1 format The :MTESt:TRIGger:SOURce command sets the channel to use as the trigger. NOTE Query Syntax The :MTESt:TRIGger:SOURce command is obsolete and is provided for backward compatibility to previous oscilloscopes. Use the trigger source commands (see page 641) instead.
Obsolete and Discontinued Commands 32 :PRINt? (see page 860) Query Syntax :PRINt? [] ::= [][,..,] ::= {COLor | GRAYscale | BMP8bit | BMP} The :PRINt? query pulls image data back over the bus for storage. NOTE The :PRINT command is an obsolete command provided for compatibility to previous oscilloscopes. Use the :DISPlay:DATA command (see page 258) instead.
32 Obsolete and Discontinued Commands NOTE See Also Old Print Option: Is Now: DISK invalid PCL invalid The PRINt? query is not a core command.
Obsolete and Discontinued Commands 32 :SAVE:IMAGe:AREA (see page 860) Query Syntax :SAVE:IMAGe:AREA? The :SAVE:IMAGe:AREA? query returns the selected image area. When saving images, this query returns SCR (screen). When saving setups or waveform data, this query returns GRAT (graticule) even though graticule images are not saved.
32 Obsolete and Discontinued Commands :SBUS:LIN:SIGNal:DEFinition (see page 860) Command Syntax :SBUS:LIN:SIGNal:DEFinition ::= {LIN | RX | TX} The :SBUS:LIN:SIGNal:DEFinition command sets the LIN signal type. These signals can be set to: Dominant low signals: • LIN — the actual LIN single- end bus signal line. • RX — the Receive signal from the LIN bus transceiver. • TX — the Transmit signal to the LIN bus transceiver.
Obsolete and Discontinued Commands 32 :TIMebase:DELay (see page 860) Command Syntax :TIMebase:DELay ::= time in seconds from trigger to the delay reference point on the screen. The valid range for delay settings depends on the time/division setting for the main time base. The :TIMebase:DELay command sets the main time base delay. This delay is the time between the trigger event and the delay reference point on the screen.
32 Obsolete and Discontinued Commands :TRIGger:THReshold (see page 860) Command Syntax :TRIGger:THReshold , [, ] ::= {POD1 | POD2} ::= {CMOS | ECL | TTL | USERdef} ::= voltage for USERdef (floating-point number) [Volt type] [Volt type] ::= {V | mV | uV} The :TRIGger:THReshold command sets the threshold (trigger level) for a pod of 8 digital channels (either digital channels 0 through 7 or 8 through 15).
Obsolete and Discontinued Commands 32 :TRIGger:TV:TVMode (see page 860) Command Syntax :TRIGger:TV:TVMode ::= {FIEld1 | FIEld2 | AFIelds | ALINes | LINE | VERTical | LFIeld1 | LFIeld2 | LALTernate | LVERtical} The :TRIGger:TV:MODE command selects the TV trigger mode and field. The LVERtical parameter is only available when :TRIGger:TV:STANdard is GENeric. The LALTernate parameter is not available when :TRIGger:TV:STANdard is GENeric (see page 701).
32 Obsolete and Discontinued Commands 820 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 33 Error Messages -440, Query UNTERMINATED after indefinite response -430, Query DEADLOCKED -420, Query UNTERMINATED -410, Query INTERRUPTED -400, Query error -340, Calibration failed -330, Self-test failed -321, Out of memory -320, Storage fault -315, Configuration memory lost 821
33 Error Messages -314, Save/recall memory lost -313, Calibration memory lost -311, Memory error -310, System error -300, Device specific error -278, Macro header not found -277, Macro redefinition not allowed -276, Macro recursion error -273, Illegal macro label -272, Macro execution error -258, Media protected -257, File name error -256, File name not found 822 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Error Messages 33 -255, Directory full -254, Media full -253, Corrupt media -252, Missing media -251, Missing mass storage -250, Mass storage error -241, Hardware missing This message can occur when a feature is unavailable or unlicensed.
33 Error Messages -223, Too much data -222, Data out of range -221, Settings conflict -220, Parameter error -200, Execution error -183, Invalid inside macro definition -181, Invalid outside macro definition -178, Expression data not allowed -171, Invalid expression -170, Expression error -168, Block data not allowed -161, Invalid block data -158, String data not allowed 824 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Error Messages 33 -151, Invalid string data -150, String data error -148, Character data not allowed -138, Suffix not allowed -134, Suffix too long -131, Invalid suffix -128, Numeric data not allowed -124, Too many digits -123, Exponent too large -121, Invalid character in number -120, Numeric data error -114, Header suffix out of range -113, Undefined header Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 825
33 Error Messages -112, Program mnemonic too long -109, Missing parameter -108, Parameter not allowed -105, GET not allowed -104, Data type error -103, Invalid separator -102, Syntax error -101, Invalid character -100, Command error +10, Software Fault Occurred +100, File Exists +101, End-Of-File Found +102, Read Error 826 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Error Messages 33 +103, Write Error +104, Illegal Operation +105, Print Canceled +106, Print Initialization Failed +107, Invalid Trace File +108, Compression Error +109, No Data For Operation A remote operation wants some information, but there is no information available. For example, you may request a stored TIFF image using the :DISPlay:DATA? query, but there may be no image stored.
33 Error Messages 828 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 34 Status Reporting Status Reporting Data Structures 831 Status Byte Register (STB) 833 Service Request Enable Register (SRE) 835 Trigger Event Register (TER) 836 Output Queue 837 Message Queue 838 (Standard) Event Status Register (ESR) 839 (Standard) Event Status Enable Register (ESE) 840 Error Queue 841 Operation Status Event Register (:OPERegister[:EVENt]) 842 Operation Status Condition Register (:OPERegister:CONDition) 843 Arm Event R
34 Status Reporting Trigger Event Register Error Queue Message Queue RUN Bit Output Queue (Mask) Arm Event Register Overload Event Register Overload Event Enable Register Mask Test Event Register Mask Test Event Enable Register (Mask) Standard Event Status Register Standard Event Status Enable Register (Mask) Operation Status Condition/ Event Registers Operation Status Enable Register Status Byte Register Service Request Enable Register Service Request Generation Service Request (SRQ) Inter
Status Reporting 34 Status Reporting Data Structures The following figure shows how the status register bits are masked and logically OR'ed to generate service requests (SRQ) on particular events.
34 Status Reporting • Table 66 • Table 61 The status registers picture above shows how the different status reporting data structures work together. To make it possible for any of the Standard Event Status Register bits to generate a summary bit, the bits must be enabled. These bits are enabled by using the *ESE common command to set the corresponding bit in the Standard Event Status Enable Register.
34 Status Reporting Status Byte Register (STB) The Status Byte Register is the summary- level register in the status reporting structure. It contains summary bits that monitor activity in the other status registers and queues. The Status Byte Register is a live register. That is, its summary bits are set and cleared by the presence and absence of a summary bit from other event registers or queues.
34 Status Reporting The next program prints 0xD1 and clears bit 6 (RQS) and bit 4 (MAV) of the Status Byte Register. The difference in the output value between this example and the previous one is the value of bit 6 (weight = 64). Bit 6 is set when the first enabled summary bit is set and is cleared when the Status Byte Register is read by the serial poll command.
Status Reporting 34 Service Request Enable Register (SRE) Setting the Service Request Enable Register bits enable corresponding bits in the Status Byte Register. These enabled bits can then set RQS and MSS (bit 6) in the Status Byte Register. Bits are set in the Service Request Enable Register using the *SRE command and the bits that are set are read with the *SRE? query. Example The following example sets bit 4 (MAV) and bit 5 (ESB) in the Service Request Enable Register. myScope.
34 Status Reporting Trigger Event Register (TER) This register sets the TRG bit in the status byte when a trigger event occurs. The TER event register stays set until it is cleared by reading the register or using the *CLS command. If your application needs to detect multiple triggers, the TER event register must be cleared after each one. If you are using the Service Request to interrupt a program or controller operation, you must clear the event register each time the trigger bit is set.
Status Reporting 34 Output Queue The output queue stores the oscilloscope- to- controller responses that are generated by certain instrument commands and queries. The output queue generates the Message Available summary bit when the output queue contains one or more bytes. This summary bit sets the MAV bit (bit 4) in the Status Byte Register. When using the Agilent VISA COM library, the output queue may be read with the FormattedIO488 object's ReadString, ReadNumber, ReadList, or ReadIEEEBlock methods.
34 Status Reporting Message Queue The message queue contains the text of the last message written to the advisory line on the screen of the oscilloscope. The length of the oscilloscope's message queue is 1. Note that messages sent with the :SYSTem:DSP command do not set the MSG status bit in the Status Byte Register.
Status Reporting 34 (Standard) Event Status Register (ESR) The (Standard) Event Status Register (ESR) monitors the following oscilloscope status events: • PON - Power On • URQ - User Request • CME - Command Error • EXE - Execution Error • DDE - Device Dependent Error • QYE - Query Error • RQC - Request Control • OPC - Operation Complete When one of these events occur, the event sets the corresponding bit in the register.
34 Status Reporting (Standard) Event Status Enable Register (ESE) To allow any of the (Standard) Event Status Register (ESR) bits to generate a summary bit, you must first enable that bit. Enable the bit by using the *ESE (Event Status Enable) common command to set the corresponding bit in the (Standard) Event Status Enable Register (ESE). Set bits are read with the *ESE? query. Example Suppose your application requires an interrupt whenever any type of error occurs.
Status Reporting 34 Error Queue As errors are detected, they are placed in an error queue. This queue is first in, first out. If the error queue overflows, the last error in the queue is replaced with error 350, Queue overflow. Any time the queue overflows, the least recent errors remain in the queue, and the most recent error is discarded. The length of the oscilloscope's error queue is 30 (29 positions for the error messages, and 1 position for the Queue overflow message).
34 Status Reporting Operation Status Event Register (:OPERegister[:EVENt]) The Operation Status Event Register register hosts these bits: Name Location Description RUN bit bit 3 Is set whenever the instrument goes from a stop state to a single or running state. WAIT TRIG bit bit 5 Is set by the Trigger Armed Event Register and indicates that the trigger is armed. MTE bit bit 9 Comes from the Mask Test Event Registers. OVLR bit bit 11 Is set whenever a 50 input overload occurs.
Status Reporting 34 Operation Status Condition Register (:OPERegister:CONDition) The Operation Status Condition Register register hosts these bits: Name Location Description RUN bit bit 3 Is set whenever the instrument is not stopped. WAIT TRIG bit bit 5 Is set by the Trigger Armed Event Register and indicates that the trigger is armed. MTE bit bit 9 Comes from the Mask Test Event Registers. OVLR bit bit 11 Is set whenever a 50 input overload occurs.
34 Status Reporting Arm Event Register (AER) This register sets bit 5 (Wait Trig bit) in the Operation Status Register and the OPER bit (bit 7) in the Status Byte Register when the instrument becomes armed. The ARM event register stays set until it is cleared by reading the register with the AER? query or using the *CLS command. If your application needs to detect multiple triggers, the ARM event register must be cleared after each one.
Status Reporting 34 Overload Event Register (:OVLRegister) The Overload Event Register register hosts these bits: Name Location Description Channel 1 OVL bit 0 Overload has occurred on Channel 1 input. Channel 2 OVL bit 1 Overload has occurred on Channel 2 input. Channel 3 OVL bit 2 Overload has occurred on Channel 3 input. Channel 4 OVL bit 3 Overload has occurred on Channel 4 input. External Trigger OVL bit 4 Overload has occurred on External Trigger input.
34 Status Reporting Mask Test Event Event Register (:MTERegister[:EVENt]) The Mask Test Event Event Register register hosts these bits: Name Location Description Complete bit 0 Is set when the mask test is complete. Fail bit 1 Is set when there is a mask test failure. Started bit 8 Is set when mask testing is started. Auto Mask bit 10 Is set when auto mask creation is completed. The :MTERegister[:EVENt]? query returns the value of, and clears, the Mask Test Event Event Register.
Status Reporting 34 Clearing Registers and Queues The *CLS common command clears all event registers and all queues except the output queue. If *CLS is sent immediately after a program message terminator, the output queue is also cleared.
34 Status Reporting Status Reporting Decision Chart no Do you want to do status reporting? yes Reset the instrument and clear the status registers: myScope.WriteString "*RST" myScope.WriteString "*CLS" Do you want to send a Service Request (SRQ) interrupt to the controller? no (Your programs can read the status registers instead.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 35 Synchronizing Acquisitions Synchronization in the Programming Flow 850 Blocking Synchronization 851 Polling Synchronization With Timeout 852 Synchronizing with a Single-Shot Device Under Test (DUT) 854 Synchronization with an Averaging Acquisition 856 When remotely controlling an oscilloscope with programming commands, it is often necessary to know when the oscilloscope has finished the previous operation and is ready for the next com
35 Synchronizing Acquisitions Synchronization in the Programming Flow Most remote programming follows these three general steps: 1 Set up the oscilloscope and device under test (see page 850). 2 Acquire a waveform (see page 850). 3 Retrieve results (see page 850). Set Up the Oscilloscope Before making changes to the oscilloscope setup, it is best to make sure it is stopped using the :STOP command followed by the *OPC? query.
Synchronizing Acquisitions 35 Blocking Synchronization Use the :DIGitize command to start the acquisition. This blocks subsequent queries until the acquisition and processing is complete. For example: ' ' Synchronizing acquisition using blocking. ' =================================================================== Option Explicit Public Public Public Public myMgr As VisaComLib.ResourceManager myScope As VisaComLib.
35 Synchronizing Acquisitions Polling Synchronization With Timeout This example requires a timeout value so the operation can abort if an acquisition does not occur within the timeout period: ' ' Synchronizing acquisition using polling. ' =================================================================== Option Explicit Public Public Public Public myMgr As VisaComLib.ResourceManager myScope As VisaComLib.
Synchronizing Acquisitions 35 myScope.WriteString ":OPERegister:CONDition?" varQueryResult = myScope.ReadNumber ' Mask RUN bit (bit 3, &H8). If (varQueryResult And &H8) = 0 Then Exit Do Else Sleep 100 ' Small wait to prevent excessive queries. lngElapsed = lngElapsed + 100 End If Loop ' Get results. ' ----------------------------------------------------------------If lngElapsed < lngTimeout Then myScope.WriteString ":MEASure:RISetime" myScope.WriteString ":MEASure:RISetime?" varQueryResult = myScope.
35 Synchronizing Acquisitions Synchronizing with a Single-Shot Device Under Test (DUT) The examples in "Blocking Synchronization" on page 851 and "Polling Synchronization With Timeout" on page 852 assume the DUT is continually running and therefore the oscilloscope will have more than one opportunity to trigger. With a single shot DUT, there is only one opportunity for the oscilloscope to trigger, so it is necessary for the oscilloscope to be armed and ready before the DUT is enabled.
Synchronizing Acquisitions 35 ' ----------------------------------------------------------------' Start a single acquisition. myScope.WriteString ":SINGle" ' Wait until the trigger system is armed. Do Sleep 100 ' Small wait to prevent excessive queries. myScope.WriteString ":AER?" varQueryResult = myScope.ReadNumber Loop Until varQueryResult = 1 ' Oscilloscope is armed and ready, enable DUT here. Debug.Print "Oscilloscope is armed and ready, enable DUT.
35 Synchronizing Acquisitions Synchronization with an Averaging Acquisition When averaging, it is necessary to know when the average count has been reached. The :SINGle command does not average. If it is known that a trigger will occur, a :DIGitize will acquire the complete number of averages, but if the number of averages is large, a timeout on the connection can occur. The example below polls during the :DIGitize to prevent a timeout on the connection. ' ' Synchronizing in averaging acquisition mode.
Synchronizing Acquisitions 35 ' Save *ESE (Standard Event Status Enable register) mask ' (so it can be restored later). Dim varInitialESE As Variant myScope.WriteString "*ESE?" varInitialESE = myScope.ReadNumber ' Set *ESE mask to allow only OPC (Operation Complete) bit. myScope.WriteString "*ESE " + CStr(CInt("&H01")) ' Acquire using :DIGitize. Set up OPC bit to be set when the ' operation is complete. ' ----------------------------------------------------------------myScope.
35 Synchronizing Acquisitions 858 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 36 More About Oscilloscope Commands Command Classifications 860 Valid Command/Query Strings 861 Query Return Values 867 All Oscilloscope Commands Are Sequential 868 859
36 More About Oscilloscope Commands Command Classifications To help you use existing programs with your oscilloscope, or use current programs with the next generation of Agilent InfiniiVision oscilloscopes, commands are classified by the following categories: • "Core Commands" on page 860 • "Non- Core Commands" on page 860 • "Obsolete Commands" on page 860 Core Commands Core commands are a common set of commands that provide basic oscilloscope functionality on this oscilloscope and future Agilent InfiniiV
More About Oscilloscope Commands 36 Valid Command/Query Strings • "Program Message Syntax" on page 861 • "Duplicate Mnemonics" on page 865 • "Tree Traversal Rules and Multiple Commands" on page 865 Program Message Syntax To program the instrument remotely, you must understand the command format and structure expected by the instrument. The IEEE 488.
36 More About Oscilloscope Commands on whether or not you have included the question mark. The command and query forms of an instruction usually have different program data. Many queries do not use any program data. There are three types of headers: • "Simple Command Headers" on page 863 • "Compound Command Headers" on page 863 • "Common Command Headers" on page 863 White Space (Separator) White space is used to separate the instruction header from the program data.
36 More About Oscilloscope Commands Long Form Short form RANGe RANG PATTern PATT TIMebase TIM DELay DEL TYPE TYPE In the oscilloscope programmer's documentation, the short form of a command is indicated by uppercase characters. Programs written in long form are easily read and are almost self- documenting. The short form syntax conserves the amount of controller memory needed for program storage and reduces I/O activity. Simple Command Headers Simple command headers contain a single mnemonic.
36 More About Oscilloscope Commands No space or separator is allowed between the asterisk (*) and the command header. *CLS is an example of a common command header. Program Data Syntax Rules Program data is used to convey a parameter information related to the command header. At least one space must separate the command header or query header from the program data.
36 More About Oscilloscope Commands All numbers must be strings of ASCII characters. Thus, when sending the number 9, you would send a byte representing the ASCII code for the character 9 (which is 57). A three- digit number like 102 would take up three bytes (ASCII codes 49, 48, and 50). This is handled automatically when you include the entire instruction in a string. Duplicate Mnemonics Identical function mnemonics can be used in more than one subsystem.
36 More About Oscilloscope Commands ::; For example: myScope.WriteString ":TIMebase:RANGe 0.5;POSition 0" NOTE Example 2: Program Message Terminator Sets Parser Back to Root NOTE The colon between TIMebase and RANGe is necessary because TIMebase:RANGe is a compound command. The semicolon between the RANGe command and the POSition command is the required program message unit separator.
36 More About Oscilloscope Commands Query Return Values Command headers immediately followed by a question mark (?) are queries. Queries are used to get results of measurements made by the instrument or to find out how the instrument is currently configured. After receiving a query, the instrument interrogates the requested function and places the answer in its output queue. The answer remains in the output queue until it is read or another command is issued.
36 More About Oscilloscope Commands All Oscilloscope Commands Are Sequential IEEE 488.2 makes the distinction between sequential and overlapped commands: • Sequential commands finish their task before the execution of the next command starts. • Overlapped commands run concurrently. Commands following an overlapped command may be started before the overlapped command is completed. All of the oscilloscope commands are sequential.
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 37 Programming Examples VISA COM Examples 870 VISA Examples 897 SICL Examples 938 Example programs are ASCII text files that can be cut from the help file and pasted into your favorite text editor.
37 Programming Examples VISA COM Examples • "VISA COM Example in Visual Basic" on page 870 • "VISA COM Example in C#" on page 879 • "VISA COM Example in Visual Basic .NET" on page 888 VISA COM Example in Visual Basic To run this example in Visual Basic for Applications (VBA): 1 Start the application that provides Visual Basic for Applications (for example, Microsoft Excel). 2 Press ALT+F11 to launch the Visual Basic editor. 3 Reference the Agilent VISA COM library: a Choose Tools>References...
Programming Examples 37 ' Create the VISA COM I/O resource. Set myMgr = New VisaComLib.ResourceManager Set myScope = New VisaComLib.FormattedIO488 Set myScope.IO = _ myMgr.Open("USB0::0x0957::0x17A6::US50210029::0::INSTR") myScope.IO.Clear ' Clear the interface. myScope.IO.Timeout = 10000 ' Set I/O communication timeout. ' Initialize - start from a known state. Initialize ' Capture data. Capture ' Analyze the captured waveform. Analyze Exit Sub VisaComError: MsgBox "VISA COM Error:" + vbCrLf + Err.
37 Programming Examples ' Use auto-scale to automatically configure oscilloscope. ' ----------------------------------------------------------------DoCommand ":AUToscale" ' Set trigger mode (EDGE, PULSe, PATTern, etc., and input source. DoCommand ":TRIGger:MODE EDGE" Debug.Print "Trigger mode: " + _ DoQueryString(":TRIGger:MODE?") ' Set EDGE trigger parameters. DoCommand ":TRIGger:EDGE:SOURCe CHANnel1" Debug.
Programming Examples 37 ' Set the acquisition type (NORMal, PEAK, AVERage, or HRESolution). DoCommand ":ACQuire:TYPE NORMal" Debug.Print "Acquire type: " + _ DoQueryString(":ACQuire:TYPE?") ' Or, configure by loading a previously saved setup. ' ----------------------------------------------------------------Dim varSetupString As Variant strPath = "c:\scope\config\setup.dat" Open strPath For Binary Access Read As hFile ' Open file for input. Get hFile, , varSetupString ' Read data.
37 Programming Examples DoCommand ":HARDcopy:INKSaver OFF" Dim byteData() As Byte byteData = DoQueryIEEEBlock_UI1(":DISPlay:DATA? PNG, COLor") ' Save screen image to a file. Dim strPath As String strPath = "c:\scope\data\screen.png" If Len(Dir(strPath)) Then Kill strPath ' Remove file if it exists. End If Dim hFile As Long hFile = FreeFile Open strPath For Binary Access Write Lock Write As hFile Put hFile, , byteData ' Write data. Close hFile ' Close file.
Programming Examples 37 intFormat = Preamble(0) intType = Preamble(1) lngPoints = Preamble(2) lngCount = Preamble(3) dblXIncrement = Preamble(4) dblXOrigin = Preamble(5) lngXReference = Preamble(6) sngYIncrement = Preamble(7) sngYOrigin = Preamble(8) lngYReference = Preamble(9) If intFormat = 0 Then Debug.Print "Waveform format: BYTE" ElseIf intFormat = 1 Then Debug.Print "Waveform format: WORD" ElseIf intFormat = 4 Then Debug.Print "Waveform format: ASCii" End If If intType = 0 Then Debug.
37 Programming Examples ' Set up output file: strPath = "c:\scope\data\waveform_data.csv" ' Open file for output. Open strPath For Output Access Write Lock Write As hFile ' Output waveform data in CSV format. Dim lngDataValue As Long Dim lngI As Long For lngI = 0 To UBound(varQueryResult) lngDataValue = varQueryResult(lngI) ' Write time value, voltage value.
Programming Examples 37 Dim strErrors As String myScope.WriteIEEEBlock command, data CheckInstrumentErrors Exit Sub VisaComError: MsgBox "VISA COM Error: " + vbCrLf + CStr(Err.Number) + ", " + _ Err.Source + ", " + _ Err.Description, vbExclamation, "VISA COM Error" End End Sub Private Function DoQueryString(query As String) As String On Error GoTo VisaComError myScope.WriteString query DoQueryString = myScope.
37 Programming Examples myScope.WriteString query DoQueryNumbers = myScope.ReadList CheckInstrumentErrors Exit Function VisaComError: MsgBox "VISA COM Error: " + vbCrLf + CStr(Err.Number) + ", " + _ Err.Source + ", " + _ Err.Description, vbExclamation, "VISA COM Error" End End Function Private Function DoQueryIEEEBlock_UI1(query As String) As Variant On Error GoTo VisaComError myScope.WriteString query DoQueryIEEEBlock_UI1 = myScope.
37 Programming Examples MsgBox "VISA COM Error: " + vbCrLf + Err.Description End Sub VISA COM Example in C# To compile and run this example in Microsoft Visual Studio 2008: 1 Open Visual Studio. 2 Create a new Visual C#, Windows, Console Application project. 3 Cut- and- paste the code that follows into the C# source file. 4 Edit the program to use the VISA address of your oscilloscope. 5 Add a reference to the VISA COM 3.
37 Programming Examples ); myScope.SetTimeoutSeconds(10); // Initialize - start from a known state. Initialize(); // Capture data. Capture(); // Analyze the captured waveform. Analyze(); } catch (System.ApplicationException err) { Console.WriteLine("*** VISA COM Error : " + err.Message); } catch (System.SystemException err) { Console.WriteLine("*** System Error Message : " + err.Message); } catch (System.Exception err) { System.Diagnostics.Debug.Fail("Unexpected Error"); Console.
Programming Examples 37 // Set trigger mode (EDGE, PULSe, PATTern, etc., and input source. myScope.DoCommand(":TRIGger:MODE EDGE"); Console.WriteLine("Trigger mode: {0}", myScope.DoQueryString(":TRIGger:MODE?")); // Set EDGE trigger parameters. myScope.DoCommand(":TRIGger:EDGE:SOURCe CHANnel1"); Console.WriteLine("Trigger edge source: {0}", myScope.DoQueryString(":TRIGger:EDGE:SOURce?")); myScope.DoCommand(":TRIGger:EDGE:LEVel 1.5"); Console.WriteLine("Trigger edge level: {0}", myScope.
37 Programming Examples Console.WriteLine("Acquire type: {0}", myScope.DoQueryString(":ACQuire:TYPE?")); // Or, configure by loading a previously saved setup. byte[] DataArray; int nBytesWritten; // Read setup string from file. strPath = "c:\\scope\\config\\setup.stp"; DataArray = File.ReadAllBytes(strPath); nBytesWritten = DataArray.Length; // Restore setup string. myScope.DoCommandIEEEBlock(":SYSTem:SETup", DataArray); Console.
Programming Examples 37 fStream.Write(ResultsArray, 0, nLength); fStream.Close(); Console.WriteLine("Screen image ({0} bytes) written to {1}", nLength, strPath); // Download waveform data. // ----------------------------------------------------------// Set the waveform points mode. myScope.DoCommand(":WAVeform:POINts:MODE RAW"); Console.WriteLine("Waveform points mode: {0}", myScope.DoQueryString(":WAVeform:POINts:MODE?")); // Get the number of waveform points available. Console.
37 Programming Examples } else if (fType == 3.0) { Console.WriteLine("Acquire type: HRESolution"); } double fPoints = fResultsArray[2]; Console.WriteLine("Waveform points: {0:e}", fPoints); double fCount = fResultsArray[3]; Console.WriteLine("Waveform average count: {0:e}", fCount); double fXincrement = fResultsArray[4]; Console.WriteLine("Waveform X increment: {0:e}", fXincrement); double fXorigin = fResultsArray[5]; Console.
Programming Examples 37 { private ResourceManagerClass m_ResourceManager; private FormattedIO488Class m_IoObject; private string m_strVisaAddress; // Constructor. public VisaComInstrument(string strVisaAddress) { // Save VISA addres in member variable. m_strVisaAddress = strVisaAddress; // Open the default VISA COM IO object. OpenIo(); // Clear the interface. m_IoObject.IO.Clear(); } public void DoCommand(string strCommand) { // Send the command. m_IoObject.
37 Programming Examples // Get the result number. double fResult; fResult = (double)m_IoObject.ReadNumber( IEEEASCIIType.ASCIIType_R8, true); // Check for inst errors. CheckInstrumentErrors(strQuery); // Return result number. return fResult; } public double[] DoQueryNumbers(string strQuery) { // Send the query. m_IoObject.WriteString(strQuery, true); // Get the result numbers. double[] fResultsArray; fResultsArray = (double[])m_IoObject.ReadList( IEEEASCIIType.ASCIIType_R8, ",;"); // Check for inst errors.
Programming Examples 37 strInstrumentError = m_IoObject.ReadString(); if (!strInstrumentError.ToString().StartsWith("+0,")) { if (bFirstError) { Console.WriteLine("ERROR(s) for command '{0}': ", strCommand); bFirstError = false; } Console.Write(strInstrumentError); } } while (!strInstrumentError.ToString().StartsWith("+0,")); } private void OpenIo() { m_ResourceManager = new ResourceManagerClass(); m_IoObject = new FormattedIO488Class(); // Open the default VISA COM IO object. try { m_IoObject.
37 Programming Examples } } } VISA COM Example in Visual Basic .NET To compile and run this example in Microsoft Visual Studio 2008: 1 Open Visual Studio. 2 Create a new Visual Basic, Windows, Console Application project. 3 Cut- and- paste the code that follows into the C# source file. 4 Edit the program to use the VISA address of your oscilloscope. 5 Add a reference to the VISA COM 3.
37 Programming Examples ) myScope.SetTimeoutSeconds(10) ' Initialize - start from a known state. Initialize() ' Capture data. Capture() ' Analyze the captured waveform. Analyze() Catch err As System.ApplicationException Console.WriteLine("*** VISA Error Message : " + err.Message) Catch err As System.SystemException Console.WriteLine("*** System Error Message : " + err.Message) Catch err As System.Exception System.Diagnostics.Debug.Fail("Unexpected Error") Console.WriteLine("*** Unexpected Error : " + err.
37 Programming Examples myScope.DoCommand(":TRIGger:EDGE:LEVel 1.5") Console.WriteLine("Trigger edge level: {0}", _ myScope.DoQueryString(":TRIGger:EDGE:LEVel?")) myScope.DoCommand(":TRIGger:EDGE:SLOPe POSitive") Console.WriteLine("Trigger edge slope: {0}", _ myScope.DoQueryString(":TRIGger:EDGE:SLOPe?")) ' Save oscilloscope configuration. Dim ResultsArray As Byte() ' Results array. Dim nLength As Integer ' Number of bytes returned from inst.
Programming Examples 37 strPath = "c:\scope\config\setup.stp" DataArray = File.ReadAllBytes(strPath) nBytesWritten = DataArray.Length ' Restore setup string. myScope.DoCommandIEEEBlock(":SYSTem:SETup", DataArray) Console.WriteLine("Setup bytes restored: {0}", nBytesWritten) ' Capture an acquisition using :DIGitize. myScope.DoCommand(":DIGitize CHANnel1") End Sub ' Analyze the captured waveform.
37 Programming Examples ' Set the waveform points mode. myScope.DoCommand(":WAVeform:POINts:MODE RAW") Console.WriteLine("Waveform points mode: {0}", _ myScope.DoQueryString(":WAVeform:POINts:MODE?")) ' Get the number of waveform points available. Console.WriteLine("Waveform points available: {0}", _ myScope.DoQueryString(":WAVeform:POINts?")) ' Set the waveform source. myScope.DoCommand(":WAVeform:SOURce CHANnel1") Console.WriteLine("Waveform source: {0}", _ myScope.
Programming Examples 37 Console.WriteLine("Waveform X reference: {0:e}", fXreference) Dim fYincrement As Double = fResultsArray(7) Console.WriteLine("Waveform Y increment: {0:e}", fYincrement) Dim fYorigin As Double = fResultsArray(8) Console.WriteLine("Waveform Y origin: {0:e}", fYorigin) Dim fYreference As Double = fResultsArray(9) Console.WriteLine("Waveform Y reference: {0:e}", fYreference) ' Get the waveform data. ResultsArray = myScope.DoQueryIEEEBlock(":WAVeform:DATA?") nLength = ResultsArray.
37 Programming Examples ' Clear the interface. m_IoObject.IO.Clear() End Sub Public Sub DoCommand(ByVal strCommand As String) ' Send the command. m_IoObject.WriteString(strCommand, True) ' Check for inst errors. CheckInstrumentErrors(strCommand) End Sub Public Sub DoCommandIEEEBlock(ByVal strCommand As String, _ ByVal DataArray As Byte()) ' Send the command to the device. m_IoObject.WriteIEEEBlock(strCommand, DataArray, True) ' Check for inst errors.
37 Programming Examples Public Function DoQueryNumbers(ByVal strQuery As String) As _ Double() ' Send the query. m_IoObject.WriteString(strQuery, True) ' Get the result numbers. Dim fResultsArray As Double() fResultsArray = _ m_IoObject.ReadList(IEEEASCIIType.ASCIIType_R8, ",;") ' Check for inst errors. CheckInstrumentErrors(strQuery) ' Return result numbers. Return fResultsArray End Function Public _ Function DoQueryIEEEBlock(ByVal strQuery As String) As Byte() ' Send the query. m_IoObject.
37 Programming Examples m_IoObject = New FormattedIO488Class() ' Open the default VISA COM IO object. Try m_IoObject.IO = _ DirectCast(m_ResourceManager.Open(m_strVisaAddress, _ AccessMode.NO_LOCK, 0, ""), IMessage) Catch e As Exception Console.WriteLine("An error occurred: {0}", e.Message) End Try End Sub Public Sub SetTimeoutSeconds(ByVal nSeconds As Integer) m_IoObject.IO.Timeout = nSeconds * 1000 End Sub Public Sub Close() Try m_IoObject.IO.Close() Catch End Try Try Marshal.
37 Programming Examples VISA Examples • "VISA Example in C" on page 897 • "VISA Example in Visual Basic" on page 906 • "VISA Example in C#" on page 916 • "VISA Example in Visual Basic .NET" on page 927 VISA Example in C To compile and run this example in Microsoft Visual Studio 2008: 1 Open Visual Studio. 2 Create a new Visual C++, Win32, Win32 Console Application project. 3 In the Win32 Application Wizard, click Next >. Then, check Empty project, and click Finish.
37 Programming Examples * This program illustrates a few commonly-used programming * features of your Agilent oscilloscope. */ #include #include #include #include /* /* /* /* For printf(). */ For strcpy(), strcat(). */ For clock(). */ Agilent VISA routines.
Programming Examples 37 /* Analyze the captured waveform. */ analyze(); /* Close the vi session and the resource manager session. */ viClose(vi); viClose(defaultRM); } /* Initialize the oscilloscope to a known state. * --------------------------------------------------------------- */ void initialize (void) { /* Clear the interface. */ err = viClear(vi); if (err != VI_SUCCESS) error_handler(); /* Get and display the device's *IDN? string.
37 Programming Examples printf("Read setup string query (%d bytes).\n", num_bytes); /* Write setup string to file. */ fp = fopen ("c:\\scope\\config\\setup.stp", "wb"); num_bytes = fwrite(ieeeblock_data, sizeof(unsigned char), num_bytes, fp); fclose (fp); printf("Wrote setup string (%d bytes) to ", num_bytes); printf("c:\\scope\\config\\setup.stp.\n"); /* Change settings with individual commands: /* Set vertical scale and offset. */ do_command(":CHANnel1:SCALe 0.
37 Programming Examples { double double double double double double double double double double wav_format; acq_type; wav_points; avg_count; x_increment; x_origin; x_reference; y_increment; y_origin; y_reference; FILE *fp; int num_bytes; int i; /* Number of bytes returned from instrument. */ /* Make a couple of measurements.
37 Programming Examples /* Set the waveform source. */ do_command(":WAVeform:SOURce CHANnel1"); do_query_string(":WAVeform:SOURce?"); printf("Waveform source: %s\n", str_result); /* Choose the format of the data returned (WORD, BYTE, ASCII): */ do_command(":WAVeform:FORMat BYTE"); do_query_string(":WAVeform:FORMat?"); printf("Waveform format: %s\n", str_result); /* Display the waveform settings: */ do_query_numbers(":WAVeform:PREamble?"); wav_format = dbl_results[0]; if (wav_format == 0.
Programming Examples 37 x_reference = dbl_results[6]; printf("Waveform X reference: %e\n", x_reference); y_increment = dbl_results[7]; printf("Waveform Y increment: %e\n", y_increment); y_origin = dbl_results[8]; printf("Waveform Y origin: %e\n", y_origin); y_reference = dbl_results[9]; printf("Waveform Y reference: %e\n", y_reference); /* Read waveform data. */ num_bytes = do_query_ieeeblock(":WAVeform:DATA?"); printf("Number of data values: %d\n", num_bytes); /* Open file for output.
37 Programming Examples char message[80]; int data_length; strcpy(message, command); strcat(message, " #8%08d"); err = viPrintf(vi, message, num_bytes); if (err != VI_SUCCESS) error_handler(); err = viBufWrite(vi, ieeeblock_data, num_bytes, &data_length); if (err != VI_SUCCESS) error_handler(); check_instrument_errors(); return(data_length); } /* Query for a string result.
Programming Examples 37 char *query; { char message[80]; strcpy(message, query); strcat(message, "\n"); err = viPrintf(vi, message); if (err != VI_SUCCESS) error_handler(); err = viScanf(vi, "%,10lf\n", dbl_results); if (err != VI_SUCCESS) error_handler(); check_instrument_errors(); } /* Query for an IEEE definite-length block result.
37 Programming Examples err = viQueryf(vi, ":SYSTem:ERRor?\n", "%t", str_err_val); if (err != VI_SUCCESS) error_handler(); } if (strcmp(str_out, "") != 0) { printf("INST Error%s\n", str_out); err = viFlush(vi, VI_READ_BUF); if (err != VI_SUCCESS) error_handler(); err = viFlush(vi, VI_WRITE_BUF); if (err != VI_SUCCESS) error_handler(); } } /* Handle VISA errors.
Programming Examples 37 ' features of your Agilent oscilloscope. ' ------------------------------------------------------------------Option Explicit Public err As Long Public drm As Long Public vi As Long ' Error returned by VISA function calls. ' Session to Default Resource Manager. ' Session to instrument. ' Declare variables to hold numeric values returned by ' viVScanf/viVQueryf.
37 Programming Examples End Sub ' ' Initialize the oscilloscope to a known state. ' ------------------------------------------------------------------Private Sub Initialize() ' Clear the interface. err = viClear(vi) If Not (err = VI_SUCCESS) Then HandleVISAError vi ' Get and display the device's *IDN? string. strQueryResult = DoQueryString("*IDN?") MsgBox "*IDN? string: " + strQueryResult, vbOKOnly, "*IDN? Result" ' Clear status and load the default setup.
Programming Examples 37 ' Output setup string to a file: Dim strPath As String strPath = "c:\scope\config\setup.dat" If Len(Dir(strPath)) Then Kill strPath ' Remove file if it exists. End If ' Open file for output. Dim hFile As Long hFile = FreeFile Open strPath For Binary Access Write Lock Write As hFile Dim lngI As Long For lngI = 0 To lngSetupStringSize - 1 Put hFile, , byteArray(lngI) ' Write data. Next lngI Close hFile ' Close file.
37 Programming Examples ' Capture an acquisition using :DIGitize. ' ----------------------------------------------------------------DoCommand ":DIGitize CHANnel1" End Sub ' ' Analyze the captured waveform. ' ------------------------------------------------------------------Private Sub Analyze() ' Make a couple of measurements. ' ----------------------------------------------------------------DoCommand ":MEASure:SOURce CHANnel1" Debug.
Programming Examples 37 ' Set the waveform points mode. DoCommand ":WAVeform:POINts:MODE RAW" Debug.Print "Waveform points mode: " + _ DoQueryString(":WAVeform:POINts:MODE?") ' Get the number of waveform points available. Debug.Print "Waveform points available: " + _ DoQueryString(":WAVeform:POINts?") ' Set the waveform source. DoCommand ":WAVeform:SOURce CHANnel1" Debug.
37 Programming Examples ElseIf intType = 1 Then Debug.Print "Acquisition type: PEAK" ElseIf intType = 2 Then Debug.Print "Acquisition type: AVERage" ElseIf intType = 3 Then Debug.Print "Acquisition type: HRESolution" End If Debug.Print "Waveform points: " + _ FormatNumber(lngPoints, 0) Debug.Print "Waveform average count: " + _ FormatNumber(lngCount, 0) Debug.Print "Waveform X increment: " + _ Format(dblXIncrement, "Scientific") Debug.Print "Waveform X origin: " + _ Format(dblXOrigin, "Scientific") Debug.
Programming Examples 37 ' Close output file. Close hFile ' Close file. MsgBox "Waveform format BYTE data written to " + _ "c:\scope\data\waveform_data.csv.
37 Programming Examples err = viVScanf(vi, "%lf" + vbLf, VarPtr(dblResult)) If (err <> VI_SUCCESS) Then HandleVISAError vi DoQueryNumber = dblResult CheckInstrumentErrors End Function Private Function DoQueryNumbers(query As String) As Long Dim dblResult As Double ' Send query. err = viVPrintf(vi, query + vbLf, 0) If (err <> VI_SUCCESS) Then HandleVISAError vi ' Set up paramsArray for multiple parameter query returning array.
37 Programming Examples If (err <> VI_SUCCESS) Then HandleVISAError vi ' retCount is now actual number of bytes returned by query. DoQueryIEEEBlock_Bytes = retCount CheckInstrumentErrors End Function Private Sub CheckInstrumentErrors() On Error GoTo ErrorHandler Dim strErrVal As String * 200 Dim strOut As String err = viVPrintf(vi, ":SYSTem:ERRor?" + vbLf, 0) If (err <> VI_SUCCESS) Then HandleVISAError vi ' Query any errors. err = viVScanf(vi, "%t", strErrVal) ' Read: Errnum,"Error String".
37 Programming Examples MsgBox "*** VISA Error : " + strVisaErr, vbExclamation ' If the error is not a warning, close the session. If err < VI_SUCCESS Then If session <> 0 Then Call viClose(session) End End If End Sub VISA Example in C# To compile and run this example in Microsoft Visual Studio 2008: 1 Open Visual Studio. 2 Create a new Visual C#, Windows, Console Application project. 3 Cut- and- paste the code that follows into the C# source file.
Programming Examples 37 namespace InfiniiVision { class VisaInstrumentApp { private static VisaInstrument myScope; public static void Main(string[] args) { try { myScope = new VisaInstrument("USB0::0x0957::0x17A6::US50210029::0::INSTR"); myScope.SetTimeoutSeconds(10); // Initialize - start from a known state. Initialize(); // Capture data. Capture(); // Analyze the captured waveform. Analyze(); } catch (System.ApplicationException err) { Console.WriteLine("*** VISA Error Message : " + err.
37 Programming Examples myScope.DoCommand("*CLS"); myScope.DoCommand("*RST"); } /* * Capture the waveform. * -------------------------------------------------------------*/ private static void Capture() { // Use auto-scale to automatically configure oscilloscope. myScope.DoCommand(":AUToscale"); // Set trigger mode (EDGE, PULSe, PATTern, etc., and input source. myScope.DoCommand(":TRIGger:MODE EDGE"); Console.WriteLine("Trigger mode: {0}", myScope.
Programming Examples 37 // Set horizontal scale and position. myScope.DoCommand(":TIMebase:SCALe 0.0002"); Console.WriteLine("Timebase scale: {0}", myScope.DoQueryString(":TIMebase:SCALe?")); myScope.DoCommand(":TIMebase:POSition 0.0"); Console.WriteLine("Timebase position: {0}", myScope.DoQueryString(":TIMebase:POSition?")); // Set the acquisition type (NORMal, PEAK, AVERage, or HRESolution ). myScope.DoCommand(":ACQuire:TYPE NORMal"); Console.WriteLine("Acquire type: {0}", myScope.
37 Programming Examples // Download the screen image. // ----------------------------------------------------------myScope.DoCommand(":HARDcopy:INKSaver OFF"); // Get the screen data. nLength = myScope.DoQueryIEEEBlock(":DISPlay:DATA? PNG, COLor", out ResultsArray); // Store the screen data to a file. strPath = "c:\\scope\\data\\screen.png"; FileStream fStream = File.Open(strPath, FileMode.Create); fStream.Write(ResultsArray, 0, nLength); fStream.Close(); Console.
Programming Examples double fType = fResultsArray[1]; if (fType == 0.0) { Console.WriteLine("Acquire type: } else if (fType == 1.0) { Console.WriteLine("Acquire type: } else if (fType == 2.0) { Console.WriteLine("Acquire type: } else if (fType == 3.0) { Console.WriteLine("Acquire type: } 37 NORMal"); PEAK"); AVERage"); HRESolution"); double fPoints = fResultsArray[2]; Console.WriteLine("Waveform points: {0:e}", fPoints); double fCount = fResultsArray[3]; Console.
37 Programming Examples writer.WriteLine("{0:f9}, {1:f6}", fXorigin + ((float)i * fXincrement), (((float)ResultsArray[i] - fYreference) * fYincrement) + fYorigin); // Close output file. writer.Close(); Console.WriteLine("Waveform format BYTE data written to {0}", strPath); } } class VisaInstrument { private int m_nResourceManager; private int m_nSession; private string m_strVisaAddress; // Constructor. public VisaInstrument(string strVisaAddress) { // Save VISA addres in member variable.
Programming Examples 37 nLength); CheckVisaStatus(nViStatus); // Write the data to the formatted I/O write buffer. nViStatus = visa32.viBufWrite(m_nSession, DataArray, nLength, out nBytesWritten); CheckVisaStatus(nViStatus); // Check for inst errors. CheckInstrumentErrors(strCommand); return nBytesWritten; } public StringBuilder DoQueryString(string strQuery) { // Send the query. VisaSendCommandOrQuery(strQuery); // Get the result string.
37 Programming Examples // Return string results. return fResultsArray; } public int DoQueryIEEEBlock(string strQuery, out byte[] ResultsArray) { // Send the query. VisaSendCommandOrQuery(strQuery); // Get the result string. int length; // Number of bytes returned from instrument. length = VisaGetResultIEEEBlock(out ResultsArray); // Check for inst errors. CheckInstrumentErrors(strQuery); // Return string results.
Programming Examples 37 { double[] fResultsArray; fResultsArray = new double[10]; // Read return value string from the device. int nViStatus; nViStatus = visa32.viScanf(m_nSession, "%,10lf\n", fResultsArray); CheckVisaStatus(nViStatus); return fResultsArray; } private int VisaGetResultIEEEBlock(out byte[] ResultsArray) { // Results array, big enough to hold a PNG. ResultsArray = new byte[300000]; int length; // Number of bytes returned from instrument.
37 Programming Examples } Console.Write(strInstrumentError); } } while (!strInstrumentError.ToString().StartsWith("+0,")); } private void OpenResourceManager() { int nViStatus; nViStatus = visa32.viOpenDefaultRM(out this.m_nResourceManager); if (nViStatus < visa32.VI_SUCCESS) throw new ApplicationException("Failed to open Resource Manager"); } private void OpenSession() { int nViStatus; nViStatus = visa32.viOpen(this.m_nResourceManager, this.m_strVisaAddress, visa32.VI_NO_LOCK, visa32.
Programming Examples 37 VISA Example in Visual Basic .NET To compile and run this example in Microsoft Visual Studio 2008: 1 Open Visual Studio. 2 Create a new Visual Basic, Windows, Console Application project. 3 Cut- and- paste the code that follows into the Visual Basic .NET source file. 4 Edit the program to use the VISA address of your oscilloscope.
37 Programming Examples New VisaInstrument("USB0::0x0957::0x17A6::US50210029::0::INSTR ") myScope.SetTimeoutSeconds(10) ' Initialize - start from a known state. Initialize() ' Capture data. Capture() ' Analyze the captured waveform. Analyze() Catch err As System.ApplicationException Console.WriteLine("*** VISA Error Message : " + err.Message) Catch err As System.SystemException Console.WriteLine("*** System Error Message : " + err.Message) Catch err As System.Exception Debug.
Programming Examples 37 myScope.DoQueryString(":TRIGger:EDGE:SOURce?")) myScope.DoCommand(":TRIGger:EDGE:LEVel 1.5") Console.WriteLine("Trigger edge level: {0}", _ myScope.DoQueryString(":TRIGger:EDGE:LEVel?")) myScope.DoCommand(":TRIGger:EDGE:SLOPe POSitive") Console.WriteLine("Trigger edge slope: {0}", _ myScope.DoQueryString(":TRIGger:EDGE:SLOPe?")) ' Save oscilloscope configuration. Dim ResultsArray As Byte() ' Results array. Dim nLength As Integer ' Number of bytes returned from inst.
37 Programming Examples ' Read setup string from file. strPath = "c:\scope\config\setup.stp" DataArray = File.ReadAllBytes(strPath) ' Restore setup string. nBytesWritten = myScope.DoCommandIEEEBlock(":SYSTem:SETup", _ DataArray) Console.WriteLine("Setup bytes restored: {0}", nBytesWritten) ' Capture an acquisition using :DIGitize. myScope.DoCommand(":DIGitize CHANnel1") End Sub ' ' Analyze the captured waveform.
Programming Examples 37 ' -----------------------------------------------------------' Set the waveform points mode. myScope.DoCommand(":WAVeform:POINts:MODE RAW") Console.WriteLine("Waveform points mode: {0}", _ myScope.DoQueryString(":WAVeform:POINts:MODE?")) ' Get the number of waveform points available. myScope.DoCommand(":WAVeform:POINts 10240") Console.WriteLine("Waveform points available: {0}", _ myScope.DoQueryString(":WAVeform:POINts?")) ' Set the waveform source. myScope.
37 Programming Examples Dim fXreference As Double = fResultsArray(6) Console.WriteLine("Waveform X reference: {0:e}", fXreference) Dim fYincrement As Double = fResultsArray(7) Console.WriteLine("Waveform Y increment: {0:e}", fYincrement) Dim fYorigin As Double = fResultsArray(8) Console.WriteLine("Waveform Y origin: {0:e}", fYorigin) Dim fYreference As Double = fResultsArray(9) Console.WriteLine("Waveform Y reference: {0:e}", fYreference) ' Get the waveform data. nLength = myScope.
Programming Examples 37 ' Open a VISA resource session. OpenSession() ' Clear the interface. Dim nViStatus As Integer nViStatus = visa32.viClear(m_nSession) End Sub Public Sub DoCommand(ByVal strCommand As String) ' Send the command. VisaSendCommandOrQuery(strCommand) ' Check for inst errors. CheckInstrumentErrors(strCommand) End Sub Public Function DoCommandIEEEBlock(ByVal strCommand As String, _ ByVal DataArray As Byte()) As Integer ' Send the command to the device.
37 Programming Examples ' Return string results. Return strResults End Function Public Function DoQueryNumber(ByVal strQuery As String) As Double ' Send the query. VisaSendCommandOrQuery(strQuery) ' Get the result string. Dim fResults As Double fResults = VisaGetResultNumber() ' Check for inst errors. CheckInstrumentErrors(strQuery) ' Return string results. Return fResults End Function Public Function DoQueryNumbers(ByVal strQuery As String) _ As Double() ' Send the query.
Programming Examples 37 Dim strWithNewline As String strWithNewline = [String].Format("{0}" & Chr(10) & "", _ strCommandOrQuery) Dim nViStatus As Integer nViStatus = visa32.viPrintf(m_nSession, strWithNewline) CheckVisaStatus(nViStatus) End Sub Private Function VisaGetResultString() As StringBuilder Dim strResults As New StringBuilder(1000) ' Read return value string from the device. Dim nViStatus As Integer nViStatus = visa32.
37 Programming Examples CheckVisaStatus(nViStatus) ' Write and read buffers need to be flushed after IEEE block? nViStatus = visa32.viFlush(m_nSession, visa32.VI_WRITE_BUF) CheckVisaStatus(nViStatus) nViStatus = visa32.viFlush(m_nSession, visa32.VI_READ_BUF) CheckVisaStatus(nViStatus) Return length End Function Private Sub CheckInstrumentErrors(ByVal strCommand As String) ' Check for instrument errors.
Programming Examples 37 If nViStatus < visa32.VI_SUCCESS Then Dim strError As New StringBuilder(256) visa32.viStatusDesc(Me.m_nResourceManager, nViStatus, strError) Throw New ApplicationException(strError.ToString()) End If End Sub Public Sub Close() If m_nSession <> 0 Then visa32.viClose(m_nSession) End If If m_nResourceManager <> 0 Then visa32.
37 Programming Examples SICL Examples • "SICL Example in C" on page 938 • "SICL Example in Visual Basic" on page 947 SICL Example in C To compile and run this example in Microsoft Visual Studio 2008: 1 Open Visual Studio. 2 Create a new Visual C++, Win32, Win32 Console Application project. 3 In the Win32 Application Wizard, click Next >. Then, check Empty project, and click Finish. 4 Cut- and- paste the code that follows into a file named "example.c" in the project directory.
Programming Examples #include #include #include #include #define SICL_ADDRESS #define TIMEOUT #define IEEEBLOCK_SPACE /* Function prototypes */ void initialize(void); void capture(void); void analyze(void); /* /* /* /* 37 For printf(). */ For strcpy(), strcat(). */ For clock(). */ Agilent SICL routines. */ "usb0[2391::6054::US50210029::0]" 5000 100000 /* Initialize to known state. */ /* Capture the waveform. */ /* Analyze the captured waveform.
37 Programming Examples /* Capture data. */ capture(); /* Analyze the captured waveform. */ analyze(); /* Close the device session to the instrument. */ iclose(id); printf ("Program execution is complete...\n"); /* For WIN16 programs, call _siclcleanup before exiting to release * resources allocated by SICL for this application. This call is * a no-op for WIN32 programs. */ _siclcleanup(); } /* Initialize the oscilloscope to a known state.
37 Programming Examples do_command(":TRIGger:EDGE:LEVel 1.5"); do_query_string(":TRIGger:EDGE:LEVel?"); printf("Trigger edge level: %s\n", str_result); do_command(":TRIGger:EDGE:SLOPe POSitive"); do_query_string(":TRIGger:EDGE:SLOPe?"); printf("Trigger edge slope: %s\n", str_result); /* Save oscilloscope configuration. * ------------------------------------------------------------- */ /* Read system setup. */ num_bytes = do_query_ieeeblock(":SYSTem:SETup?"); printf("Read setup string query (%d bytes).
37 Programming Examples fclose (fp); printf("Read setup string (%d bytes) from file ", num_bytes); printf("c:\\scope\\config\\setup.stp.\n"); /* Restore setup string. */ num_bytes = do_command_ieeeblock(":SYSTem:SETup", num_bytes); printf("Restored setup string (%d bytes).\n", num_bytes); /* Capture an acquisition using :DIGitize. * ------------------------------------------------------------- */ do_command(":DIGitize CHANnel1"); } /* Analyze the captured waveform.
Programming Examples 37 fp); fclose (fp); printf("Wrote screen image (%d bytes) to ", num_bytes); printf("c:\\scope\\data\\screen.png.\n"); /* Download waveform data. * ------------------------------------------------------------- */ /* Set the waveform points mode. */ do_command(":WAVeform:POINts:MODE RAW"); do_query_string(":WAVeform:POINts:MODE?"); printf("Waveform points mode: %s\n", str_result); /* Get the number of waveform points available.
37 Programming Examples } else if (acq_type == 3.
Programming Examples 37 { char message[80]; strcpy(message, command); strcat(message, "\n"); iprintf(id, message); check_instrument_errors(); } /* Command with IEEE definite-length block.
37 Programming Examples check_instrument_errors(); } /* Query for numbers result. * --------------------------------------------------------------- */ void do_query_numbers(query) char *query; { char message[80]; strcpy(message, query); strcat(message, "\n"); iprintf(id, message); iscanf(id, "%,10lf\n", dbl_results); check_instrument_errors(); } /* Query for an IEEE definite-length block result.
Programming Examples 37 strcat(str_out, str_err_val); ipromptf(id, ":SYSTem:ERRor?\n", "%t", str_err_val); } if (strcmp(str_out, "") != 0) { printf("INST Error%s\n", str_out); iflush(id, I_BUF_READ | I_BUF_WRITE); } } SICL Example in Visual Basic To run this example in Visual Basic for Applications: 1 Start the application that provides Visual Basic for Applications (for example, Microsoft Excel). 2 Press ALT+F11 to launch the Visual Basic editor. 3 Add the sicl32.
37 Programming Examples ' For Sleep subroutine. Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) ' ' Main Program ' ------------------------------------------------------------------Sub Main() On Error GoTo ErrorHandler ' Open a device session using the SICL_ADDRESS. id = iopen("usb0[2391::6054::US50210029::0]") Call itimeout(id, 5000) ' Initialize - start from a known state. Initialize ' Capture data. Capture ' Analyze the captured waveform.
Programming Examples 37 ErrorHandler: MsgBox "*** Error : " + Error, vbExclamation End End Sub ' ' Capture the waveform. ' ------------------------------------------------------------------Private Sub Capture() On Error GoTo ErrorHandler ' Use auto-scale to automatically configure oscilloscope. ' ----------------------------------------------------------------DoCommand ":AUToscale" ' Set trigger mode (EDGE, PULSe, PATTern, etc., and input source. DoCommand ":TRIGger:MODE EDGE" Debug.
37 Programming Examples Put hFile, , byteArray(lngI) Next lngI Close hFile ' Close file. ' Write data. ' Change settings with individual commands: ' ----------------------------------------------------------------' Set vertical scale and offset. DoCommand ":CHANnel1:SCALe 0.05" Debug.Print "Channel 1 vertical scale: " + _ DoQueryString(":CHANnel1:SCALe?") DoCommand ":CHANnel1:OFFSet -1.5" Debug.Print "Channel 1 vertical offset: " + _ DoQueryString(":CHANnel1:OFFSet?") ' Set horizontal scale and position.
Programming Examples 37 ' ' Analyze the captured waveform. ' ------------------------------------------------------------------Private Sub Analyze() On Error GoTo ErrorHandler ' Make a couple of measurements. ' ----------------------------------------------------------------DoCommand ":MEASure:SOURce CHANnel1" Debug.
37 Programming Examples ' Get the number of waveform points available. DoCommand ":WAVeform:POINts 10240" Debug.Print "Waveform points available: " + _ DoQueryString(":WAVeform:POINts?") ' Set the waveform source. DoCommand ":WAVeform:SOURce CHANnel1" Debug.Print "Waveform source: " + _ DoQueryString(":WAVeform:SOURce?") ' Choose the format of the data returned (WORD, BYTE, ASCII): DoCommand ":WAVeform:FORMat BYTE" Debug.
Programming Examples 37 Debug.Print "Acquisition type: HRESolution" End If Debug.Print "Waveform points: " + _ FormatNumber(lngPoints, 0) Debug.Print "Waveform average count: " + _ FormatNumber(lngCount, 0) Debug.Print "Waveform X increment: " + _ Format(dblXIncrement, "Scientific") Debug.Print "Waveform X origin: " + _ Format(dblXOrigin, "Scientific") Debug.Print "Waveform X reference: " + _ FormatNumber(lngXReference, 0) Debug.Print "Waveform Y increment: " + _ Format(sngYIncrement, "Scientific") Debug.
37 Programming Examples MsgBox "Waveform format BYTE data written to " + _ "c:\scope\data\waveform_data.csv.
Programming Examples 37 On Error GoTo ErrorHandler Dim strResult As String * 200 Call ivprintf(id, query + vbLf) Call ivscanf(id, "%200t", strResult) DoQueryString = strResult CheckInstrumentErrors Exit Function ErrorHandler: MsgBox "*** Error : " + Error, vbExclamation End End Function Private Function DoQueryNumber(query As String) As Double On Error GoTo ErrorHandler Dim dblResult As Double Call ivprintf(id, query + vbLf) Call ivscanf(id, "%lf" + vbLf, dblResult) DoQueryNumber = dblResult CheckInstrume
37 Programming Examples MsgBox "*** Error : " + Error, vbExclamation End End Function Private Function DoQueryIEEEBlock_Bytes(query As String) As Long On Error GoTo ErrorHandler ' Send query. Call ivprintf(id, query + vbLf) ' Read definite-length block bytes. Sleep 2000 ' Delay before reading data. Call ifread(id, byteArray(), ByteArraySize, vbNull, retCount) ' Get number of block length digits. Dim intLengthDigits As Integer intLengthDigits = CInt(Chr(byteArray(1))) ' Get block length from those digits.
Programming Examples 37 If Not strOut = "" Then MsgBox strOut, vbExclamation, "INST Error Messages" Call iflush(id, I_BUF_READ Or I_BUF_WRITE) End If Exit Sub ErrorHandler: MsgBox "*** Error : " + Error, vbExclamation End End Sub Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 957
37 Programming Examples 958 Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide
Index Symbols +9.9E+37, infinity representation, 867 +9.
Index CAL PROTECT button, 216 CAL PROTECT switch, 211 calculating preshoot of waveform, 354 calculating the waveform overshoot, 348 calibrate, 213, 214, 216, 220 CALibrate commands, 211 calibrate date, 213 calibrate introduction, 211 calibrate label, 214 calibrate output, 215 calibrate start, 217 calibrate status, 218 calibrate switch, 216 calibrate temperature, 219 calibrate time, 220 CAN acknowledge, 465 CAN and LIN demo signal, 244 CAN baud rate, 466 CAN demo signal, 243 CAN frame counters, reset, 462 C
Index cursor mode, 311 cursor position, 312, 314, 316, 317, 319 cursor readout, 793, 797, 798 cursor reset conditions, 140, 621 cursor source, 313, 315 cursor time, 793, 797, 798 cursors track measurements, 361 cursors, how autoscale affects, 157 cursors, X1, X2, Y1, Y2, 310 cycle measured, 342 cycle time, 351 D D- source, 703 D+ source, 704 data, 497, 499, 717 data 2, 500 data acquisition types, 710 data conversion, 712 data format for transfer, 712 data output order, 715 data pattern length, 472, 516 da
Index example code, :ACQuire:COMPlete, 189 example code, :ACQuire:SEGMented, 195 example code, :ACQuire:TYPE, 200 example code, :AUToscale, 158 example code, :CHANnel:LABel, 229 example code, :CHANnel:PROBe, 231 example code, :CHANnel:RANGe, 237 example code, :DIGitize, 164 example code, :DISPlay:DATA, 258 example code, :DISPlay:LABel, 259 example code, :DISPlay:ORDer, 781 example code, :MEASure:PERiod, 363 example code, :MEASure:RESults, 356 example code, :MEASure:TEDGe, 368 example code, :MTESt,
Index I I2C demo signal, 243 I2S alignment, 477 I2S audio channel, 486 I2S clock slope, 479 I2S CLOCk source, 481 I2S DATA source, 482 I2S demo signal, 244 I2S pattern data, 487 I2S pattern format, 489 I2S range, 490 I2S receiver width, 480 I2S SEARch commands, 588 I2S serial bus commands, 475 I2S serial decode base, 478 I2S serial search, audio channel, 589 I2S serial search, data, 591 I2S serial search, format, 592 I2S serial search, mode, 590 I2S serial search, range, 593 I2S transmit word size, 492 I2S
Index logic level activity, 774 long form, 862 low frequency sine with glitch demo signal, 243 low trigger level, 647 lower threshold, 351 lower threshold voltage for measurement, 791 lowercase characters in commands, 861 low-frequency reject filter, 659 low-level voltage, waveform generator, 757 low-pass filter used to limit bandwidth, 224, 264 LRN (Learn Device Setup), 135 lsbfirst, 715 M magnitude of occurrence, 369 main sweep range, 637 main time base, 817 main time base mode, 631 making measurements,
Index multiply math function as g(t) source, 274 N name channels, 229 name list, 260 negative glitch trigger polarity, 667 negative pulse width, 347 negative pulse width measurement, 45 negative slope, 521, 660 negative slope, Nth edge in burst, 654 negative TV trigger polarity, 699 network domain password, 298 network domain user name, 300 network printer address, 295 network printer domain, 297 network printer slot, 299 network printer, apply connection settings, 296 new line (NL) terminator, 121, 862 N
Index preamble data, 724 preamble metadata, 709 predefined logic threshold, 776 predefined threshold voltages, 818 present working directory, recall operations, 429 present working directory, save operations, 444 preset conditions, 621 preshoot measured on waveform, 354 previously stored configuration, 139 print command, 179 print job, start, 303 print mask test failures, 406 print query, 813 printer driver for hardcopy, 790 printer, active, 290 printing, 288 printing in grayscale, 788 probe, 658 probe att
Index runt search qualifier, 574 runt search source, 575 runt search, pulse time, 576 RUNT trigger commands, 680 runt trigger polarity, 681 runt trigger qualifier, 682 runt trigger source, 683 runt trigger time, 684 Rx frame count (UART), 543 Rx source, 548 S sample rate, 198 sampled data, 780 sampled data points, 717 SAV (Save), 143 save, 143, 434 SAVE commands, 433 save filename, 436 save image, 437 save image with inksaver, 440 save mask, 442, 443 save mask test failures, 407 save path information, 444
Index square wave duty cycle, waveform generator, 750 square waveform generator output, 746 SRE (Service Request Enable Register), 145, 835 SRQ (Service Request interrupt), 165, 169 standard deviation measured on waveform, 360 Standard Event Status Enable Register (ESE), 130, 840 Standard Event Status Register (ESR), 132, 839 standard for video, 701 standard, LIN, 510 start acquisition, 148, 163, 180, 182 start and stop edges, 338 start cursor, 797 start measurement, 330 start print job, 303 start time, 66
Index trigger type, SPI, 533 trigger type, UART, 555 TRIGger UART commands, 535 TRIGger USB commands, 702 trigger, CAN, 469 trigger, CAN pattern data length, 472 trigger, CAN pattern ID mode, 474 trigger, CAN sample point, 465 trigger, CAN signal baudrate, 466 trigger, CAN signal definition, 467 trigger, CAN source, 468 trigger, duration greater than, 675 trigger, duration less than, 676 trigger, duration range, 679 trigger, edge coupling, 657 trigger, edge level, 658 trigger, edge reject, 659 trigger, edg
Index vertical axis range for channels, 237 vertical offset for channels, 230 vertical peak-to-peak measured on waveform, 376 vertical scale, 238, 281 vertical scaling, 724 vertical threshold, 776 vertical value at center screen, 277, 280 vertical value maximum measured on waveform, 374 vertical value measurements to calculate overshoot, 348 vertical value minimum measured on waveform, 375 video line to trigger on, 697 video standard selection, 701 view, 186, 271, 736, 781 view turns function on or off, 78