Remote Operation
Emulating a Fluke 5100B or 5200A Calibrator 5
5-67
5-54. Writing an SRQ and Fault Handler
It is good practice to include fault (error) handling routines in your applications. The
following sample Fluke 1722A Basic program lines show a method for halting program
execution on occurrence of an SRQ (Service Request) on the bus, checking to see if the
calibrator is the source of the SRQ, retrieving its fault messages, and acting on the faults.
You should modify and extend this code as necessary for your application.
1Ø INIT PORTØ ! IFC THE BUS
2Ø CLEAR PORTØ ! DCL THE BUS
3Ø ! INITIALIZE THE 57ØØA SRQ HANDLER
4Ø PRINT @4, “*SRE 8” ! ENABLE STB.EAV (FAULT AVAILABLE)
5Ø ON SRQ GOTO 11ØØ ! INSTALL SRQ HANDLER
6Ø ! BODY OF THE APPLICATION GOES HERE
11ØØ ! BUS SRQ HANDLER
111Ø CLEAR PORTØ
112Ø IF (SPL(4) AND 64) THEN GOSUB 12ØØ ! IF (STB.RQS) CALL 57ØØA SRQ
113Ø ! TEST OTHER DEVICES RQS BITS IF DESIRED
114Ø RESUME
12ØØ ! 57ØØA SRQ HANDLER
121Ø IF (SPL(4) AND 8) THEN GOSUB 13ØØ ! IF (STB.EAV) CALL FAULT HANDLER
122Ø ! TEST OTHER STB BITS IF DESIRED
1299 RETURN
13ØØ ! 57ØØA STB.EAV (FAULT) HANDLER
131Ø ! DO {
132Ø PRINT @4, “FAULT?” ! READ AND CLEAR 57ØØA FAULT
133Ø INPUT @4, E% ! READ IN THE FAULT NUMBER
134Ø PRINT @4, “EXPLAIN? “;E% ! GET THE EXPLANATION STRING
135Ø INPUTLINE @4, E$ ! READ IN THE EXPLANATION STRING
136Ø PRINT E%,E$ ! PRINT USEFUL MESSAGE
137Ø IF (E% <> Ø) THEN GOTO 132Ø ! } UNTIL (NO MORE FAULTS)
138Ø PRINT “PLEASE FIX THE SOURCE OF THESE FAULTS BEFORE CONTINUING”
139Ø STOP !OTHER COMMANDS FOR YOUR APPLICATION
1399 RETURN