Using Serial Poll (GPIB)
This example will show how to use the service request by conducting a serial
poll of all instruments on the GPIB bus. In this example, assume that there
are two instruments on the bus: a Logic Analyzer at address 7 and a printer at
address 1.
The program command for serial poll using HP BASIC 6.2 is Stat =
SPOLL(707). The address 707 is the address of the logic analyzer in the this
example. The command for checking the printer is Stat = SPOLL(701)
because the address of that instrument is 01 on bus address 7. This
command reads the contents of the GPIB Status Register into the variable
called Stat. At that time bit 6 of the variable Stat can be tested to see if it is
set (bit 6 = 1).
The serial poll operation can be conducted in the following manner:
1Enable interrupts on the bus. This allows the controller to see the
SRQ line.
2Disable interrupts on the bus.
3If the SRQ line is high (some instrument is requesting service) then
check the instrument at address 1 to see if bit 6 of its status register is
high.
4To check whether bit 6 of an instruments status register is high, use
the following BASIC statement•: IF BIT (Stat, 6) THEN
5If bit 6 of the instrument at address 1 is not high, then check the
instrument at address 7 to see if bit 6 of its status register is high.
6As soon as the instrument with status bit 6 high is found check the
rest of the status bits to determine what is required.
The SPOLL(707) command causes much more to happen on the bus than
simply reading the register. This command clears the bus automatically,
addresses the talker and listener, sends SPE (serial poll enable) and SPD
(serial poll disable) bus commands, and reads the data. For more
information about serial poll, refer to your controller manual, and
programming language reference manuals.
After the serial poll is completed, the RQS bit in the 1660-series logic
analyzer Status Byte Register will be reset if it was set. Once a bit in the
Status Byte Register is set, it will remain set until the status is cleared with a
*CLS command, or the instrument is reset.
Status Reporting
Serial Poll
6–8