3
GPIB Operation
|
i
*IST Poll
24
Stage 2: Parallel poll the instrument until DI02 is set
LOOP% = 1
WHILE LOOP%
CALL IBRPP(BRD0%,PPR%)
IF (PPR% AND &H2) = 2 THEN LOOP% =
WEND
Stage 3: Disable parallel polling (hex 15) and clear the parallel
poll register
CMD55=CHR$(&H15)
CALL IBCMD(BRD0%,CMD5$)
CALL IBCMD(BRD0%,CMDI$)
CMD$=" *PRE 0"
CALL IBWRT(BRD0%,CMD$)
Note 1: In the example above, board-level GPIB function calls
are used. It is assumed that the controller (board) and oscillo-
scope (device) are respectively located at addresses 0 and 4. The
listener and talker addresses for the controller and oscilloscope
are:
Logic device
controller
oscilloscope
Listener address
32 (ASCII<space>)
32+4=36 (ASCII $)
Talker address
64 (ASCII @)
64+4=68 (ASCII D)
Note 2: The characters "?" and .... appearing in the command
strings stand for unlisten and untalkrespectively. They are used to
set the devices to a "known" state.
Note 3: To shorten the size of the program examples, device talk-
ing and listening initialization instructions have been grouped into
character chains. They are:
CMDI$ = "?_@$" ’Unlisten, Untalk, PC talker, DSO listener
Note 4: The remote message code for executing a parallel response
in binary form is 01101PPP where PPP specifies the data line.
Since data line 2 is selected, the identification code is 001 which
results in the code 01101001 (binary) or &H69 (hex). See Table
38 of the IEEE 488-1978 Standard for further details.
The state of the Individual STatus bit (IST) returned in parallel
polling can also be read by sending the "* IST?" query. To enable
this poll mode, the oscilloscope must be initialized as for parallel
polling by writing into the PRE register. Since *IST polling emu-
lates parallel polling, this method is applicable in all instances
where parallel polling is not supported by the controller.