Specifications

Status and Events
TDS3000, TDS3000B, and TDS3000C Series Programmer Manual
3-9
REM “Take amplitude measurement on acquired data”
MEASUREMENT:IMMED:VALUE?
Though *WAI is one of the easiest ways to achieve synchronization, it is also the
most costly. The processing time of the oscilloscope is slowed since it is
processing a single command at a time. This time could be spent doing other
tasks.
The controller can continue to write commands to the input buffer of the
oscilloscope, but the commands will not be processed by the oscilloscope until
all operations in process are complete. If the input buffer becomes full, the
controller will be unable to write more commands to the buffer. This can cause a
time-out.
The BUSY? query allows you to find out whether the oscilloscope is busy
processing a command that has an extended processing time such as single-se-
quence acquisition.
The same command sequence using the BUSY? query for synchronization looks
like this:
REM “Set up single-sequence acquisition”
SELECT:CH1 ON
HORIZONTAL:RECORDLENGTH 500
ACQUIRE:MODE NORMALSAMPLE
ACQUIRE:STOPAFTER SEQUENCE
REM “Acquire waveform data”
ACQUIRE:STATE ON
REM “Set up the measurement parameters”
MEASUREMENT:IMMED:TYPE AMPLITUDE
MEASUREMENT:IMMED:SOURCE CH1
REM “Wait until the acquisition is complete before taking the measurement”
While BUSY? keep looping
REM “Take amplitude measurement on acquired data”
MEASUREMENT:IMMED:VALUE?
This sequence lets you create your own wait loop rather than using the *WAI
command. The BUSY? query helps you avoid time-outs caused by writing too
many commands to the input buffer. The controller is still tied up, though, and
the repeated BUSY? query will result in more bus traffic.
Using the BUSY Query