Chapter 3 Programming Your Universal Counter for Remote Operation
Elements of SCPI Commands
Programming Guide 3-81
To Measure the Statistics of 50 Measurements (QuickBASIC)
(Continued)
CALL sendhp(":FUNC " + CHR$(34) + "PER 1" + CHR$(34)) 'Measure Period
'The function must be a quoted string. The actual string sent to the
'counter is "PER 1"
CALL sendhp(":FREQ:ARM:STAR:SOUR IMM") 'These 3 lines enable using
CALL sendhp(":FREQ:ARM:STOP:SOUR TIM") 'time arming with a 0.01 second
CALL sendhp(":FREQ:ARM:STOP:TIM .01") 'gate time
CALL sendhp(":DISP:TEXT:FEED " + CHR$(34) + "CALC3" + CHR$(34)) 'Display stats
CALL sendhp(":CALC3:AVER:TYPE SDEV") 'Display the standard deviation
CALL sendhp(":CALC3:AVER ON") 'Enable statistics
CALL sendhp(":CALC3:AVER:COUNT " + STR$(samples)) 'Do stats on samples
CALL sendhp(":TRIG:COUNT:AUTO ON") 'Take samples measurements
CALL sendhp("*ESE 1") '"*ESE 1" is used so the
'correct bit is summarized
CALL sendhp("*SRE 32") 'in the Status Byte Register
'when the measurement is complete
PRINT "Waiting for measurement to complete"
ON PEN GOSUB statsready 'Wait for interrupt
PEN ON
CALL IOPEN(isc&, priorty%)
CALL sendhp(":INIT;*OPC") 'Enable OPC bit and start meas
loophere:
IF complete THEN GOTO endprogram 'Wait here, if already made
GOTO loophere 'stats measurements, then goto
'endprogram.
statsready: 'Ready to read statistics
CALL sendhp(":CALC3:AVERAGE:TYPE MIN;:CALC3:DATA?") 'Read them individually
CALL IOENTERS(source&, minimum, maxelem%, actual%)
CALL sendhp(":CALC3:AVERAGE:TYPE MAX;:CALC3:DATA?")
CALL IOENTERS(source&, maximum, maxelem%, actual%)
CALL sendhp(":CALC3:AVERAGE:TYPE MEAN;:CALC3:DATA?")
CALL IOENTERS(source&, mean, maxelem%, actual%)
CALL sendhp(":CALC3:AVERAGE:TYPE SDEV;:CALC3:DATA?")
CALL IOENTERS(source&, sdev, maxelem%, actual%)
PRINT
PRINT "Minimum Period = ", minimum
PRINT "Maximum Period = ", maximum
PRINT "Mean Period = ", mean
PRINT "Standard Deviation = ", sdev
complete = 1
RETURN
endprogram: 'All done!
SUB sendhp (code$)
CALL iooutputs(source, code$, LEN(code$))
END SUB