Specifications

ZVx Interfaces
1043.0009.50 A.11 E-8
RSIB Interface Functions
This chapter lists all functions of the DLL "RSIB.DLL" or "RSIB32.DLL" or "librsib.so", which
allow to produce control applications.
Variables ibsta, iberr, ibcntl
Same as with the National Instruments interface, successful execution of a command can be checked
by means of the variables ibsta, iberr and ibcntl. To this end, references to the three variables
are transferred to all RSIB functions. In addition, the status word ibsta is returned as a function value
by all functions.
Status word ibsta
All functions send back a status word that provides information on the status of the RSIB interface. The
following bits are defined:
Bit name Bit Hex code Description
ERR
15 8000 This bit is set if an error occurs during a function call. If this bit is set, iberr
contains an error code which specifies the error.
TIMO
14 4000
This bit is set if a timeout occurs during a function call. A timeout may occur in
the following situations:
while waiting for an SRQ with the function RSDLLWaitSrq().
if no acknowledgment is received for data sent to an instrument with
RSDLLibwrt() or RSDLLilwrt().
if no response from server to a data request with function RSDLLibrd() or
RSDLLilrd().
CMPL
8 0100
This bit is set if the reply of the IEC/IEEE-bus parser is completely read. If a
reply of the parser is read with the function RSDLLilrd() and the buffer
length is not sufficient, the bit is cleared.
Error variable iberr
If the ERR bit (8000h) is set in the status word, iberr contains an error code that specifies the error.
The RSIB has error codes of its own independent of the National Instrument interface.
Error Error code Description
IBERR_DEVICE_REGISTER
1 RSIB.DLL cannot register any new device.
IBERR_CONNECT
2 Link to the device has failed.
IBERR_NO_DEVICE
3 An interface function was called with an invalid device handle.
IBERR_MEM
4 No free memory available.
IBERR_TIMEOUT
5 Timeout has occurred.
IBERR_BUSY
6 The RSIB interface is blocked by a function not yet completed.
Windows is not blocked, for example, by function RSDLLibrd() if data are still
to be transmitted in response to this function. In this case a new call is
possible. Further calls are however rejected by RSIB.DLL with error code
IBERR_BUSY.
IBERR_FILE
7 Error in reading from or writing to a file.
IBERR_SEMA
8 Error upon creating or assigning a semaphore (only under Unix)