
3-34 Agilent B1500A/B1505A Programming Guide, Edition 11
Programming Examples
Staircase Sweep with Pulsed Bias Measurements
session.WriteString("DV " & t(0) & ",0,0,0.1" & vbLf) ’37
Dim b_pt As String = "0.1,0.01,0.02" ’hold, width, period in sec
session.WriteString("PT " & b_pt & vbLf)
session.WriteString("MM 5," & t(2) & vbLf) ’5: staircase sweep w/pulsed bias
session.WriteString("CMM " & t(2) & ",1" & vbLf)
session.WriteString("RI " & t(2) & ",0" & vbLf)
session.WriteString("WT " & hold & "," & delay & "," & s_delay & vbLf)
session.WriteString("WM 2,1" & vbLf)
session.WriteString("ERR? 1" & vbLf) : err = session.ReadString(4 + 2) ’45
If err <> 0 Then session.WriteString("DZ" & vbLf) : GoTo Check_err
For j = 0 To nop2 - 1 ’48
session.WriteString("WV " & t(2) & ",1,0," & vc1 & "," & vc2 & "," & nop1 &
"," & iccomp & "," & pccomp & vbLf)
session.WriteString("PI " & t(1) & ",0," & i0 & "," & ib & "," & vbcomp &
vbLf)
session.WriteString("TSR" & vbLf)
session.WriteString("XE" & vbLf)
session.WriteString("*OPC?" & vbLf) : rep = session.ReadString(1 + 2)
session.WriteString("ERR? 1" & vbLf) : err = session.ReadString(4 + 2)
If err <> 0 Then session.WriteString("DZ" & vbLf) : GoTo Check_err
session.WriteString("NUB?" & vbLf) : rep = session.ReadString(3 + 2) ’56
If rep <> nop1 * 3 Then session.WriteString("DZ" & vbLf) : GoTo Check_nop
mret = session.ReadString(16 * 3 * nop1 + 1) ’59
For i = 0 To nop1 - 1
tm(i) = Val(Mid(mret, 4 + 16 * 3 * i, 12))
st(i) = Mid(mret, 17 + 16 * 3 * i, 3)
md(i) = Val(Mid(mret, 20 + 16 * 3 * i, 12))
sc(i) = Val(Mid(mret, 36 + 16 * 3 * i, 12))
data(j, i) = Chr(13) & Chr(10) & ib * 1000 & ", " & sc(i) & ", " & md(i) *
1000 & ", " & tm(i) & ", " & st(i)
Next i
ib = ib + d_ib
Next j ’68
Line Description
37 to 44 Applies voltage to device. And sets the pulse timing parameters, measurement mode,
channel measurement mode, measurement range, and sweep mode.
45 to 46 Checks if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
48 to 68 Sets the sweep source and the pulsed bias source, resets time stamp, and performs the
staircase sweep with pulsed bias measurement. And stores the returned data into the
mret string variable. Finally, stores the measured data into the data array.
56 to 57 Checks number of returned data. If it is not correct, forces 0 V and goes to Check_nop.
Comentarios a estos manuales