Agilent Technologies 86100-90086 Sprinkler User Manual


 
1-26
Introduction
Command Syntax
Definite-Length
Block Response
Data
Definite-length block response data allows any type of device-dependent data to be transmit-
ted over the system interface as a series of 8-bit binary data bytes. This is particularly useful
for sending large quantities of data or 8-bit extended ASCII codes. The syntax is a pound sign
(#) followed by a non-zero digit representing the number of digits in the decimal integer.
After the non-zero digit is the decimal integer that states the number of 8-bit data bytes being
sent. This is followed by the actual data. For example, for transmitting 4000 bytes of data, the
syntax would be:
#44000 <4000 bytes of data> <terminator>
The leftmost “4” represents the number of digits in the number of bytes, and “4000” repre-
sents the number of bytes to be transmitted.
Queries Command headers immediately followed by a question mark (?) are queries. After receiving a
query, the instrument interrogates the requested subsystem and places the answer in its out-
put queue. The answer remains in the output queue until it is read or until another command
is issued. When read, the answer is transmitted across the bus to the designated listener
(typically a computer). For example, the query:
:TIMEBASE:RANGE?
places the current time base setting in the output queue. In BASIC, the computer input state-
ment:
ENTER < device address >;Range
passes the value across the bus to the computer and places it in the variable Range. You can
use query commands to find out how the instrument is currently configured. They are also
used to get results of measurements made by the instrument. For example, the command:
:MEASURE:RISETIME?
tells the instrument to measure the rise time of your waveform and place the result in the
output queue. The output queue must be read before the next program message is sent. For
example, when you send the query :MEASURE:RISETIME? you must follow it with an input
statement. In BASIC, this is usually done with an ENTER statement immediately followed by
a variable name. This statement reads the result of the query and places the result in a speci-
fied variable. If you send another command or query before reading the result of a query, the
output buffer is cleared and the current response is lost. This also generates a query-inter-
rupted error in the error queue. If you execute an input statement before you send a query, it
will cause the computer to wait indefinitely.
If a measurement cannot be made because of the lack of data, because the source signal is
not displayed, the requested measurement is not possible (for example, a period measure-
ment on an FFT waveform), or for some other reason, 9.99999E+37 is returned as the mea-
surement result. In TDR mode with ohms specified, the returned value is 838MΩ.
You can send multiple queries to the instrument within a single program message, but you
must also read them back within a single program message. This can be accomplished by
either reading them back into a string variable or into multiple numeric variables. For exam-
ple, you could read the result of the query :TIMEBASE:RANGE?;DELAY? into the string vari-
able Results$ with the command: ENTER 707;Results$