Status and Events
Service Reques
t Method: Enable the OPC bit in the Device Event Status Enable
Register (DESER) and the Event Status Enable Register (ESER) using the DESE
and *ESE commands.
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, the oscilloscope will generate a Service Request.
The same command sequence using the *OPC command for synchronization
looks like this
/* Set up conditional acquisition */
ACQUIRE:STATE OFF
SELECT:CH1 ON
HORIZONTAL:RECORDLENGTH 1000
ACQUIRE
:MODE SAM PLE
ACQUIRE:STOPAFTER SEQUENCE
/* Enab le the st atus registers */
DESE 1
*ESE 1
*SRE 32
/* Acq
uire wa veform data */
ACQUIRE:STATE ON
/* Set up the measurement parameters */
MEASUREMENT:IMMED:TYPE AMPLITUDE
MEASUREMENT:IMMED:SOURCE CH1
/* Wait until the acquisition is complete before taking the
mea
surement*/
*OPC
Th
e 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:IMMED:VALUE?
Example of Using the
*OPC? Q uery
The *OPC? query places a 1 in the Output Queue once an operation that generates
an OPC 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 expected 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
SELECT:CH1 ON
HORIZONTAL:RECORDLENGTH 1000
ACQUIRE:MODE SAMPLE
ACQUIRE:STOPAFTER SEQUENCE
MDO4000/B/C, MSO/DPO4000B and MDO3000 Series Oscilloscopes Programmer Manual 3-11