Chapter 7 SCPI
SCPI and RAPID!
224 WCDMA Options Version 6.20
’ Find the position within result$, where the first
’comma appears
P = INSTR(result$, “,”)
’ Read out the part of result$ in front of the first
’ comma and convert it into a numeric value
result(index) = VAL(LEFT$(result$, P – 1))
’ Cut off the value just read from result$
result$ = MID$(result$, P +1))
index = index + 1
LOOP UNTIL result$=””
IF result(3) = 0 THEN
A$ = “PASS”
ELSE
A$ = “FAIL”
END IF
’Print results
PRINT “RMS phase deviation :”; result(0)
PRINT “Frequency :”; result(1)
PRINT “Peak power :”; result(2)
PRINT “Burst shape:”; A$
GOTO OKAY_EXIT
’Entry point of any error handling routine
FAIL_EXIT:
PRINT “An error did occur during measurements :”, Err$
’Ending the program
OKAY_EXIT:
END
Message exchange This example demonstrates a message exchange between a RAPID! program and
an external control computer (connected on the GPIB).
The message exchange is triggered by events via the
SYSTem:MESSage and the
PROGram:MESSage queue.
Although not complete, the example below illustrates the principle.
‘FILE: MSGDEMO.RBS
’DESCRIPTION: RAPID! program to demonstrate message exchange between a
’ RAPID! program and the controlling computer.
...
‘Setting the mask for the service register: rising SRQ on an entry of a message
’ into the message queue.
’Bits to set: SRQ (bit 6 = 64) and system.message (bit 0 = 1)
PRINT #0,”*SRE 65”
NOTE
Only the core program code has been set in
courier to make it easy to iden-
tify it. All comments are in ‘normal’ letters.