Opc? - Operation Complete Query - Keithley 2002 User Manual

Hide thumbs Also See for 2002:
Table of Contents

Advertisement

IEEE-488 Reference
3.10.6
Description
Program fragment
3-34
*OPC? — operation complete query
On power-up, or when *CLS or *RST is executed, the Model 2002 goes into the Operation
Complete Command Query Idle State (OQIS). In this state there are no pending overlapped
commands. There are three overlapped commands used by the Model 2002:
:INITiate
:INITiate:CONTinuous ON
*TRG
When the *OPC? command is sent, the Model 2002 exits from OQIS and enters the Operation
Complete Command Active State (OQAS). In OQAS, the instrument continuously monitors the
No-Operation-Pending flag. After the last pending overlapped command is completed (No-
Operation-Pending flag set to true), an ASCII character "1" is placed into the Output Queue, the
Message Available (MAV) bit in the Status Byte sets, and the instrument goes back into OQIS.
Addressing the Model 2002 to talk sends the ASCII "1" to the computer.
Note that the instrument always goes into OQAS when *OPC? is executed. If there are no pend-
ing command operations (e.g. trigger model in idle state), the Model 2002 immediately places
an ASCII "1" in the Output Queue, sets the MAV bit and returns to OQIS.
When used with the :INITiate or :INITiate:CONTinuous ON command, an ASCII "1" will not
be sent to the Output Queue and the MAV bit will not set until the Model 2002 goes back into
the idle state. The initiate operations are not considered finished until the instrument goes into
the idle state.
When used with the *TRG command, an ASCII "1" will not be placed into the Output Queue
and the MAV bit will not set until the operations associated with the *TRG command (and the
initiate command) are finished. The *TRG command is considered to be finished when the
Device Action completes or when operation stops at a control source to wait for an event (see
Trigger Model in paragraph 3.8).
In order to use *OPC? exclusively with the *TRG command you will have to first force the com-
pletion of the initiate command so that only the *TRG command is pending. To do this, send the
:ABORt command to place the instrument in idle, which (by definition) completes the initiate
command. Since continuous initiation is on, operation continues on into the Trigger Model.
After sending the *TRG command, an ASCII "1" is placed in the Output Queue and the MAV
bit sets when the *TRG command is finished.
After *OPC? is executed, additional commands cannot be sent to the Model 2002 until the pend-
ing overlapped commands have finished. For example, :INITiate:CONTinuous ON followed by
*OPC? locks up the instrument and requires a device clear (DCL or SDC) before it will accept
any more commands.
See *OPC, *TRG and *WAI for more information.
PRINT #1, "output 16; :syst:pres"
PRINT #1, "output 16; :init:cont off; :abort"
PRINT #1, "output 16; :arm:coun 1"
PRINT #1, "output 16; :arm:lay2: coun 1"
PRINT #1, "output 16; :trig: coun 5; sour tim"
PRINT #1, "outut 16; :init; *opc?"
PRINT #1, "enter 16"
LINE INPUT #2, a$
PRINT a$
Place a "1" in the Output Queue after all pending
operations are completed
NOTE
' Select defaults
' Place 2002 in idle
' Program for 5 measurements and
stop (idle)
' Start measurements and send *opc?
' Get response when 2002 goes into idle
' Read contents of Output Queue
' Display the ASCII "1"

Advertisement

Table of Contents
loading

Table of Contents