background image

xx

FCA3000, FCA3100, MCA3000 Series

Timer/Counter/Analyzers

ZZZ

Programmer Manual

*P077049400*

077-0494-00

Summary of Contents for FCA3000 Series

Page 1: ...xx FCA3000 FCA3100 MCA3000 Series Timer Counter Analyzers ZZZ Programmer Manual P077049400 077 0494 00 ...

Page 2: ......

Page 3: ...FCA3000 FCA3100 MCA3000 Series Timer Counter Analyzers ZZZ Programmer Manual xx Revision A www tektronix com 077 0494 00 ...

Page 4: ...d and pending Information in this publication supersedes that in all previously published material Specifications and price change privileges reserved TEKTRONIX and TEK are registered trademarks of Tektronix Inc Contacting Tektronix Tektronix Inc 14150 SW Karl Braun Drive P O Box 500 Beaverton OR 97077 USA For product information sales service and technical support In North America call 1 800 833 ...

Page 5: ...ming Subsystem 2 11 Calculate Subsystem 2 11 Calibration Subsystem 2 13 Configure Function 2 13 Display Subsystem 2 14 Fetch Function 2 14 Format Subsystem 2 15 Hard Copy 2 15 Initiate Subsystem 2 16 Input Subsystem 2 16 Measurement Subsystem 2 17 Memory Subsystem 2 19 Output Subsystem 2 20 Read Function 2 20 Sense Command Subsystem 2 20 Status Subsystem 2 21 System Subsystem 2 22 Test Subsystem 2...

Page 6: ...ming Examples 4 1 Introduction 4 1 Individual Measurements Example 1 4 2 Block Measurements Example 2 4 4 Fast Measurements Example 3 4 6 USB Communication Example 4 4 9 Continuous Measurements Example 5 4 11 Appendices Appendix A Character Set A 1 Appendix B Default Command Settings B 1 Appendix C Instrument Settings After RST C 1 Appendix D Reserved Words D 1 ii FCA3000 FCA3100 MCA3000 Series Pr...

Page 7: ...y functional groups and describes all commands in alphabetical order Status and Events This section discusses the status and event reporting system for the GPIB interfaces This system informs you of certain significant events that occur within the instrument Topics that are discussed include registers queues event handling sequences synchronization methods and messages that the instrument may retu...

Page 8: ...Preface iv FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 9: ...Getting Started ...

Page 10: ......

Page 11: ... memory and remains until you change it You can also set the GPIB address remotely by using a GPIB command Standby Power and Remote Access When the instrument is in REMOTE mode you cannot power it off from the power button You must first push the Esc button to enter Local mode and then push the Power button Testing the Bus To test that the instrument is operational over the bus send the IDN comman...

Page 12: ...ment can receive programming instructions from the controller L4 has the following functions Basic listener No listen only Automatic unaddressing as listener when addressed as a talker SR1 Service request The instrument can call for attention from the controller such as when a measurement is completed and a result is available RL1 Remote local function You can control the instrument manually local...

Page 13: ...the instrument and also set control signals such as Remote or Local Third party application programs such as LabView normally support USB communication directly for example through the Instrument I O Assistant Custom specific programs using USB communication can be written in C C supported by libraries and lib files supplied with the NI VISA driver default location C VXIPNP WinNT A sample program ...

Page 14: ...Using the USB Interface 1 4 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 15: ...Syntax and Commands ...

Page 16: ......

Page 17: ...ment is required Optional can be omitted Previous element s may be repeated Comment Command and Query Structure Commands consist of set commands and query commands usually called commands and queries Commands modify instrument settings or tell the instrument to perform a specific action Queries cause the instrument to return data and status information Most commands have both a set form and a quer...

Page 18: ...ommand header and the related argument Optionally a white space may consist of multiple white space characters Commands Commands cause the instrument to perform a specific function or change one of the settings Commands have the structure Header Space Argument Comma Argument A command header consists of one or more mnemonics arranged in a hierarchical or tree structure The first mnemonic is the ba...

Page 19: ...ace characters and line feeds Abbreviating You can abbreviate many instrument commands The syntax of each command shows the minimum acceptable abbreviations in capitals For example you can enter the command CALCulate AVERage COUNt as CALC AVER COUN or calc aver coun Abbreviation rules may change over time as new instrument models are introduced Thus for the most robust code use the full spelling C...

Page 20: ... OPC Any commands that follow are processed as if the star command was not there For example the commands INPUT ATTENUATION 10 OPC INPUT COUPLING DC set the input attenuation to 10X and set the input coupling to DC Message Terminator This documentation uses EOM End of Message to represent a message terminator An incoming end of message terminator can be one of the following END message EOI asserte...

Page 21: ...g This is a quoted string A quoted string can include any character defined in the 7 bit ASCII character set Follow these rules when you use quoted strings 1 Use the same type of quote character to open and close the string For example this is a valid string 2 You can mix quotation marks within a string if you follow the previous rule For example this is an acceptable string 3 You can include a qu...

Page 22: ... cannot call a macro from within itself recursion You can use variable parameters that modify the macro Use macros to do the following Provide a shorthand for complex commands Cut down on bus traffic Macro Names You can use both commands and queries as macro labels The label cannot be the same as common commands or queries If a macro label is the same as an instrument command the instrument will e...

Page 23: ... 1 INP LEV AUTO ON ARM START LAY2 SOURCE BUS INIT CONT ON TRG This example defines a macro FREQUENCY that takes a single frequency measurement with an automatic trigger level setting and places the result in the output queue Macros with arguments You can pass arguments variable parameters with the macro Insert a dollar sign followed by a single digit in the range 1 to 9 where you want to insert th...

Page 24: ...ble Macro Query Use this query to determine if macros are enabled Possible response 1 macros are enabled 0 macros are disabled How to Execute a Macro Macros are disabled after RST so to be sure start by enabling macros with EMC 1 Now macros can be executed by using the macro labels as commands Example DMC LIMITMON CALC STAT ON CALC LIM STAT ON CALC LIM LOW DATA 1 STAT ON CALC LIM UPP DATA 2 STAT O...

Page 25: ... containing the labels of all the macros stored in the Timer instrument Example LMC might return MYINPSETTING LIMITMON Now there are two macros in memory and they have the following labels MYINPSETTING and LIMITMON FCA3000 FCA3100 MCA3000 Series Programmer Manual 2 9 ...

Page 26: ...Command Syntax 2 10 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 27: ...re you can recalculate the result using mathematics make statistics and set upper and lower limits for the measurement result The instrument itself monitors the result and alerts you when the limits are exceeded Limit monitoring makes it is possible to get a service request when the measurement value falls below a lower limit or rises above an upper limit Two status bits are defined to support lim...

Page 28: ...IMit FCOunt query CALCulate LIMit CLEar AUTO Activates or deactivates automatic reset by INIT of the instrument that reports its result using the CALCulate LIMit FCOunt query CALCulate LIMit FAIL Returns the result of limit testing CALCulate LIMit FCOunt Returns the total number of times the set lower and upper limits have been passed since the instrument was last reset CALCulate LIMit FCOunt LOWe...

Page 29: ...ers before making the measurement CONFigure READ The CONFigure command causes the instrument to choose an optimal setting for the specified measurement CONFigure may cause any device setting to change READ starts the acquisition and returns the result This sequence operates in the same way as the MEASure command but now it is possible to insert commands between CONFigure and READ to fine tune the ...

Page 30: ...9 Configure commands Command Description CONFigure ARRay MeasuringFunction Sets up the instrument to perform the number of measurements you choose CONFigure MeasuringFunction Sets up the instrument to perform one measurement CONFigure TOTalize CONTinuous Set up the instrument to take repeated measurements Display Subsystem Commands in this subsystem control what data is to be present on the displa...

Page 31: ...ght byte block containing the floating point measured value followed by an eight byte block containing the floating point timestamp value When doing readouts in array form with FETCh ARRay READ ARRay or MEASure ARRay the response consists of alternating measurement values and timestamp values formatted in a similar way as for scalar readout All values are separated by commas Table 2 12 Format comm...

Page 32: ...ate CONTinuous Initiate the trigger system to take continuous measurements Input Subsystem The Input subsystem performs all the signal conditioning of the input signal before it is converted into data by the Sense subsystem The Input subsystem includes coupling impedance filtering and so forth 2 16 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 33: ...rom the Measure group describe the signal you are going to measure This means that the Measure functions give compatibility between instruments since you don t need to know anything about the instrument you are using MEASure This is the most simple query to use but it does not offer much flexibility The MEASure query lets the instrument configure itself for an optimal measurement starts the data a...

Page 34: ...urements taken at all positive and negative trigger level crossings MEASure FALL TIME FTIM Takes a fall time measurement MEASure FREQuency Takes a frequency measurement MEASure FREQuency BURSt Takes a measurement of the carrier frequency of a burst MEASure FREQuency POWer AC Takes a power measurement MEASure FREQuency PRF Takes a pulse repetition frequency measurement MEASure FREQuency RATio Takes...

Page 35: ...system holds macro and instrument state data inside the instrument Table 2 18 Memory commands Command Description MEMory DATA RECord COUNt Returns the number of samples in a given memory location MEMory DATA RECord DELete Erases a given memory location MEMory DATA RECord FETCh Returns one sample from a given memory location MEMory DATA RECord FETCh ARRay Returns multiple samples from a given memor...

Page 36: ...ction resolution and so on Depending on application you can select different input channels and input characteristics Switchbox In automatic test systems it is difficult to swap BNC cables when you need to measure on several measuring points The FCA3000 series lets you switch between input A and B to take measurements directly without the need for external switching devices Prescaling For all meas...

Page 37: ...n Switches the linear regression function on and off FUNCtion Sets the measuring function to be performed and input channel HF ACQuisition STATe Switches the automatic acquisition system on or off HF FREQuency CENTer Sets the center frequency value for the RF input ROSCillator SOURce Selects the source for the time base TIError FREQuency Sets a reference frequency for relative frequency measuremen...

Page 38: ...me system parameters like timeout Table 2 23 System commands Command Description SYSTem COMMunicate GPIB ADDRess Sets or returns the GPIB address SYSTem ERRor Queries for an ASCII text description of an error that occurred SYSTem LANGuage Selects one of two command sets SYSTem PRESet Recalls the default settings for the instrument SYSTem SET Returns the complete current state of the instrument SYS...

Page 39: ...l events Instrument Action Some examples of events to synchronize with are as follows Measurement Bus trigger External signal level or pulse Ten occurrences of a pulse on the external trigger input Other instrument ready Signal switching Input signal present One second after input signal is present Sourcing output signal Switching system ready The ARM TRIG Trigger Configuration gives a typical tri...

Page 40: ...hen the instrument receives an INITiate IMMediate The instrument will pass directly through the INITIATED state downward to the next event detection layers if the instrument contains any more layers The trigger system will return to the INITIATED state when all events required by the detection layers have occurred and the instrument has made the intended measurement When you program the trigger sy...

Page 41: ... occurrence of the event and entering into the next layer or starting the device actions when in the TRIGger layer This delay can be programmed by using the layer DELay command Backward traversing an event detection layer The number of times a layer event has to initiate a device action can be programmed by using the layer COUNt command For example TRIGger COUNt 3 causes the instrument to measure ...

Page 42: ...Description TRIGger COUNt Sets or returns how many measurements the instrument should make for each arm condition TRIGger SOURce Enables or disables the sample rate control TRIGger TIMer Sets the sample rate fur use with the statistics functions 2 26 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 43: ...N Returns a message that can be sent to the instrument to return it to the state it was in when the LRN query was made OPC Generates the operation complete message in the Standard Event Status Register OPT Return all detectable features present in the instrument PMC Deletes all macro definitions PSC Enables disables automatic power on clearing PUD Sets or returns protected user data RCL Recalls on...

Page 44: ...d generates a response indicating whether or not the instrument completed the self test without any detected errors WAI Prevents the instrument from executing any further commands or queries until execution of all previous commands or queries is completed 2 28 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 45: ...asurements if WAI is not used Group Measurement Syntax ABORt ACQuisition APERture Sets the gate time for one measurement Group Sense Syntax ACQuisition APERture Decimal value MIN MAX ACQuisition APERture Arguments DECIMAL VALUE is 20 ns to 1000s MIN sets 20 ns and MAX sets 1000 s Returns Decimal value 200 ms after SYST PRES 10 ms after RST ACQuisition HOFF Sets the Hold Off function On or Off Grou...

Page 46: ...he instrument loops the trigger subsystem downwards COUNt number of times before it exits to the idle state This means that a COUNt number of measurements can be done for each Bus arming or INITiate NOTE The actual number of measurements made on each INIT is equal to ARM COUNT TRIG START COUNT Group Arming Syntax ARM COUNt Numeric value MIN MAX INFinity ARM COUNt Arguments Numeric value is an inte...

Page 47: ...20 10 9 and 2 MIN sets 0 which switches the delay OFF MAX sets 2 s Returns Numeric value Examples ARM DELAY 0 1 ARM LAYer2 No Query Form This command overrides the waiting for bus arm provided the source is set to bus When this command is issued the instrument will immediately exit the wait for bus arm state The instrument generates an error if it receives this command when the trigger subsystem i...

Page 48: ...or if it receives GET TRG and bus arming is switched off set to IMMediate Group Arming Syntax ARM LAYer2 SOURce BUS IMMediate ARM LAYer2 SOURce Arguments BUS IMMediate Examples ARM LAYER2 SOURCE BUS ARM SLOPe Sets the slope for the start arming condition Group Arming Syntax ARM SLOPe POSitive NEGative ARM SLOPe Arguments POS NEG Examples ARM SLOPE NEG ARM SOURce Selects START arming input or switc...

Page 49: ...stop using the commands TOT GATEON OFF Returns EXT1 EXT2 EXT4 IMM Examples ARM SOURCE EXT4 ARM STOP SLOPe Sets the slope for the stop arming condition Group Arming Syntax ARM STOP SLOPe POSitive NEGative ARM STOP SLOPe Returns POS NEG Examples ARM STOP SLOPE NEG ARM STOP SOURce Selects STOP arming input or switches off the STOP arming function The FCA3100 Series has also a programmable timer that ...

Page 50: ... OFF Returns EXT1 EXT2 EXT4 TIM IMM Examples ARM STOP SOURCE EXT4 ARM STOP TIMer This command sets a delay between a pulse on the selected start arming input when totalizing starts and the point of time when totalizing stops Range 20 ns to 2 s with 10 ns resolution Group Arming Syntax ARM STOP TIMer Numeric value MIN MAX ARM STOP TIMer Arguments Numeric value is a number between 20 10 9 and 2 s MI...

Page 51: ...andard deviation min and max value from the current statistics sampling Group Calculate Syntax CALCulate AVERage ALL Returns mean value standard deviation min value max value CALCulate AVERage COUNt Sets the number of samples to use in statistics sampling Group Calculate Syntax CALCulate AVERage COUNt number of samples CALCulate AVERage COUNt Arguments number of samples is an integer in the range ...

Page 52: ...em initiated until the CALCulate AVERage COUNt variable is reached This is done without any change in the trigger subsystem settings Consider that the trigger subsystem is programmed to perform 1000 measurements when initiated In such a case the instrument must make 10000 measurements if the statistical function requires 9500 measurements because the number of measurements must be a multiple of th...

Page 53: ...ments MAX returns the maximum value of all samples taken under CALC AVERcontrol MIN returns the minimum value of all samples taken under CALC AVERcontrol MEAN returns the mean value of the samples taken SDEV returns the standard deviation of the samples taken ADEV returns the Allan deviation of the samples taken Returns MAX MIN MEAN SDEV ADEV CALCulate DATA Query Only Returns data calculated in th...

Page 54: ...te subsystem to reprocess the statistical function on the sense data without reacquiring the data Query returns this reprocessed data Group Calculate Syntax CALCulate IMMediate CALCulate IMMediate Returns Decimal data Where Decimal data is the recalculated data Examples CALCULATE IMMEDIATE CALC AVER STAT ON TYPES DEV INIT OPC Wait for operation complete CALC DATA VALUE OF STANDARD DEVIATION CALC A...

Page 55: ...t value enters a band LOWer set at the upper band border and UPPer set at the lower border Turning the limit monitoring calculations On Off will not influence the status register mask bits which determine whether or not a service request is generated when a limit is reached NOTE The calculate subsystem is automatically enabled when limit monitoring is switched on This means that other enabled calc...

Page 56: ...ting has passed The following events reset the fail flag Power on RST A CALC LIM STATOFF CALC LIM STATONtransition Reading a 1 with this command Group Calculate Syntax CALCulate LIMit FAIL Returns 1 0 Examples SENS FUNC FREQ CALC LIM STATON CALC LIM UPPER 1E3 READ WAI CALC LIM FAIL might return 1 if frequency is above 1 kHz and 0 otherwise CALCulate LIMit FCOunt Query Only The command returns the ...

Page 57: ...s last reset by CALCulate LIMit CLEar or automatically by INITiate if CALCulate LIMit CLEar AUTO is set to ON Group Calculate Syntax CALCulate LIMit FCOunt LOWer Returns Number of counts CALCulate LIMit FCOunt UPPer Query Only The command returns the number of times the set upper limit was passed since the instrument was last reset by CALCulate LIMit CLEar or automatically by INITiate if CALCulate...

Page 58: ... Decimal data CALCulate LIMit LOWer STATe Selects if the measured value should be checked against the lower limit Group Calculate Syntax CALCulate LIMit LOWer STATe Boolean CALCulate LIMit LOWer STATe Arguments BOOLEAN 1 ON 0 OFF Returns 1 0 CALCulate LIMit PCOunt The command returns the number of measurement results between the set lower and upper limits since the instrument was last reset by CAL...

Page 59: ...ALCulate LIMit UPPer Arguments RANGE 9 9 10 37 to 9 9 10 37 Returns Decimal data CALCulate LIMit UPPer STATe Selects if the measured value should be checked against the upper limit Group Calculate Syntax CALCulate LIMit UPPer STATe Boolean CALCulate LIMit UPPer STATe Arguments BOOLEAN 1 ON 0 OFF Returns 1 0 CALCulate MATH Defines the mathematical expression used for mathematical operations NOTE Th...

Page 60: ...64 X 1 07E7 1E6 CALCulate MATH STATe Switches on off the mathematical function NOTE The CALCulate subsystem is automatically enabled when MATH operations are switched on This means that other enabled calculate sub blocks are indirectly switched on Switching off mathematics however does not switch off the CALCulate subsystem Group Calculate Syntax CALCulate MATH STATe Boolean CALCulate MATH STATe A...

Page 61: ...primary and secondary channel are being used you can manipulate the measurement results before presentation by selecting one of three postprocessing formulas that operate directly on the raw data Group Calculate Syntax CALCulate TOTalize TYPE APLUSB AMINUSB ADIVB CALCulate TOTalize TYPE Arguments APLUSB selects the expression A B to add the results in the two registers AMINUSB selects the expressi...

Page 62: ... the instrument does no calibrations but uses the values from the last preceding calibration The intention of this command is to turn off the auto calibration for applications that dump measurements into the internal memory This will increase the measurement speed Group Calibration Syntax CALibration INTerpolator AUTO Boolean CALibration INTerpolator AUTO Arguments BOOLEAN 1 ON 0 OFF Returns 1 0 C...

Page 63: ...lowing table Table 2 27 Measuring functions and parameters Measuring functions Parameters FREQuency expected value resolution 1 2 3 4 6 FREQuency BURSt expected value resolution 1 2 3 FREQuency POWer 3 FREQuency PRF expected value resolution 1 2 3 FREQuency RATio expected value resolution 1 2 3 1 2 3 NCYCles 1 2 3 PDUTycycle DCYCle reference 1 2 NDUTycycle reference 1 2 PERiod expected value resol...

Page 64: ...tradeoff between the minimum number of pulses in a burst and the frequency range Examples CONF ARR PER 7 5E3 1E6 4 This example sets up the instrument to make seven period measurements The expected result is 5 ms and the required resolution is 1 ms The EXT ARM input is the measuring input To make the measurements and fetch the seven measurement results READ ARRAY 7 might return 5 23421E 3 5 12311E...

Page 65: ...alue resolution 1 2 3 4 6 FREQuency BURSt expected value resolution 1 2 3 FREQuency POWer 3 FREQuency PRF expected value resolution 1 2 3 FREQuency RATio expected value resolution 1 2 3 1 2 3 NCYCles 1 2 3 PDUTycycle DCYCle reference 1 2 NDUTycycle reference 1 2 PERiod expected value resolution 1 2 3 PERiod AVERage expected value resolution 1 2 3 PHASe expected value resolution 1 2 1 2 PSLEwrate 1...

Page 66: ...slopes on input A send INPut 1 2 SLOPe NEG after the CONFigure TOTalize CONTinuous command The results of successive ON OFF periods are accumulated Group Configure Syntax CONFigure TOTalize CONTinuous 1 2 1 2 CONFigure TOTalize CONTinuous Arguments 1 2 is the primary channel 1 2 is the secondary channel 1 stands for input A 2 stands for input B This measurement cannot be made as a MEASure it must ...

Page 67: ... device will execute on receiving the GET interface message or the TRG common command Group Common Syntax DDT arbitrary block DDT Arguments arbitrary block is one of six accepted blocks 14INIT 15FETC 15READ 18ARM LAY2 19INIT OPC 215ARM LAY2 FETC Examples DDT 19INIT OPC DISPlay ENABle Turns On Off the updating of the screen This can be used for security reasons or to improve the GPIB speed when the...

Page 68: ...executes the DMC command fast but if macros are enabled the execution time for this command is longer Group Common Syntax DMC Macro label Program messages Arguments MACRO LABEL is a 1 to 12 character macro label Enclose string data in quotes or as shown in the example PROGRAM MESSAGES the commands to be executed when the macro label is received both block data and string data formats can be used E...

Page 69: ... This enable register contains a mask value for the bits to be enabled in the standard event status register A bit that is set true in the enable register enables the corresponding bit in the status register An enabled bit will set the ESB Event Status Bit in the Status Byte Register if the enabled event occurs See page 3 3 The Event Status Enable Register ESER Group Common Syntax ESE Decimal data...

Page 70: ...ster Reading the Standard Event Status Register clears the register Group Common Syntax ESR Returns dec data the sum between 0 and 255 of all bits that are true See Table 2 29 on page 2 53 FETCh ARRay Query Only FETCh ARRay query differs from the FETCh SCALar query by fetching several measuring results at once An array of measurements must first be made by the commands INITiate MEASure ARRay Measu...

Page 71: ...r Query Only The fetch query retrieves one measuring result from the measurement result buffer of the instrument without making new measurements Fetch does not work unless a measurement was taken by the INITiate MEASure MeasuringFunction or READ commands If the instrument has made an array of measurements FETCh SCALar fetches the first measuring results first The second FETCh SCALar fetches the se...

Page 72: ... parameter is ignored the output is always in 8 byte format PACKED See REAL Returns ASC REAL PACK FORMat BORDer Sets the order in which response data bytes formatted as REAL or PACKED are sent on the bus Group Format Syntax FORMat BORDer NORMal SWAPped FORMat BORDer Related Commands FORMat Arguments NORMAL Response data is sent with the MSB first and the LSB last big endian order SWAPPED Response ...

Page 73: ...SCALar query For FETCh SCALar READ SCALar and MEASure SCALar the readout consists of two values instead of one The first value is the measured value and the second value is the timestamp value In FORMat ASCII mode both the measured value and the timestamp value are given as floating point numbers expressed in the basic units Hz or s In FORMat REAL mode the result is given as an eight byte block co...

Page 74: ... s Returns Numeric value FREQuency BURSt PREScaler STATe The burst frequency limit is 300 MHz if the prescaler is ON and 160 MHz if it is OFF Group Sense Syntax FREQuency BURSt PREScaler STATe Boolean FREQuency BURSt PREScaler STATe Arguments BOOLEAN 1 ON 0 OFF Returns 1 0 FREQuency BURSt STARt DELay Sets the burst start delay the time length between the burst start and the actual start of the bur...

Page 75: ... pulse repetition frequency Group Sense Syntax FREQuency BURSt SYNC PERiod Numeric value MIN MAX FREQuency BURSt SYNC PERiod Arguments NUMERIC VALUE is a number between 1E 6 1 μs and 2 s Returns Numeric value FREQuency POWer UNIT Selects dBm or W as the basic measurement unit to be displayed or read out Group Sense Syntax FREQuency POWer UNIT DBM W FREQuency POWer UNIT Arguments DBM W The referenc...

Page 76: ...turns Numeric value FREQuency REGRession Despite its name this command also applies to Period Average By continuous time stamping and linear regression analysis the resolution compared to a normal reciprocal instrument is improved by one or two digits for measuring times between 200 ms and 100 s Not all combinations of settings will work In local mode front panel control this function may be overr...

Page 77: ...nts MEASURING FUNCTION is the function you want to select Choose a function from the following table PRIMARY CHANNEL is the channel used in all single channel measurements and the main channel in dual channel measurements SECONDARY CHANNEL is the other channel in dual channel measurements Only the primary channel may be programmed for all single channel measurements NOTE The measuring function and...

Page 78: ...ge MINimum 1 2 VOLTage PTPeak 1 2 VOLTage RATIO 1 2 1 2 Returns Measuring function Primary channel Secondary channel Examples Select a pulse period measurement on input A channel 1 FUNCTION PERIOD 1 GMC Query Only This command returns the definition of the specified macro label Group Common Syntax GMC macro label Arguments Macro label the label of the macro for which you want to see the definition...

Page 79: ...eded by a 62 byte header which means that 3942 62 3880 bytes carry the pixel information The number of pixels is 3880 x 8 31040 The display geometry is 320 x 97 31040 HF ACQuisition STATe Switches the automatic acquisition system on or off ON means Automatic Acquisition OFF means Manual Acquisition When the instrument is switched from remote to local operation Automatic Acquisition mode is entered...

Page 80: ... query must be the last query in a program message Response is Manufacturer Model Serial Number Firmware Level Group Common Syntax IDN Examples IDN might return MANUFACTURER MODEL 1234567 V1 01 28 Jun 2004 INITiate No Query Form The INITiate command initiates a measurement Executing an INITiate command changes the instrument trigger subsystem state from idle state to wait for bus arm state The tri...

Page 81: ...e CONTinuous Returns 1 0 INPut 1 2 ATTenuation Attenuates the specified input channel signal by 1 or 10 The attenuation is automatically set if the input level is set to AUTO Group Input Syntax INPut 1 2 ATTenuation Numeric value MAX MIN INPut 1 2 ATTenuation Arguments INPut 1 2 specifies the input channel to set 1 A 2 B If no value is entered for this argument the command sets the attenuation for...

Page 82: ...input 1 A and or input 2 B It has a cutoff frequency of 100 kHz Group Input Syntax INPut 1 2 FILTer Boolean INPut 1 2 FILTer Arguments INPut 1 2 specifies the input channel to set 1 A 2 B If no value is entered for this argument the command sets the attenuation for Input A BOOLEAN 1 ON 0 OFF Returns 1 0 INPut 1 2 FILTer DIGital Switches on or off the digital low pass filter on input 1 A and or inp...

Page 83: ...1 2 FILTer DIGital Group Input Syntax INPut 1 2 FILTer DIGital FREQuency Numeric value MIN MAX INPut 1 2 FILTer DIGital FREQuency Arguments INPut 1 2 specifies the input channel to set 1 A 2 B If no value is entered for this argument the command sets the attenuation for Input A NUMERIC VALUE is a value between 1 and 50000000 MIN sets the filter to 1 Hz MAX sets the filter to 50 MHz Returns Numeric...

Page 84: ...ger or to fixed trigger levels of between 5V and 5V in steps of 2 5mV If the attenuator is set to 10X the range is 50V and 50V in 25 mV steps Setting an absolute trigger level turns off autotrigger for the selected channel For autotrigger see INPut 1 2 LEVel AUTO Group Input Syntax INPut 1 2 LEVel Decimal data MAX MIN INPut 1 2 LEVel Arguments INPut 1 2 specifies the input channel to set 1 A 2 B I...

Page 85: ...e attenuation for Input A BOOLEAN 1 ON 0 OFF ONCE sets the instrument to make one automatic calculation of the trigger level at the beginning of a measurement This value is then used until another level setting command is sent to the instrument or until a new measurement is initiated INPut 1 2 LEVel RELative When autotrigger is active the relative trigger levels are normally fixed at values that d...

Page 86: ...ositive or a negative transition Selecting negative slope is useful for Time Interval measurements The slope is fixed for Pos Neg Pulse Width Duty Factor and Rise Fall Time Arming slope is not affected by this command Use ARM STARt SLOPe and ARM STOP SLOPe instead Group Input Syntax INPut 1 2 SLOPe POS NEG INPut 1 2 SLOPe Arguments INPut 1 2 specifies the input channel to set 1 A 2 B If no value i...

Page 87: ... it was in when the LRN query was made Group Common Syntax LRN Returns SYST SET_ Block data Where Block data is 3104 104 data bytes Examples LRN MEASure ARRay FREQuency BTBack Query Only This is the inverse function of Period Back to Back See MEASure ARRay PERiod BTBack If CALCulate AVERage STATe is ON measurement time is used for pacing the time stamps The pacing parameter is not used in this cas...

Page 88: ...be in parentheses The MEASure ARRay MeasuringFunction query is a compound query identical to ABORt CONFigure ARRay Meas func array size READ ARRay array size Group Measurement Syntax MEASure ARRay MeasuringFunction arraysize parameters channels Arguments ARRAY SIZE sets the number of measurements in the array The maximum number is limited to 10000 due to the physical size of the output buffer See ...

Page 89: ...LTage MAXimum 1 2 VOLTage MINimum 1 2 VOLTage PTPeak 1 2 VOLTage RATIO 1 2 1 2 Returns Measuring result measuring result Examples MEASURE ARRAY FREQUENCY 10 returns ten measurement results MEASure ARRay PERiod BTBack Query Only Every positive or negative zero crossing depending on the selected slope up to the maximum frequency 125 kHz with interpolator calibration ON or 250 kHz with interpolator c...

Page 90: ...ON command explicitly Otherwise the TS 1 values are omitted See Returned format below The deadtime to the next TS is due to pacing and interpolator calibration and can go down to 4 μs The X register counter records the number of trigger level crossings Depending on the state of the command FORMat TINFormation one or two values are output for each TS If OFF only the content of the X register counte...

Page 91: ...commands MEASure ARRay MeasuringFunction and CONFigure ARRay MeasuringFunction automatically invoke FORMat TINFormation ON to get the time stamp data but when FUNCtion is used instead you should normally let it be preceded by the FORMat TINFormation ON command explicitly Otherwise the TS 2 values are omitted See Returned format below Measurements are performed in groups of four TS results two posi...

Page 92: ...nstead Group Measurement Syntax MEASure FALL TIME FTIM lower threshold upper threshold expected value resolution 1 2 Arguments LOWER THRESHOLD UPPER THRESHOLD EXPECTED VALUE and RESOLUTION are all ignored by the instrument 1 or 2 is the measurement channel input A or input B MEASure FREQuency Query Only Traditional frequency measurements The instrument uses the expected value and resolution to cal...

Page 93: ...e burst duration must be less than 50 of the pulse repetition frequency PRF How to measure bursts is described in detail in the Operators Manual The instrument uses expected value and resolution to select a Measurement Time See ACQuisition APERture See FREQuency BURSt SYNC PERiod Group Measurement Syntax MEASure FREQuency BURSt expected value resolution 1 2 3 4 Arguments EXPECTED VALUE is the expe...

Page 94: ...pulse repetition frequency PRF NOTE It is better to set up the measurement with the FUNCtion FREQ PRF command when measuring pulse repetition frequency This command will allow you to set a suitable sync delay with the FREQuency BURSt SYNC PERiod command How to measure bursts is described in detail in the Operators Manual Group Measurement Syntax MEASure FREQuency PRF exp val res 1 2 3 4 Arguments ...

Page 95: ...d must be within parentheses Examples MEASURE FREQUENCY RATIO 1 3 might return 2 345625764333E 000 This example measures the ratio between input A and input C MEASure MeasuringFunction Query Only The measure query makes a complete measurement including configuration and readout of data Use measure when you can accept the generic measurement without fine tuning NOTE When a CONFigure command or MEAS...

Page 96: ...solution 1 2 3 FREQuency POWer 3 FREQuency PRF expected value resolution 1 2 3 FREQuency RATio expected value resolution 1 2 3 1 2 3 NCYCles 1 2 3 PDUTycycle DCYCle reference 1 2 NDUTycycle reference 1 2 PERiod expected value resolution 1 2 3 PERiod AVERage expected value resolution 1 2 3 PHASe expected value resolution 1 2 1 2 PSLEwrate 1 2 NSLEwrate 1 2 RISE TIME RTIM lo threshold hi threshold e...

Page 97: ...the instrument setting in memory number 13 takes a measurement and fetches the result MEASure MEMory N Query Only Use this command when you want to measure several parameters fast MEAS MEM1 recalls the contents of memory one and reads out the result MEAS MEM2 recalls the contents of memory two and reads out the result and so forth The equivalent command sequence is RCL 1 READ The allowed range for...

Page 98: ...nstrument measures on input A 1 Examples MEASURE NDUTYCYCLE might return 5 097555E 001 In this example the duty cycle is 50 97 MEASure NWIDth Query Only A negative pulse width measurement is performed This is always a single measurement If you need an average pulse width measurement use the SENSe subsystem instead Group Measurement Syntax MEASure NWIDth threshold 1 2 Arguments THRESHOLD parameter ...

Page 99: ...ument measures on input A 1 Examples MEASURE PDUTYCYCLE might return 5 097555E 001 In this example the duty cycle is 50 97 MEASure PERiod Query Only A period time measurement is taken on a single period Measuring time set by the ACQuisition APERture command does not affect the measurement The expected value and resolution are used to calculate the Measurement Time ACQuisition APERture Group Measur...

Page 100: ...UE is the expected Period RESOLUTION is the required resolution 1 2 3 is the measurement channel 1 means input A 2 means input B 3 means input C RF input option If you omit the channel the instrument measures on input A 1 MEASure PHASe Query Only A traditional PHASe measurement is performed Group Measurement Syntax MEASure PHASe expected value resolution 1 2 1 2 Arguments EXPECTED VALUE and RESOLU...

Page 101: ...input A MEASure RISE TIME RTIM Query Only The transition time from 10 to 90 of the signal amplitude is measured The measurement is always a single measurement and the Auto trigger is always on setting the trigger levels to 10 and 90 of the amplitude If you need an average transition time measurement or other trigger levels use the SENSe subsystem and manually set trigger levels instead Group Measu...

Page 102: ...ut A 2 means input B If you omit the channel input A is the start channel and input B is the stop channel MEASure VOLT MAXimum Query Only This command measures the positive peak voltage with the input DC coupled Group Measurement Syntax MEASure VOLT MAXimum 1 2 Arguments 1 2 is the measurement channel 1 means input A 2 means input B MEASure VOLT MINimum Query Only This command measures the negativ...

Page 103: ...ic value integer Examples MEASURE VOLT NCYCLES 3 might return 2356 This example shows a measurement on the RF channel MEASure VOLT NSLEwrate Query Only This command measures the negative slew rate in V s on either main input channel Group Measurement Syntax MEASure VOLT NSLEwrate 1 2 Arguments 1 2 is the measurement channel 1 means input A 2 means input B MEASure VOLT PSLEwrate Query Only This com...

Page 104: ...atio in dB between the selected channels Group Measurement Syntax MEASure VOLT RATio 1 2 1 2 Arguments 1 2 is the measurement channel 1 means input A 2 means input B MEMory DATA RECord COUNt Query Only If the optional Dataset Number parameter is specified the command returns the number of samples in the corresponding FLASH memory position 0 7 If no parameter is specified a comma separated list is ...

Page 105: ... STARt Group Memory Syntax MEMory DATA RECord FETCh Dataset Number MEMory DATA RECord FETCh ARRay Query Only The command fetches an array of samples from the FLASH memory position with the number 0 7 given in the command parameter Dataset Number You can either specify the number of samples to be fetched or get all samples up to 32000 by using the MAXimum parameter Group Memory Syntax MEMory DATA R...

Page 106: ...reviated measurement function and the channel For example Period Single A will read PerA If the instrument is not in Hold when this command is sent then Execution Error 200 is placed in the error queue If the instrument is not in Statistics Mode when this command is sent then Settings Conflict Error 221 is placed in the error queue If specified Dataset already contains data then Directory Full Err...

Page 107: ...ing data that must be surrounded by quotation marks MEMory FREE MACRo Query Only This command returns information of the free memory available for macros in the instrument If no macros are specified 1160 bytes are available Group Memory Syntax MEMory FREE MACRo Returns Bytes available Bytes used MEMory NSTates Query Only The Number of States query only requests the number of SAV RCL instrument set...

Page 108: ...The OPC command allows you to synchronize the operation of the instrument with your application program See page 3 6 Synchronization Methods Certain instrument operations can affect the OPC response See Table 3 3 on page 3 6 Group Common Syntax OPC OPC Related Commands WAI Examples OPC generates the operation complete message in the SESR at the completion of all pending OPC operations OPC might re...

Page 109: ...e Option US OUTPut POLarity The command controls the polarity of the pulse output but only if it is configured as an alarm circuit See also the command OUTPut TYPE Group Output Syntax OUTPut POLarity NORMal INVerted Arguments NORMAL means that the output level is high when the alarm is activated INVERTED means that the output level is low when the alarm is activated The output amplitude is fixed a...

Page 110: ...nitions Group Common Syntax PMC Related Commands MEMory DELete MACRo Macro name if you want to remove a single macro Examples PMC PSC Enables disables automatic power on status register clearing The status registers listed below are cleared when the power on status clear flag is 1 Power on does not affect the registers when the flag is 0 Service request enable register SRE Event status enable regi...

Page 111: ...a Typical uses include storing calibration information instrument usage time or inventory control numbers The content at delivery is 234 FACTORY CALIBRATED ON 20YY MM DD where YY year MM month DD day Group Common Syntax PUD Arbitrary block program data PUD Returns Arbitrary block response data where arbitrary block program data is the data last programmed with PUD Examples SYSTEM UNPROTECT PUD 240...

Page 112: ...the instrument is set up to do an array of measurements READ makes all the measurements in the array stores the results in the output buffer and fetches the first measuring result Use FETCh SCALar or FETCh ARRay to fetch other measuring results from the output buffer The READ query is identical to ABORt INITiate FETCh SCALar Aborts all previous measurement commands if WAI is not used Group Read Sy...

Page 113: ...ngFunction or MEASure ARRay MeasuringFunction Group Read Syntax READ ARRay array size for FETCh MAX Arguments ARRAY SIZE FOR FETCH sets the number of measurement results in the array The size must be equal to or less than the number of measurements in the output buffer The maximum limit is 10000 due to the physical size of the output buffer MAX means that all the results in the output buffer are f...

Page 114: ...ault value AUTO the instrument uses the external reference signal if present Group Sense Syntax ROSCillator SOURce INT EXT AUTO ROSCillator SOURce Returns INT EXT AUTO RST No Query Form The Reset command resets the instrument It is the third level of reset in a 3 level reset strategy and it primarily affects the instrument functions not the IEEE 488 bus See page C 1 Instrument Settings After RST A...

Page 115: ...Group Common Syntax SAV Arguments DECIMAL DATA a number between 1 and 19 Examples SAV 11 SOURce PULSe PERiod The pulse generator time parameters are activated when the output type is configured to pulse using the OUTPut TYPE PULSe command Group Output Syntax SOURce PULSe PERiod Numeric value SOURce PULSe PERiod Arguments NUMERIC VALUE a number between 2E 8 20 ns and 2 s in 10 ns increments SOURce ...

Page 116: ... byte register to generate a Service Request Group Common Syntax SRE Decimal data SRE Arguments Decimal data the sum between 0 and 255 of all bits that are true See the following table Table 2 34 Service Request Enable register 1 enable Bit Weight Enables 7 128 OPR Operation Status 6 64 RQS Request Service 5 32 ESB Event Status Bit 4 16 MAV Message Available 3 8 QUE Questionable Data Signal Status...

Page 117: ...ht Condition 2 4 Last measurement below low limit 1 2 Last measurement above high limit STATus DREGister0 ENABle This command sets the enable bit of the Device Register 0 Group Status Syntax STATus DREGister0 ENABle bit mask STATus DREGister0 ENABle Arguments Decimal data the sum between 0 and 6 of all bits that are true See the following table Bit number Weight Condition 2 4 Enable monitoring of ...

Page 118: ... triggering and or external arming 4 16 Measurement STATus OPERation CONDition Query Only Reads out the contents of the operation status condition register This register reflects the state of the measurement process See table below Group Status Syntax STATus OPERation CONDition Returns Decimal data the sum between 0 and 3953 of all bits that are true See the following table Bit number Weight Condi...

Page 119: ...enabled in the operation status event register A bit that is set true in the enable register enables the corresponding bit in the status register See Figure 2 3 on page 2 103 An enabled bit will set bit 7 OPR Operation Status Bit in the Status Byte Register if the enabled event occurs See page 3 2 The Status Byte Register SBR Power on will clear this register if power on clearing is enabled via PS...

Page 120: ... 2 enable registers which are handled with the common commands SRE and ESE remain unchanged The command sets or clears all other enable registers Those relevant for this instrument are as follows It sets all bits of the Device status Enable Registers to 1 It sets all bits of the Questionable Data Status Enable Registers and the Operation Status Enable Registers to 0 The following registers never c...

Page 121: ...384 Unexpected parameter 11 2048 Out of limit 10 1024 Measurement timeout Out of limit in compatibility mode 9 512 Overflow 8 256 Calibration error 6 64 Phase interpolation calibration off 5 32 Frequency interpolation calibration off 2 4 Time interpolation calibration off STATus QUEStionable CONDition Query Only Reads out the contents of the status questionable condition register Group Status Synt...

Page 122: ...egister A bit that is set true in the enable register enables the corresponding bit in the status register See Figure 2 3 on page 2 103 An enabled bit will set bit 3 QUE Questionable Status Bit in the Status Byte Register if the enabled event occurs See page 3 2 The Status Byte Register SBR Power on will clear this register if power on clearing is enabled via PSC Group Status Syntax STATus QUEStio...

Page 123: ...TB Query Only Queries the value of the Status Byte Bit 6 reports the Master Summary Status bit MSS not the Request Service RQS The MSS is set if the instrument has one or more reasons for requesting service Group Common Syntax STB Related Commands Use a serial poll to read the status byte with the RQS bit Returns Integer the sum between 0 and 255 of all bits that are true See the following table T...

Page 124: ...ddress It is valid until a new address is set either by sending a new bus command or via the front panel USER OPT menu Group System Syntax SYSTem COMMunicate GPIB ADDRess Numeric value MAX MIN Numeric value MAX MIN SYSTem COMMunicate GPIB ADDRess Arguments NUMERIC VALUE is a number between 0 and 30 MIN sets address 0 MAX sets address 30 Numeric value MAX MIN sets a secondary address This is accept...

Page 125: ...ect between two command sets where native exploits the full capability of the instrument and compatible facilitates portability to test systems using the Agilent instruments 53131 and 53132 The command set described in this manual refers to the native mode only Group System Syntax SYSTem LANGuage NATive COMPatible SYSTem LANGuage SYSTem PRESet No Query Form This command recalls the same default se...

Page 126: ...NOTE The real number of data bytes will probably differ from the one specified above and depends on the instrument type and the firmware version SYSTem TALKonly No Query Form The main purpose is to transfer streaming data fast in monitoring systems without predefined limits for time or number of samples It is a non reversible command you can only return to normal bus mode by sending IFC or by push...

Page 127: ...d with Talk Only Group System Syntax SYSTem TALKonly ON SYSTem TEMPerature Query Only This command returns the temperature in degrees C at the fan control sensor inside the instrument housing Group System Syntax SYSTem TEMPerature Returns Numeric value Examples SYSTEM TEMPERATURE might return 50 SYSTem TOUT This command switches the time out on or off When time out is enabled the measurement attem...

Page 128: ... input without having to wait for the entire measurement to time out If ON there is a short time out of 2 timer ticks 10 20ms from the INIT ARM to the first start trigger independent of any other time out setting Group System Syntax SYSTem TOUT AUTO Boolean SYSTem TOUT AUTO SYSTem TOUT TIME This command sets the time out in seconds with a resolution of 10 ms The 10 ms timer ticks start to be count...

Page 129: ...RST This makes it necessary to send an unprotect command in the same message as for instance PUD Group System Syntax SYSTem UNPRotect Examples SYSTEM UNPROTECT PUD 240 Calibrated 1992 11 17 inventory No 1234 Where means that arbitrary block program data will follow 2 means that the two following digits will specify the length of the data block 40 is the number of characters in this example TEST SE...

Page 130: ... between 1 and 1E8 Hz in 1 Hz increments TIError FREQuency AUTO If AUTO is ON a check measurement is made at the start of the block to determine if the frequency of the input signal rounded to 4 significant digits is listed for automatic recognition for instance 4 8 15 75 64 kHz or 1 544 2 048 5 10 27 34 45 52 MHz If the command is successful the found value is stored and can be recalled with a qu...

Page 131: ...ate for CONFigure TOTalize CONTinuous NOTE Before opening the gate with this command the instrument must be in the continuously initiated state INITiate CONTinuous ON or else the totalizing will not start Group Measurement Syntax TOTalize GATE ON OFF TOTalize GATE Arguments BOOLEAN 1 ON 0 OFF Returns Boolean Examples Example command sequence CONFIGURE TOTALIZE 1 2 Select totalizing on inputs A B a...

Page 132: ... and parsed by the instrument However GET is much faster than TRG because GET is a hardware signal that does not have to be parsed by the instrument NOTE Aborts all previous measurement commands if WAI is not used Group Common Syntax TRG TRIGger COUNt Sets how many measurements the instrument should make for each arm condition block arming These measurements are done without any additional arming ...

Page 133: ...d Group Trigger Syntax TRIGger SOURce TIMer IMMediate TRIGger SOURce Arguments TIMER enables pacing IMMediate disables pacing TRIGger TIMer This command sets the sample rate for instance in conjunction with the statistics functions Group Trigger Syntax TRIGger TIMer Numeric value MIN MAX TRIGger TIMer Arguments NUMERIC VALUE is a time length between 2 ms and 500 s entered in seconds MIN means 2 ms...

Page 134: ...lure 4 Logic Failure 8 Display Failure 16 32 WAI No Query Form The Wait to Continue command sets the instrument to not execute any further commands or queries until execution of all previous commands or queries is completed Group Common Syntax WAI Examples MEASURE FREQUENCY WAI MEASURE PDUT In this example WAI makes the instrument perform both the frequency and the Duty Cycle measurement Without W...

Page 135: ...Status and Events ...

Page 136: ......

Page 137: ...R and the Service Request Enable Register SRER Status Registers The Standard Event Status Register SESR and the Status Byte Register SBR record certain types of events that may occur while the instrument is in use IEEE Std 488 2 1987 defines these registers Each bit in a Status Register records a particular type of event such as an execution error or message available When an event of a given type...

Page 138: ...mand The Status Byte Register SBR Records whether output is available in the Output Queue whether the instrument requests service and whether the SESR has recorded any events Use a Serial Poll or the STB query to read the contents of the SBR The bits in the SBR are set and cleared depending on the contents of the SESR the Event Status Enable Register ESER and the Output Queue When you use a Serial...

Page 139: ...able Register is set to zero the event is not recorded Various commands set the bits in the Enable Registers The Enable Registers and the commands used to set them are described below The Event Status Enable Register ESER This register controls which types of events are summarized by the Event Status Bit ESB in the SBR Use the ESE command to set the bits in the ESER Use the ESE query to read it Fi...

Page 140: ...s the next command or query or it will lose responses to earlier queries CAUTION When a controller sends a query an EOM and a second query the instrument normally clears the first response and outputs the second while reporting a Query Error QYE bit in the ESER to indicate the lost response A fast controller however may receive a part or all of the first response as well To avoid this situation th...

Page 141: ...t occurs a signal is sent to the DESER 1 If that type of event is enabled in the DESER that is if the bit for that event type is set to 1 the appropriate bit in the SESR is set to one and the event is recorded in the Event Queue 2 If the corresponding bit in the ESER is also enabled 3 then the ESB bit in the SBR is set to one 4 When output is sent to the Output Queue the MAV bit in the SBR is set ...

Page 142: ...atus and event reporting system is designed to accommodate this process The Operation Complete OPC bit of the Standard Event Status Register SESR can be programmed to indicate when certain instrument operations have completed and by setting the Event Status Enable Register ESER to report OPC in the Event Status Bit ESB of the Status Byte Register SBR and setting the Service Request Enable Register...

Page 143: ...hronization looks like this Set up for period measurement FUNCTION PERIOD 1 INPUT LEVEL 0 AUTO OFF COUPLING DC TRIGGER COUNT 1000 ARM COUNT 1 DISPLAY ENABLE ON FORMAT ASCII TINFORMATION OFF Start measurement INITIATE Wait until the measurements are complete before reading them WAI Read results FETCH ARRAY 1000 The controller can continue to write commands to the input buffer of the instrument but ...

Page 144: ...NITIATE Wait until the measurements are complete before reading them OPC While serial poll 0 keep looping Read results FETCH ARRAY 1000 Service request method Enable the OPC bit in the Event Status Enable Register ESER using the ESE command You can also enable service requests by setting the ESB bit in the Service Request Enable Register SRER using the SRE command When the operation is complete th...

Page 145: ...Wait until the measurements are complete before reading them OPC Wait for read from Output Queue Read results FETCH ARRAY 1000 This is the simplest approach It requires no status handling or loops However you must set the controller time out for longer than the acquisition operation Messages The information contained in the topic tabs above covers all the programming interface messages the instrum...

Page 146: ...he Error Queue may overflow Then the instrument will overwrite the last error in the queue with 350 Queue overflow If more errors occur they will be discarded NOTE Read more about how to use error reporting in the Introduction to SCPI chapter Command Errors The following table shows the command error messages generated by improper syntax Check that the command is properly formed and that it follow...

Page 147: ...haracter that is not a legal header separator was detected while parsing the header for example no space followed the header thus GMC MACRO is an error 112 Program mnemonic too long The header contains more than 12 characters see IEEE 488 2 7 6 1 4 1 113 Undefined header The header is syntactically correct but it is undefined for this specific instrument for example XYZ is not defined for any devi...

Page 148: ...12 characters see IEEE 488 2 7 7 1 4 148 Character data not allowed A legal character data element was detected where prohibited by the instrument 150 String data error This error and errors 151 through 159 is generated when parsing a string data element This particular error message is used when the instrument cannot detect a more specific error Invalid string data 151 Invalid string data unexpec...

Page 149: ...efore the closing parenthesis 171 Invalid expression data unrecognized expression type The expression could not be recognized as either a mathematical expression a data element list or a channel list 178 Expression data not allowed A legal expression data was detected but was not allowed by the instrument at this point in parsing 180 Macro error This error and errors 181 through 189 is generated w...

Page 150: ... 215 Arm deadlock Indicates that the arm source for the initiation of a measurement is set to GET and subsequent measurement query is received The measurement cannot be started until a GET is received but the GET would cause an INTERRUPTED error 220 Parameter error Indicates that a program data element related error occurred This error message is used when the instrument cannot detect the more spe...

Page 151: ... constitutes missing hardware is completely device specific 254 Media full Indicates that a legal program command or query could not be executed because the media was full for example there is no room on the disk The definition of what constitutes a full media is device specific 258 Media protected Indicates that a legal program command or query could not be executed because the media was protecte...

Page 152: ...bel was already defined see IEEE 488 2 10 7 6 4 278 Macro header not found Indicates that a syntactically correct macro label in the GMC query could not be executed because the header was not previously defined Device Errors The following table lists the device errors that can occur during instrument operation These errors may indicate that the instrument needs repair Table 3 7 Standardized device...

Page 153: ... indicates the IEEE 488 2 message exchange state where the error occurred 430 Query DEADLOCKED Indicates that a condition causing an DEADLOCKED Query error occurred see IEEE 488 2 6 3 1 7 for example both input buffer and output buffer are full and the instrument cannot continue 440 Query UNTERMINATED after indefinite response Indicates that a query was received in the same program message after a...

Page 154: ...nal setting inconsistency caused the instrument to go to default setting 1 190 Error during calibration An error has occurred during calibration of the instrument 1 191 Hysteresis calibration failed The input hysteresis values found by the calibration routine was out of range Did you remember to remove the input signal 1 200 Message exchange error An error occurred in the message exchange handler ...

Page 155: ...nized input character A character not in the valid IEEE488 2 character set was part of a command 1 223 Internal parser error The parser reached an unexpected internal state 1 230 Response formatter error Generic error in the response formatter 1 231 Bad response formatter call The response formatter was called when it should not be active 1 232 Bad response formatter call eom The response formatte...

Page 156: ...Status and Events 3 20 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 157: ...Programming Examples ...

Page 158: ......

Page 159: ...ven if you use other platforms for your applications these examples provide a good insight into how to program the instrument NOTE To be able to run these programs without modification the address of your instrument must be set to 10 Five examples are included Example 1 Individual Measurements Example 2 Block Measurements Example 3 Fast Measurements Example 4 USB Communication Example 5 Continuous...

Page 160: ...GPIB card n address if instrument ibdev 0 address 0 T10s 1 0 0 printf Could not connect to instrument exit 1 ibclr instrument do ibwrite instrument syst err ibrd instrument buf 100L buf ibcnt 0 printf Errors before start s n buf while atoi buf 0 ibwrite instrument idn ibrd instrument buf 100L buf ibcnt 0 printf instrument identification string s n buf printf Setup n Reset instrument to known state...

Page 161: ...do ibwrite instrument syst err ibrd instrument buf 100L buf ibcnt 0 printf End error s n buf while atoi buf 0 ibonl instrument 0 Support functions void ibwrite int instrument const char string ibwrt instrument char string strlen string void sleep long mswait time_t EndWait clock mswait CLOCKS_PER_SEC 1000 while clock EndWait FCA3000 FCA3100 MCA3000 Series Programmer Manual 4 3 ...

Page 162: ... char Status printf Connecting to the instrument on address d using National Instruments GPIB card n address if instrument ibdev 0 address 0 T10s 1 0 0 printf Could not connect to instrument exit 1 ibclr instrument do ibwrite instrument syst err ibrd instrument buf 100L buf ibcnt 0 printf Errors before start s n buf while atoi buf 0 ibwrite instrument idn ibrd instrument buf 100L buf ibcnt 0 print...

Page 163: ...00L ibwrite instrument FETC ARR 1000 ibrd instrument bigbuf 30000L if ibcnt 0 pbuf bigbuf for i 0 i 1000 i for j 0 pbuf j pbuf j 0 j pbuf j 0 if i 50 0 printf Result d s n i pbuf pbuf j 1 Stop clock printf Block measurement d samples s n 10000 1000 Stop Start do ibwrite instrument syst err ibrd instrument buf 100L buf ibcnt 0 printf End error s n buf while atoi buf 0 ibonl instrument 0 Support fun...

Page 164: ...ain Start Stop StopMain typedef union double d char c 8 r2d void main int address 10 int i j instrument file descriptor for instrument char reading 30 char buf 100 r2d Result printf Connecting to the instrument on address d using National Instruments GPIB card n address if instrument ibdev 0 address 0 T10s 1 0 0 printf Could not connect to instrument exit 1 sleep 100 ibclr instrument sleep 100 ibw...

Page 165: ...s arming sleep 100 On the safe side Check that setup was OK all commands correctly spelled etc do ibwrite instrument syst err ibrd instrument buf 100L buf ibcnt 0 printf Setup error s n buf while atoi buf 0 printf Start n Measure 1000 samples Start clock for i 0 i 1000 i ibtrg instrument Generate GET signal ibrd instrument reading 29L for j 0 j 8 j Result c j reading 3 j if i 50 0 printf Result d ...

Page 166: ...id ibwrite int instrument const char string ibwrt instrument string strlen string void sleep long mswait time_t EndWait clock mswait CLOCKS_PER_SEC 1000 while clock EndWait 4 8 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 167: ... viFindRsrc defaultRM USB INSTR VI_ATTR_MANF_ID 0x0699 fList numInstrs Desc if Status VI_SUCCESS printf No matching instruments found n return 1 Open communication with GPIB Device Status viOpen defaultRM Desc VI_NULL VI_NULL Instr if Status VI_SUCCESS printf Cannot communicate with instrument n return 1 Set the timeout for message based communication Status viSetAttribute Instr VI_ATTR_TMO_VALUE ...

Page 168: ...e down the system Status viClose Instr Status viClose defaultRM return 0 Buffer RetCount 0 printf s n Buffer Sleep 25 Status viWrite Instr syst err n 10 RetCount Sleep 25 Status viRead Instr Buffer MAX_CNT RetCount Buffer RetCount 0 printf s n Buffer Close down the system Status viClose Instr Status viClose defaultRM return 0 void Sleep clock_t Wait clock_t Goal Goal Wait clock while Goal clock 4 ...

Page 169: ...eturn unsigned Status assert Length int RetLength return unsigned Status Read data may be binary into the buffer unsigned ReadDevice ViSession Instr char Buf int BufLength ViUInt32 pActualLength int Line ViStatus Status assert Buf NULL assert BufLength 0 assert pActualLength NULL Status viRead Instr unsigned char Buf BufLength pActualLength if Status VI_SUCCESS fprintf stderr Read error x at line ...

Page 170: ...r 0 Restore the instrument to a more front panel friendly state void WriteDev syst pres void viClose Instr void viClose defaultRM _exit 0 command line arguments struct CmdArgs bool bUSB GPIB if false unsigned int nAddr GPIB address Not used for USB double Pacing char Func 64 measurement function bool bPeriod is Meas Func one of Period functions or one of Freq functions double RefVal Delta referenc...

Page 171: ...cing 100e 6 s static int const DefMeasFunc 2 static double const DefRefFreq 10e6 Hz static double const DefDelta 10e5 Hz assign some defaults pArgs bUSB true pArgs nAddr DefAddr pArgs Pacing DefPacing strcpy pArgs Func StrMeasFuncs DefMeasFunc pArgs bPeriod DefMeasFunc nFirstFreq pArgs RefFreq DefRefFreq pArgs Delta DefDelta parse command line bool bError argc 2 at least interface should be specif...

Page 172: ... pArgs Func sizeof pArgs Func 0 func is too long bError true break strncpy pArgs Func s n pArgs Func n 0 determine if it is period and if it is valid at all n CheckStr s n StrMeasFuncs nMeasFuncs if n 0 pArgs bPeriod n nFirstFreq break not a function specification fallthrough nArg case 4 Reference Value if 1 sscanf s lf pArgs RefFreq bError true break case 5 Delta if 1 sscanf s lf pArgs Delta bErr...

Page 173: ...s n StrMeasFuncs i fprintf stderr s if omitted n StrMeasFuncs DefMeasFunc fprintf stderr Ref Freq optional frequency to be measured n lg Hz if omitted n Delta optional acceptable frequency error n lg Hz if omitted n DefRefFreq DefDelta return false convert RefVal and Delta for Period pArgs RefVal pArgs RefFreq if pArgs bPeriod pArgs RefVal 1 pArgs RefVal pArgs Delta pArgs RefVal pArgs RefVal retur...

Page 174: ...tem Status viOpenDefaultRM defaultRM if Status VI_SUCCESS fprintf stderr Initialization failed n return 1 Parse cmdline CmdArgs Args if ParseCmdArgs Args argc argv viClose defaultRM return 1 Find the instrument if Args bUSB Look on USB GPIB for counter model FCA3020 code 0x3020 For this sample program we ll just pick the first found if any sprintf Command USB INSTR VI_ATTR_MANF_ID 0x0699 VI_ATTR_M...

Page 175: ...pacing g n Args Func Args Pacing printf Push any button to cancel n fflush stdout if WriteDev cls rst VI_SUCCESS Quit if WriteDev ese 0 sre 0 VI_SUCCESS Quit Set Meas Func sprintf Command CONF s Args Func if WriteDev Command VI_SUCCESS Quit Do a measurement to check if all is set up OK if WriteDev inp lev auto off inp lev 0 form bord swap VI_SUCCESS Quit if WriteDev form asc form tinf on VI_SUCCES...

Page 176: ... enab off if WriteDev Command VI_SUCCESS Quit PrevTSVal 0 Failed false Sleep 500 Start the measurement if WriteDev init VI_SUCCESS Quit Fetch the measurement results as it goes Count 0 while true CheckUserCancel The max parameter means fetch as many samples as is currently available for fetching but no more than the upper limit which by default is 10000 if WriteDev fetc arr max VI_SUCCESS Quit if ...

Page 177: ...if i 0 _isnan Val Invalid value response printf The instrument is apparently no longer measuring n Failed true break TSVal __int64 pBuf pBuf 8 Do something with the fetched result For this test just check that the measurement result seems reasonable and that the timestamps increase as they should if CheckMeas Val Args printf Bad result of measurement lf g s n double Count Val Args bPeriod s Hz Che...

Page 178: ...l 1e 12 Args Pacing 1 5 Args Pacing printf Gap lf lf n double PrevTSVal 1e 12 double TSVal 1e 12 PrevTSVal TSVal Count Display some progress if Count 10000 0 printf Sample 0lf value 8le timestamp lf n double Count Val double TSVal 1e 12 if Failed break ReportAndQuit return 0 4 20 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 179: ...Appendices ...

Page 180: ......

Page 181: ...Appendix A Character Set FCA3000 FCA3100 MCA3000 Series Programmer Manual A 1 ...

Page 182: ...Appendix A Character Set A 2 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 183: ...TRIGger SOURce IMM TRIGger TIMer 20 ms DDT 215ARM LAY2 FETC in native mode and 14INIT in compatible mode ARM DELay 0 ARM STOP SLOPe POS ARM STOP SOURce IMM ARM STOP TIMer 0 CALCulate AVERage COUNt 100 CALCulate AVERage STATe OFF CALCulate AVERage TYPE MEAN CALCulate DATA Event no RSTcondition CALCulate IMMediate Event no RSTcondition CALCulate LIMit OFF CALCulate LIMit CLEar AUTO OFF CALCulate LIM...

Page 184: ...uency 100 kHz INPut 1 2 IMPedance 1 MΩ INPut 1 2 LEVel 0 but controlled by Autotrigger since AUTO is on after RST INPut 1 2 SLOPe POS ACQuisition APERture 10 ms after RST ACQuisition HOFF OFF ACQuisition HOFF TIME 200 μs FREQuency POWer UNIT DBM FREQuency RANGe LOWer 100 Hz FUNCtion FREQuency_1 FREQuency REGRession AUTO ROSCillator SOURce AUTO TOTalize GATE OFF SYSTem TOUT 0 SYSTem TOUT TIME 0 1 s...

Page 185: ...F Stop Slope POS Source IMM Hold Off Hold Off State OFF Hold Off Time 200 μs Time Out Time Out State OFF Time Out Time 100 ms Statistics Statistics State OFF number of Samples 100 number of Bins 20 Pacing State OFF Pacing Time 20 ms Mathematics Mathematics State OFF Constants K M 1 L 0 Limits Limit State OFF Limit Mode RANGE Lower Limit 0 Upper Limit 0 Burst Sync Delay 400 μs FCA3000 FCA3100 MCA30...

Page 186: ...300 MHz Miscellaneous Function FREQ A Smart Frequency AUTO Smart Time Interval OFF Meas Time 10 ms Memory Protection Memory 1 to 10 Not changed by RST Auto Trig Low Freq Lim 100 Hz Timebase Reference AUTO Arm Trig State IDLE equivalent to sending INIT CONT OFF C 2 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 187: ...nce INFinity INITiate INPut INSTRument INT INTerpolator INVerted LANGuage LAYer2 LEVel LIMit LOCK LOGic LOWer MACRo MATH MAX MAXimum MEAN MEASure MEMory MIN MINNumericvalue MINimum N NAME NATive NCYCles NDUTycycle NEG NEGative NORMal NSLEwrate NSTates NWIDth OFF ON ONCE OPERation OUTPut PACKed PCOunt PDUTycycle PERiod PHASe POLarity POS POSitive POWer PREScaler PRESet PRF PSLEwrate PTPeak PULSe PW...

Page 188: ...Appendix D Reserved Words D 2 FCA3000 FCA3100 MCA3000 Series Programmer Manual ...

Page 189: ... LOWer STATe 2 42 CALCulate LIMit PCOunt 2 42 CALCulate LIMit UPPer 2 43 CALCulate LIMit UPPer STATe 2 43 CALCulate MATH 2 43 CALCulate MATH STATe 2 44 CALCulate STATe 2 45 CALCulate TOTalize TYPE 2 45 CALibration INTerpolator AUTO 2 46 CLS 2 46 Command short form 2 3 CONFigure MeasuringFunction 2 48 CONFigure ARRay MeasuringFunction 2 47 CONFigure TOTalize CONTinuous 2 50 D DDT 2 51 DISPlay ENABl...

Page 190: ...th 2 85 MEASure TINTerval 2 86 MEASure FALL TIME FTIM 2 76 MEASure PDUTycycle DCYCle 2 83 MEASure RISE TIME RTIM 2 85 MEASure VOLT MAXimum 2 86 MEASure VOLT MINimum 2 86 MEASure VOLT NCYCles 2 87 MEASure VOLT NSLEwrate 2 87 MEASure VOLT PSLEwrate 2 87 MEASure VOLT PTPeak 2 88 MEASure VOLT RATio 2 88 MEMory DATA RECord COUNt 2 88 MEMory DATA RECord DELete 2 89 MEMory DATA RECord FETCh ARRay 2 89 ME...

Page 191: ...t 2 109 SYSTem SET 2 110 SYSTem TALKonly 2 110 SYSTem TEMPerature 2 111 SYSTem TOUT 2 111 SYSTem TOUT AUTO 2 112 SYSTem TOUT TIME 2 112 SYSTem UNPRotect 2 113 T TEST SELect 2 113 TIError FREQuency 2 114 TIError FREQuency AUTO 2 114 TINTerval AUTO 2 115 TOTalize GATE 2 115 TRG 2 116 TRIGger COUNt 2 116 TRIGger SOURce 2 117 TRIGger TIMer 2 117 Truncating commands 2 3 TST 2 118 W WAI 2 118 FCA3000 FC...

Reviews: