Fluke PM 6666 Operator's Manual page 35

Timer / counter
Table of Contents

Advertisement

For IBM PC with PM 2201
Example 1
The following example runs on an IBM compatible PC
equipped with Fluke PM 2201 GPIB interface. The installa-
tion and starting up of the PC program is not described,
only the application program. Line 1 to 100 must contain
the declaration described in the PM 2201 manual.
The program sets up the counter for 10 Period A measure-
ments and presents the average result on the screen.
100
'DEMO PROGRAM (NO 1)
110
'PM6666 AND IBM PC
120
'WITH PM2201 GPIB INTERFACE
130
'AS CONTROLLER
140
CLS 'CLEAR SCREEN
150
AD=7 'ADAPTOR NUMBER
160
ADDR=710 'COUNTER ADDRESS
170
SC=1 'SYSTEM CONTROLLER
180
RES$ = SPACE$(25) 'RESULT
190
ACT = 0 '# READ CHARACTERS IN RES$
200
MAX = 24 'MAX CHARACTERS TO READ IN RES$
210
CALL IOINIT(AD,SC) 'INIT INTERFACE
220
TIME=10 'TIMEOUT AFTER 10 SECONDS
230
CALL IOTIMEOUT (AD,TIME) 'SET TIMEOUT
240
CALL IOCLEAR(ADDR) 'SEND SDC
250
'SELECT PERIOD A, TRIGGERED MODE
260
'AND 1 S MEASURING-TIME
270
SEND$ = "PER A,TRIG ON,MTIME 1"
280
LENGTH=LEN(SEND$)
290
CALL IOOUTPUTS(ADDR,SEND$,LENGTH)
300
Z=0
310
'INPUT 10 SAMPLES
320
FOR i = 1 TO 10
330
CALL IOTRIGGER(ADDR) 'TRIGGER COUNTER
340
CALL IOENTERS(ADDR,RES$,MAX,ACT) 'READ
RESULT
350
Z = Z + VAL(MID$(RES$,8,13))
360
NEXT I
370
PRINT "AVERAGE:";Z/10;"S"
380
CALL IOLOCAL(ADDR) 'GO TO LOCAL
390
END
Example of a result:
AVERAGE:
9.98004E–06 S
OK
Example 2
This program example illustrates the 'program data out'
feature of PM 6666. By asking a set of queries, the
counter responds with its current setup. The output format
of these answers to the queries is identical to the program-
ming command format. The answers can be stored and
used later for reprogramming (bus learn).
100
'DEMO PROGRAM
110
'PM6666 AND IBM PC WITH PM2201
120
GPIB INTERFACE AS CONTROLLER
130
AD=7 ÁDAPTOR NUMBER
140
ADDR=710 'COUNTER ADDRESS
150
SC=1 'SYSTEM CONTROLLER
160
CALL IOINIT(AD,SC) ÍNIT INTERFACE
GPIB-INTERFACE OPERATION
170
180
190
200
210
220
230
240
250
260
270
280
290
300
310
320
330
340
350
360
370
380
390
400
410
420
430
440
450
460
470
480
490
500
510
520
530
540
550
560
570
580
590
600
610
620
630
Example of a result:
COUNTER SETTING:
TIME A;B
MTIME 1.00,FRUN ON
TOUT 00.0
MSR 000,OUTM 000
EIO OFF,SPR 010
INPA:
TRGSLP NEG
INPB:
TRGSLP POS
COUTER TYPE:
PM6666/016/22
Ok
TIME=10 'TIMEOUT AFTER 10 SECONDS
CALL IOTIMEOUT(AD,TIME)
CLS 'CLEAR SCREEN
ÁSK FOR AND PRINT PROGRAM DATA
PRINT "COUNTING SETTING:"
S$ = "FNC?"
GOSUB 520
A=1
GOSUB 550
S$ = "MEAC?"
GOSUB 520
A=2
GOSUB 550
S$ = "BUS?"
GOSUB 520
A=2
GOSUB 550
S$ = "INPA?"
PRINT "INPA:"
GOSUB 520
A=1
GOSUB 550
S$ = "INPB?"
PRINT "INPB:"
GOSUB 520
A=1
GOSUB 550
S$ = "ID?"
PRINT
PRINT "COUNTER TYPE:"
GOSUB 520
A=1
GOSUB 550
CALL IOLOCAL (ADDR) 'GO TO LOCAL
END
L=LEN(S$) 'LENGTH OF STRING TO SEND
CALL IOOUTPUTS(ADDR,S$,L) ÓUTPUT STRING
RETURN
FOR I = 1 TO A
MAX=25
ACT=0
RES$=SPACE$(25)
CALL IOENTERS(ADDR,RES$,MAX,ACT)
B$ = LEFT$(RES$,ACT)
PRINT B$;
NEXT I
RETURN
PM 6666 - OPERATORS MANUAL
Page: 35

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents