Command Sequence and Synchronization
R&S
®
RTC1000
347
User Manual 1335.7352.02 ─ 02
Table B-1: Synchronization using *OPC, *OPC? and *WAI
Com-
mand
Action
Programming the controller
*OPC
Sets the Operation Complete bit in the ESR
after all previous commands have been exe-
cuted.
●
Setting bit 0 in the ESE
●
Setting bit 5 in the SRE
●
Waiting for service request (SRQ)
*OPC?
Stops command processing until 1 is
returned. This occurs when all pending opera-
tions are completed.
Send *OPC? directly after the command
whose processing must be terminated before
other commands can be executed.
*WAI
Stops further command processing until all
commands sent before *WAI have been exe-
cuted.
Send *WAI directly after the command whose
processing must be terminated before other
commands are executed.
Command synchronization using
*WAI
or
*OPC?
is a good choice if the overlapped
command takes only little time to process. The two synchronization commands simply
block overlapped execution of the command. Append the synchronization command to
the overlapping command, for example:
SINGle; *OPC?
For time consuming overlapped commands, you can allow the controller or the instru-
ment to do other useful work while waiting for command execution. Use one of the fol-
lowing methods:
*OPC with a service request
1. Set the OPC mask bit (bit no. 0) in the ESE: *ESE 1
2. Set bit no. 5 in the SRE:
*SRE 32
to enable ESB service request.
3. Send the overlapped command with
*OPC
.
4. Wait for a service request.
The service request indicates that the overlapped command has finished.
*OPC? with a service request
1. Set bit no. 4 in the SRE:
*SRE 16
to enable MAV service request.
2. Send the overlapped command with
*OPC?
.
3. Wait for a service request.
The service request indicates that the overlapped command has finished.
Event status register (ESE)
1. Set the OPC mask bit (bit no. 0) in the ESE:
*ESE 1
2. Send the overlapped command without
*OPC
,
*OPC?
or
*WAI
.
3. Poll the operation complete state periodically (with a timer) using the sequence:
*OPC; *ESR?
A return value (LSB) of 1 indicates that the overlapped command has finished.
Preventing Overlapping Execution