From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to work with multiple boards using the GPIB32 Library?

This isn't a pressing issue at the moment but I was just curious. I use the low-level board commands with the ni supplied GPIB32 library. At one point I issue a ibsic for a board descriptor to place it as controller in charge. That leaves me with a question. If I have more than one interface on the system do I have to reassign ibsic to the other controller when communication is needed or are there other options?

Just never really thought about it before so was thinking I'd ask.
0 Kudos
Message 1 of 2
(2,902 Views)
You can work with multiple boards or GPIB interfaces in a single system, however this is not assigned by reassigning ibsic. By following the below steps you should be able to have multiple interfaces and/or instruments in your system control the bus at different times.

  1. Only one System Controller (SC). By default, NI's GPIB interfaces are configured to be system controllers, so if you want to have multiple interfaces in a single system, you need to make sure only one GPIB interface is the System Controller. Using board level calls, you can do this on each system that you do not want to be the SC by using the following function calls in ibic or other programming interface:

    ibfind GPIBx
    (where x is your interface number according to MAX)
    ibrsc 0
    ibpad x
    (make sure the interface primary address does not conflict with the system controller)

  2. Only one Controler in Charge (CIC) at a time. The SC can pass control to another interface or instrument with controller capabilities using the following command:

    ibpct x (where x is the unit descriptor of the device that you are passing control to)

    Once control has been passed to another interface or instrument, that instrument is now the CIC and can in turn pass control to other interfaces or instruments with controller capabilities using the same function as above.

    The SC can regain control at any time by asserting the IFC line via a call to:

    ibsic


Hopefully that satisfies some curiosity. Have a great day!

Logan S.
0 Kudos
Message 2 of 2
(2,883 Views)