Status and Events
ACQUIRE:MODE S
AMPLE
ACQUIRE:STOPAFTER SEQUENCE
/* Enab le the st atus registers */
DESE 1
*ESE 1
*SRE 32
/* Set up the measurement parameters on the channel we’re
about t o sequence */ :MEASUrement:MEAS1:TYPE AMPLITUDE
:MEASUrem
ent:MEAS1:SOURCE CH1
/* Acqu ire waveform data */
ACQUIRE:STATE ON
/* Wait until the acquisi tion is complete before taking the
measurement*/
*OPC
The program can now do different tasks such as talk to other devices. The SRQ,
when it comes, interrupts those tasks and returns control to this task.
/* Take
amplitude measurement */
MEASUREMENT:MEAS1:RESUlts: CURRentacq:MEAN?
Example of Using the
*OPC?
Query
The *OPC? query places a 1 in the Output Queue once an operation that generates
an OP
C message is complete. The *OPC? query does not return until all pending
OPC operations have completed. Therefore, your time-out must be set to a time at
least as long as the longest expe cted time for the operations to complete.
The same command sequence using the *OPC? query for synchronization looks
like this:
/* Set up single sequence acquisition */
ACQUIRE:STATE OFF
DISPLAY:WAVEVIEW1:CH1:STAT E 1
HORIZONTAL:RECORDLENGTH 1000
ACQUIRE:MODE SAMPLE
ACQUIRE:STOPAFTER SEQUENCE
/* Set up the measurement parameters on the channel we’re
about t o sequence */
MEASUREMENT:MEAS1:TYPE AMPLITUDE
MEASUREMENT:MEAS1:SOURCE CH1
/* Acqu ire waveform data */
ACQUIRE:STATE ON
/* Wait until the acquisi tion is complete before taking the
measurement*/
*OPC?
Wait for read from Output Queue.
/* Take amplitude measurement */
MEASUREMENT:MEAS1:RESUlts: CURRentacq:MEAN?
MSO54, MSO56, MSO58, MSO58LP Programmer 3-11