Agilent Technologies 8156A Water Dispenser User Manual


 
132
Programming Examples
Example 2 - Status Registers and Queues
9.2 Example 2 - Status Registers and Queues
Function
This program sends a commands and queries typed in by the user.
The contents of the status byte and the standard event status register
are displayed. These registers are updated for each new command,
and each time a Service ReQuest (SRQ) occurs. The number of the
most recent error, and the most recent contents of the output queue
is also displayed.
Listing
10 !--------------------------------------------------
20 !
30 ! Agilent 8156A Programming Example 2
40 !
50 ! Status Structure, and a useful self learning tool
60 !
70 !--------------------------------------------------
80 !
90 ! Declarations and initializations
100 !
110 INTEGER Value,Bit,Quot,Xpos,Ypos
120 DIM Inp$[100]
130 DIM A$[300]
140 Att=728
150 ON INTR 7 GOSUB Pmm_srq
160 !
170 ! Mask the registers
180 !
190 OUTPUT Att;"*SRE 248;*ESE 255"
The *SRE 248 command enables bits 7 (Operation Status Summary), 5 (ESB), 4 (MAV), and 3
(Questionable Status Summary) in the status byte (bit 6 (SRQ) cannot be disabled in this
register). The *ESE 255 command enables all of the bits in the Event Status Register.
200 !
210 ! Set up the screen
220 !
230 CLEAR SCREEN
240 PRINT TABXY(40,3);"Status Byte"
250 PRINT TABXY(4,1);" OPS SRQ ESB MAV QUE"
260 PRINT TABXY(4,2);" +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
270 PRINT TABXY(4,3);" :::::::::"
280 PRINT TABXY(4,4);" +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
290 PRINT TABXY(4,5);" ^"
300 PRINT TABXY(4,6);" :"
310 PRINT TABXY(4,7);" +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
320 PRINT TABXY(4,8);" : OR :"
330 PRINT TABXY(4,9);" +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"