HP IBASIC Supplement 8-15
Interfacing with External Devices
General Bus Management
The IEEE standard states that when an interrupting device is serially
polled, it is to stop interrupting until a new condition occurs (or the same
condition occurs again). To “clear” the SRQ line, a serial poll must be
performed on the device. By performing this serial poll, the controller
acknowledges to the device that it has seen the request for service and is
responding. The device then removes its request for service (by releasing
SRQ).
If the SRQ line had not been released, the controller would have
branched to the service routine immediately upon re-enabling interrupts
on this interface. This is due to the level-sensitive nature of the SRQ
interrupt.
Also note that once an interrupt is sensed and logged, the interface
cannot generate another interrupt until the first interrupt is serviced.
The controller disables all subsequent interrupts from an interface until
a pending interrupt is serviced.
Conducting a Serial Poll
A sequential poll of individual devices on the bus is known as a Serial
Poll. A byte of device-specific status is returned in response to a Serial
Poll. This byte is called the “Status Byte” message and, depending on the
device, may indicate an overload, a request for service, or a printer being
out of paper. The particular response of each device depends on the
device.
The SPOLL function performs a Serial Poll of the specified device; the
program must currently be the active controller in order to execute this
function.
Examples
Status_byte=SPOLL(@Device)
ASSIGN @Device TO 700
Spoll_724=SPOLL(724)
The Serial Poll is meaningless for an interface since it must poll
individual devices on the interface. Therefore, primary addressing must
be used with the SPOLL function.