IBCAC
Board-Level
Purpose
Become Active Controller.
Format
C
unsigned long ibcac (int ud, int v)
|
Visual Basic
or
status% = ilcac (ud%, v%)
|
Input
ud
|
A board unit descriptor |
v
|
Determines if control is to be taken asynchronously or synchronously |
Output
Function Return |
The value of Ibsta
|
Description
Using ibcac, the designated GPIB interface attempts to become the Active Controller by asserting ATN. If v is zero, the GPIB interface takes control asynchronously; if v is non-zero, the GPIB interface takes control synchronously. Before you call ibcac, the GPIB interface must already be CIC. To make the board CIC, use the ibsic function.
To take control synchronously, the GPIB interface attempts to assert the ATN signal without corrupting transferred data. If this is not possible, the board takes control asynchronously.
To take control asynchronously, the GPIB interface asserts ATN immediately without regard for any data transfer currently in progress.
Most applications do not need to use ibcac. Calls that require ATN to be asserted, such as ibcmd, do so automatically.
Possible Errors
EARG
|
ud is valid but does not refer to an interface. |
ECIC
|
The interface is not Controller-In-Charge. |
EDVR
|
The NI-488.2 driver is either configured incorrectly or is not properly installed. |
EHDL
|
ud is invalid or out of range. |
ELCK
|
The requested operation could not be performed because of an existing lock by another process. |
ENEB
|
The interface is not installed or is not properly configured. |
EOIP
|
Asynchronous I/O is in progress. |