Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Explanation of CMPL status bit?

I have a question regarding 488.2 communications.  There is a status word that can be read via *STB?

Is this word the status of the entire GPIB bus (in other words, the status of the GPIB bus according to the controller) or
just of the queried GPIB instrument?  Another way of asking is, is the status of the bit as returned by the *STB? call
the or'd status of all instruments on the GPIB bus?

There is a CMPL bit in this status word.  When the CMPL is set, does this mean the entire bus is inactive (nobody
is currently talking or listening)?

I know - I basically asked the same question twice, but I want to make sure I get the correct answer.


-----------------------------------------------------------------------

Mark HarySensing Systems LLC
mark.hary@sensingsystems.com 2755 Campus Drive, Suite 230
T 650.341.5550 x104 San Mateo, CA 94403
F 650.341.5556 http://www.SensingSystems.com
0 Kudos
Message 1 of 2
(4,359 Views)
The "status word" you mention is bit confusing.  1) Are you talking about response data from the instrument when it was queried by "*STB?" command? Or, 2) Are you talking about NI-488.2M library's IBSTA status variable?
 
case 1),
The response data to *STB? query command is "Status Byte" that the IEEE488.2 std defines.  It is an 8 bit integer (0..255) in ASCII expression.  If the instrument is truely compliant with IEEE488.2 std or SCPI specifications, the usage for Status Byte is also defined in the IEEE488.2 document, however there is no such CMPL bit in it.  Some non-IEEE488.2 instruments may implement the *STB? query command as the same syntax, but in this case the instrument vendor ocationally designs instrument-specific bit assignment for Status Byte.  If this is the case, you should contact the product manual or the vendor for the meaning of bit assignment.
 
case 2),
The NI-488.2M library provides a global variable "ibsta" as int type (in C/C++) or "IBSTA" as Integer type (in VB6).  The variable is actually 16bit integer (even if Win32 C/C++ compiler, which defines "int" as 32bit).  The bit #8 is degined as CMPL.  This mens that previous GPIB I/O is completed.  This is very NI-488.2M library specific, and not directly concerning to instruments.  Refer to NI-488.2M's Online Help for more info.

このメッセージは 01-19-2006 01:15 PMに Makoto が編集しています。

0 Kudos
Message 2 of 2
(4,355 Views)