Developing Your Application Chapter 3
NI-488.2 User Manual for Windows 3-2 © National Instruments Corp.
Using NI-488 Functions: One Device for Each BoardIf your system has only one device attached to each board, the NI-488 functions are
probably sufficient for your programming needs. Some other factors that make the
NI-488 functions more convenient include the following:
• With NI-488 asynchronous I/O functions (ibcmda, ibrda, and ibwrta), you can
initiate an I/O sequence while maintaining control over the CPU for non-GPIB tasks.
• NI-488 functions include built-in file transfer functions (ibrdf and ibwrtf ).
• With NI-488 functions, you can control the bus in non-typical ways or communicate
with non-compliant devices.
The NI-488 functions consist of high-level (or device) functions that hide much of the
GPIB management operations and low-level (or board) functions that offer you more
control over the GPIB than NI-488.2 routines. The following sections describe these
different function types.
NI-488 Device Functions
Device functions are high-level functions that automatically execute commands that
handle bus management operations such as reading from and writing to devices or polling
them for status. If you use device functions, you do not need to understand GPIB
protocol or bus management. For information about device-level calls and how they
manage the GPIB, refer to Device-Level Calls and Bus Management, in Chapter 7, GPIB
Programming Techniques.
NI-488 Board Functions
Board functions are low-level functions that perform rudimentary GPIB operations.
Board functions access the interface board directly and require you to handle the
addressing and bus management protocol. In cases when the high-level device functions
might not meet your needs, low-level board functions give you the flexibility and control
to handle situations such as the following:
• Communicating with non-compliant (non-IEEE 488.2) devices
• Altering various low-level board configurations
• Managing the bus in non-typical ways