58542 VXIbus Universal Power Meter
A-38 Publication 21555, Rev. E, September 2002
A.8.4 High Speed Measurement Example 4
The following program shows SWIFt Mode measurements using EXT TTL triggering and Buffered data.
INIT:CONT must be set to ON; The user can not use INIT with INIT:CONT set to OFF. This program
buffers 30 measurements in the 58542 before group download to the controller using the TRIG:COUN
command in line 390. In the SWIFT mode, this command must be sent after the TRIG:SOUR
command.
170 ASSIGN @Pwr_mtr to 70101
180 CLEAR @Pwr_mtr
190 WAIT 1
200 OUTPUT @Pwr_mtr;*CLS ! Clears old messages from SYST:ERR buffer
210 WAIT 0.3
220 OUTPUT @Pwr_mtr;CALC1:MODE NORM ! NORMal Mode to perform channel configuration
230 OUTPUT @Pwr_mtr;CALC1:POW 1 ! Channels 1 or 2 can be either POW 1 or POW 2
240 ! RATio and DIFFerence configurations are illegal in
! SWIFt and BURSt Modes.
250 !
260 !############################################
270 !
280 ! Entering SWIFt Mode
290 !
300 OUTPUT @Pwr_mtr;CALC1:MODE SWIF ! Enters SWIFt Mode for fastest individual data point
! triggered measurements.
310 !
320 OUTPUT @Pwr_mtr;SENS1:CORR:FREQ 2.22E8
! Applies Cal Factor in SWIFt mode
330 ! Can be sent before or after CALC#:MODE SWIF
340 !
350 OUTPUT @Pwr_mtr;TRIG:SOUR EXT ! TTL level triggering, Each trigger acquires one
! data point in SWIFt Mode.
360 ! Can be sent before or after CALC#:MODE SWIF
370 !
380 Num_pts=30
390 OUTPUT @Pwr_mtr;TRIG:COUN;Num_pts ! Stores 20 points for simultaneous output using FETCh#?.
400 ! Must be sent after CALC#:MODE SWIF
410 !
420 REDIM Chan1sens_1(Num_pts),Chan2sens_2(Num_pts)
430 !
440 Time1=TIMEDATE
450 WAIT 5 ! If necessary, use wait statements
460 ! For example, use it if TRIG:COUN # is high or TTL
! trigger source is slow.
470 OUTPUT @Pwr_mtr;FETC1? ! FETC#? acquires data
480 !OUTPUT @Pwr_mtr;FETC1?;FETC2?
490 ENTER @Pwr_mtr;Chan1sens_1(Num_pts)
500 !ENTER @Pwr_mtr;Chan1sens_1(Num_pts),Chan2sens_2(Num_pts)
! Use this line when two sensors are attached.
510 Time2=TIMEDATE
520 Time=Time2-Time1
530 Speed=Num_pts/Time
540 !
550 PRINT Chan1sens_1(*)
560 !PRINT Chan1sens_1(*),Chan2sens_2(*) ! Use this line when two sensors are attached.
570 PRINT Speed; readings per second.
580 PRINT “”
590 !
600 END