
HP 8114A: Programming the output in terms of voltage
====================================================
The following examples show how the output of the HP 8114A can be programmed
in terms of voltage. To keep the examples simple, they do not generate dialog;
the user must edit the values assigned to the voltage and resistance variables.
The examples illustrate the relationship between 8114A modes and parameters and
show how simple traps can be constructed to avoid conflicting settings.
Example 1: standard 8114A.
-------------------------Note that the user can enter negative values in the variable Volt_peak. Lines
260-300 use the sign of this variable to determine whether the output pulse
should be positive or negative. A negative :VOLT < > statement, however,
is not allowed, hence line 310 which removes the negative sign.
10 ! 8114A: Voltage programming
20 ! Applies to standard instrument only. [Ref STD_VOLT]
30 !
40 ! User enters:
50 ! pulse peak voltage Volt_peak
60 ! load resistance Extload and source resistance Intload.
70 Extload=53 !Ohms, as required
80 Intload=50 ! Ohms (set to 100 if hi-z required)
90 Volt_peak=-35 ! Volts. See Note if V>|50| V.
100 ! Note:
110 ! Voltages >50 V (max 100 V) feasible if:
120 ! a) Extload>50 ohm, Intload=50 ohm.
130 ! or b) Extload=50 ohm, Intload=hi-z
140 !
150 CLEAR SCREEN
160 ASSIGN @Pg TO 714
170 REMOTE 7
180 !
190 IF Extload>45 AND Extload<55 THEN ! Traps attempt
200 ! to set both loads to values significantly
210 ! different from 50 ohm (pulse performance issue)
220 ELSE
230 Intload=50
240 END IF
250 !
260 IF Volt_peak>0 THEN ! Determines polarity of pulse
270 Pulse_pol$="POS"
280 Volt=Volt_peak
290 ELSE
300 Pulse_pol$="NEG"
310 Volt=-1*Volt_peak
320 END IF
330 !
340 CLEAR @Pg
360 OUTPUT @Pg;":PULS:DCYC 1PCT;HOLD DCYC" ! 1% dty. DTY displayed.
370 OUTPUT @Pg;":OUTP:POL ";Pulse_pol$
380 OUTPUT @Pg;":OUTP:IMP ";Intload;"OHM;IMP:EXT ";Extload;"OHM"
390 OUTPUT @Pg;":VOLT ";Volt;"V"
400 OUTPUT @Pg;":HOLD VOLT"
410 WAIT 1
420 OUTPUT @Pg;":OUTP ON" !Output enabled.
430 LOCAL 714
440 END

Example 2: HP 8114A with Option 001 Baseline Offset
--------------------------------------------------This program adds a new variable, Volt_base, so that the required offset is
defined. Naturally, this can be set to zero if no offset is needed.
10 ! 8114A: Voltage and offset programming.
20 ! Applies to Option 001 only.
30 !
40 ! User enters:
50 ! baseline voltage=Volt_base, pulse peak voltage=Volt_peak
60 ! load resistance Extload and source resistance Intload.
70 Extload=53 !Ohms, as required
80 Intload=50 ! Ohms (change to 100 if hi-z needed).
90 Volt_peak=-35 ! Volt. See Notes if V>|50| V.
100 Volt_base=.2 ! Volt.
120 ! Notes:
130 ! 1. If baseline offset required, set Intload to 50.
140 ! 2. Voltages >50 V (max 100 V) feasible if:
150 ! a) Extload>50 ohm, Intload=50 ohm.
160 ! or b) Extload=50 ohm, Intload=hi-z
170 ! Baseline offset is not feasible in case 2b.
180 !
190 CLEAR SCREEN
200 ASSIGN @Pg TO 714
210 REMOTE 7
220 !
230 IF Extload>45 AND Extload<55 THEN ! Traps attempt
240 ! to set both loads to values significantly
250 ! different from 50 ohm (pulse performance issue)
260 ELSE
270 Intload=50
280 END IF
290 !
300 IF Intload=50 THEN ! Traps attempt to set up offset
310 !with Hi-Z Intload.
320 ELSE
330 Curr_base=0
340 END IF
360 IF Volt_peak>Volt_base THEN ! Determines polarity of pulse
370 Pulse_pol$="POS"
380 Volth=Volt_peak
390 Voltl=Volt_base
400 ELSE
410 Voltl=Volt_peak
420 Volth=Volt_base
430 Pulse_pol$="NEG"
440 END IF
450 !
460 CLEAR @Pg
470 OUTPUT @Pg;"*RST"
480 OUTPUT @Pg;":PULS:DCYC 1PCT;HOLD DCYC" ! 1% dty. DTY displayed.
490 OUTPUT @Pg;":OUTP:POL ";Pulse_pol$
500 OUTPUT @Pg;":OUTP:IMP ";Intload;"OHM;IMP:EXT";Extload;"OHM"
510 OUTPUT @Pg;":HOLD VOLT"
520 OUTPUT @Pg;":VOLT:HIGH ";Volth;"V;:VOLT:LOW";Voltl;"V"
530 WAIT 1
540 OUTPUT @Pg;":OUTP ON" !Output enabled.
550 LOCAL 714
560 END