Chapter 3 Developing Your NI-488.2 Application
© National Instruments Corporation 3-5 NI-488.2 User Manual for Windows
Board-level functions that an NI-488.2 application might use include the
followingibcmd, ibrd, ibwrt, and ibconfig. For a detailed list, refer
to the NI-488.2 online help. For instructions on accessing the online help,
refer to the Usingthe NI-488.2 Documentation section in About This
Manual.

Using Multiple Interfaces and/or Multiple Devices

When your system includes an interface that must access multiple devices,
use the multi-device NI-488.2 calls, which can perform the following tasks
with a single call:
Find the Listeners on the bus using FindLstn.
Find a device requesting service using FindRQS.
Determine the state of the SRQ line, or wait for SRQ to be asserted
using TestSRQ or WaitSRQ.
Address multiple devices to receive a command using SendList.
You can mix board-level traditional NI-488.2 calls with the multi-device
NI-488.2 calls to have access to all the NI-488.2 functionality.
Checking Status with Global Variables
Each NI-488.2 API call updates four global variables to reflect the status of
the device or interface that you are using. These global status variables are
the status word (ibsta), the error variable (iberr), and the count
variables (ibcnt and ibcntl). They contain useful information about the
performance of your application. Your application should check these
variables after each NI-488.2 call. The following sections describe each of
these global variables and how you can use them in your application.
Note If your application is a multithreaded application, refer to the section Writing
Multithreaded Win32 NI-488.2 Applications in Chapter 7, NI-488.2 Programming
Techniques.

Status Word (ibsta)

All NI-488.2 calls update a global status word, ibsta, which contains
information about the state of the GPIB and the GPIB hardware. The value
stored in ibsta is the return value of all the traditional NI-488.2 calls,
except ibfind and ibdev. You can examine various status bits in ibsta
and use that information to make decisions about continued processing. If