Among GPIB devices, talkers send data, listeners receive data, and controllers monitor or control communications between talkers and listeners.
On a GPIB system, a controller is often a CPU, and can be one of the following
System controller
Active controller
Before a talker can send a message to a listener, the controller must address both devices. A GPIB interface has only one system controller, usually a CPU that can take control of the interface at any time.
Two of the five GPIB control lines are managed exclusively by the system controller:
The IFC (interface clear) line, which returns all devices to an idle state
The REN (remote enable) line, which permits devices to operate in Remote mode. (For more details on GPIB control lines, see Signal Lines.)
The active controller is also called the Controller-In-Charge. While a GPIB interface can have more than one device capable of being active controller, only one device can be active at any given time.
On many systems, a single CPU serves as both system controller and active controller. On other systems, devices can request to be enabled as active controller in order to perform specialized applications, such as disk access or communications.
The following configurations are possible on GPIB systems:
No controller—In this case, the interface includes only talker and listener devices pre-configured to communicate directly. This configuration can only be changed manually.
Single controller—In this case, the system controller is always the active controller, and control cannot be passed to any other device. The controller can transmit data to devices, and devices can transmit data to the controller and to other devices. This is ATEasy’s default method of controlling instruments.
Multiple controllers—In this case, a single system controller can pass control to other devices, which then become the active controller.
A talker sends data to other devices. Before a talker can send data, it must be addressed by the active controller. At any one time, only one device on a system can be addressed as a talker.
A listener receives data from a talker. Before a listener can receive data, it must be addressed by the active controller. At any one time, multiple devices on a system can be addressed as a listener.