|
Appendix A
II
605 "SUBROUTINE STORE DATA
610
"
615 RDIS=SPACE$(3)
620
LINE INPUT "Specify trace (EA,EB,MC,MD,FE,FF,CI,C2): ",TRACES
625 LINE INPUT "Enter filename : ",FILES
630 CMD$="WFSU NP,0,SP,0,FP,0,SN,0; CHDR SHORT"
640 CALL IBWRT(SCOPE%,CMDS)
645 CMDS=TRACES+":WF?"
650 CALL IBWRT(SCOPE%,CMDS)
660 CALL IBRD(SCOPE%,RD1S)
"Discard first 3 chars of response
665 CALL IBRDF(SCOPE%,FILE$)
670 IF IBSTA% < 0 THEN GOTO 840
875 PRINT ""
680
RETURN
700
"
705
"SUBROUTINE RECALL DATA
710 "
715
LINE INPUT "Specify target memory (MC,MD): ",MEM$
720 LINE INPUT "Enter filename : ",FILES
730 CMDS=MEMS+":TRACE ON"
735 CALL IBWRT(SCOPE%,CMD$)
740 CALL IBWRTF(SCOPE%,FILE$)
745 IF IBSTA% < 0 THEN GOTO 840
750 PRINT ""
755
RETURN
800
"
810 "ERROR HANDLER
820
"
830 PRINT "IBFIND ERROR"
835
END
840 PRINT "OPIB ERROR -- IBERR: ";IBERR%;"IBSTA: ";HEX$(IBSTA%)
845 END
EXAMPLE 3:
GPIB PROGRAM FOR
IBM PC (LOW-LEVEL
FUNCTION CALLS)
The following example has the same function as example 2, but it is
written with low level function calls.
The program assumes that the controller (board) and oscilloscope
(device) are at addresses 0 and 4 respectively. The decimal listen-
er and talker addresses of the controller and the device thus are:
Listener address Talker address
controller
32 (ASCII <space>)
64 (ASCII @)
device 32+4=36 (ASCII $)
64+4=68 (ASCII D).
202