Programming The Isr, Iscr, And Isce; Output Queue - Fluke 5520A Operator's Manual

Multi-product calibrator
Hide thumbs Also See for 5520A:
Table of Contents

Advertisement

5520A
Operators Manual

5-55. Programming the ISR, ISCR, and ISCE

To read the contents of the ISR, send the remote command, ISR?. To read the contents
of the ISCR0 or 1, send the remote command, ISCR0?, or ISCR1?. To read the
contents of the ISCE0 or 1, send the remote command, ISCE0?, or ISCE1?. The
Calibrator responds by sending a decimal number that represents bits 0 through 15.
Every time you read the ISCR0 or 1, its contents are zeroed. The following sample
program reads all five registers:
Convert the returned variables into binary, and you can read the status of the instrument.
For example if a register contains 128, its binary equivalent is: 00000000 10000000.
Therefore, bit 7 (HIVOLT) is set (1) and the rest of the bits are reset (0).
By setting the bits in an ISCE register, you can mask (disable) the associated bits in the
ISCR. For example, to cause an SRQ interrupt when the output has settled, bit 12
(SETTLED) in the ISCE1 register must be 1. (The ISCB bit must also be enabled in the
SRE.) The following sample program loads a decimal 1024 into the ISCE, which sets bit
12 and resets the other bits:

5-56. Output Queue

The output queue is loaded whenever a query is processed, and holds up to 800
characters. The controller reads it with a statement such as a BASIC INPUT statement,
removing what it reads form the queue. If the queue is empty, the Calibrator does not
respond to the INPUT statement from the controller. The Message Available (MAV) bit
in the Serial Poll Status Byte is 1 if there is something in the output queue and 0 if the
output queue is empty.
5-44
10
! THIS PROGRAM READS THE ISR, ISCR, AND ISCE REGISTERS
20
! NOTE THAT THE ICSR? COMMANDS CLEAR THE ISCR CONTENTS
PRINT @6, "ISR?"
30
40
INPUT @6,A%
PRINT @6, "ISCR0?"
50
60
INPUT @6, B%
PRINT @6, "ISCE0?"
70
80
INPUT @6, C%
PRINT @6, "ISCR1?"
50
60
INPUT @6, D%
PRINT @6, "ISCE1?"
70
80
INPUT @6, E%
PRINT "ISR =
";A%
90
100 PRINT "ISCR0 = ";B%
110 PRINT "ISCE0 = ";C%
100 PRINT "ISCR1 = ";D%
110 PRINT "ISCE1 = ";E%
120 END
10
! THIS PROGRAM LOADS 00010000 00000000 BINARY INTO THE ISCE
PRINT @6, "ISCE 4096" ! LOAD DECIMAL 4096 INTO ISCE
20
PRINT @6, "ISCE?"
30
40
INPUT @6, A%
PRINT "ISCE = ";A%
50
60
END
! ASK ISR CONTENTS
! RETRIEVE REGISTER CONTENTS FROM 5520A
! ASK FOR AND CLEAR ISCR0 CONTENTS
! RETRIEVE REGISTER CONTENTS FROM 5520A
! ASK FOR ISCE0 CONTENTS
! RETRIEVE REGISTER CONTENTS FROM 5520A
! ASK FOR AND CLEAR ISCR1 CONTENTS
! RETRIEVE REGISTER CONTENTS FROM 5520A
! ASK FOR ISCE1 CONTENTS
! RETRIEVE REGISTER CONTENTS FROM 5520A
! DISPLAY ISR
! DISPLAY ISCR0
! DISPLAY ISCE0
! DISPLAY ISCR1
! DISPLAY ISCE1
! READ BACK ISCE VALUE
! "
! PRINT IT, IT SHOULD BE 4096

Advertisement

Table of Contents
loading

Table of Contents