PicoScope 7 Software
Available on Windows, Mac and Linux
Code: Select all
Select Case Channel_Select.Text
Case "A"
channelTXT = "A"
Call ps2000_set_channel(ps2000_handle, 0, 1, dc, cboVoltageA.ListIndex + 1)
Code: Select all
If oneChannel = "A" Then
For i = 0 To 500
sA(i) = (values_a(i) / 32767) * (mv_a)
sT(i) = values_time(i) / 1000000
Next i
End If
Code: Select all
Private Sub arbgen()
Dim ok As Integer
ok = 1
offsetvoltage = Int(Val(Text2(0).Text) * 1000)
pktopk = Int(Val(Text2(1).Text) * 1000)
startdeltaphase = Val(Text2(2).Text)
stopdeltaphase = Val(Text2(3).Text)
deltaphaseincrement = Val(Text2(4).Text)
dwellcount = Val((Text2(5).Text))
arbitrarywavesize = 4096
ReDim arbitrarywaveform(arbitrarywavesize - 1) As String
Open "D:\Documents\Waveforms\ysquare11.csv" For Input As #2
Do While Not EOF(2)
Line Input #2, S
Loop
Close #2
arbitrarywaveform = Split(S, "/t")
Select Case arbstype.Text
Case "Up": sweeptype = 0
Case "Down": sweeptype = 1
Case "UpDown": sweeptype = 2
Case "Downup": sweeptype = 3
End Select
sweeps = Int(Val(Text2(6).Text))
If ps2000_handle Then
ok = ps2000_set_sig_gen_arbitrary(ps2000_handle, offsetvoltage, pktopk, startdeltaphase, stopdeltaphase, _
deltaphaseincrement, dwellcount, arbitrarywaveform, arbitrarywavesize, sweeptype, sweeps)
End If
End Sub
Code: Select all
Dim arbitraryWaveform(12) As Integer = {255,255,255,255,127,127,127,127,0,0,0,0}
Code: Select all
Private Sub arbgen()
Dim ok As Integer
Dim i As Integer
ok = 1
offsetvoltage = Int(Val(Text2(0).Text) * 1000)
pktopk = Int(Val(Text2(1).Text) * 1000)
startdeltaphase = Val(Text2(2).Text)
stopdeltaphase = Val(Text2(3).Text)
deltaphaseincrement = Val(Text2(4).Text)
dwellcount = Val((Text2(5).Text))
arbitrarywavesize = 500
ReDim arbitraryWaveform(1 To arbitrarywavesize) As Integer
Open "D:\Documents\Waveforms\ysquare11.csv" For Input As #2
Do While Not EOF(2)
For i = 1 To UBound(arbitraryWaveform)
Input #2, arbitraryWaveform(i)
Next i
Loop
Close #2
Select Case arbstype.Text
Case "Up": sweeptype = 0
Case "Down": sweeptype = 1
Case "UpDown": sweeptype = 2
Case "Downup": sweeptype = 3
End Select
arbstype.ListIndex = 1
sweeps = Int(Val(Text2(6).Text))
If ps2000_handle Then
ok = ps2000_set_sig_gen_arbitrary(ps2000_handle, offsetvoltage, pktopk, startdeltaphase, stopdeltaphase, _
deltaphaseincrement, dwellcount, arbitraryWaveform, arbitrarywavesize, sweeptype, sweeps)
End If
End Sub
Code: Select all
ok = ps2000_set_sig_gen_arbitrary(ps2000_handle, offsetvoltage, pktopk, startdeltaphase, stopdeltaphase, _
deltaphaseincrement, dwellcount, arbitraryWaveform, arbitrarywavesize, sweeptype, sweeps)
Code: Select all
delta = ((frequency * waveformSize) / 4096) * 4294967296.0 * 20e-9;
ps2000_set_sig_gen_arbitrary(unitOpened.handle, 0, 2000000, (unsigned long)delta, (unsigned long)delta, 0, 0, arbitraryWaveform, waveformSize, PS2000_UP, 0);
Code: Select all
Private Sub arbgen()
Dim ok As Integer
Dim i As Integer
Dim delta As Long
Dim frequency As Integer
ok = 1
offsetvoltage = Int(Val(Text2(0).Text) * 1000)
pktopk = Int(Val(Text2(1).Text) * 1000)
arbitrarywavesize = 500
frequency = 150
ReDim arbitraryWaveform(1 To arbitrarywavesize) As Integer
delta = ((frequency * arbitrarywavesize) / 4096) * 4294967296# * 0.00000002
Open "D:\Documents\Waveforms\ysquare11.csv" For Input As #2
Do While Not EOF(2)
For i = 1 To UBound(arbitraryWaveform)
Input #2, arbitraryWaveform(i)
Next i
Loop
Close #2
Select Case arbstype.Text
Case "Up": sweeptype = 0
Case "Down": sweeptype = 1
Case "UpDown": sweeptype = 2
Case "Downup": sweeptype = 3
End Select
arbstype.ListIndex = 1
If ps2000_handle Then
ok = ps2000_set_sig_gen_arbitrary(ps2000_handle, offsetvoltage, pktopk, delta, delta, 0, 0, arbitraryWaveform, arbitrarywavesize, sweeptype, 0)
End If
End Sub
Code: Select all
Module Module1
Declare Function ps2000_open_unit Lib "ps2000.dll" () As Integer
Declare Function ps2000_close_unit Lib "ps2000.dll" (ByVal handle As Integer) As Integer
Declare Function ps2000_set_sig_gen_arbitrary Lib "ps2000.dll" (ByVal handle As Integer,
ByVal offsetVoltage As Integer,
ByVal pkTopk As Integer,
ByVal startDeltaPhase As Integer,
ByVal stopDeltaPhase As Integer,
ByVal deltaphaseincrement As Integer,
ByVal dwellcount As Integer,
ByRef arbitrarywaveform As Byte,
ByVal arbitrarywavesize As Integer,
ByVal sweeptype As Integer,
ByVal sweeps As Integer) As Integer
Dim ps2000_handle As Integer
Sub Main()
Dim ok As Integer
Dim delta As Integer
Dim frequency As Integer
Dim offset As Integer
Dim peak As Integer
Dim increment As Integer
Dim dwell As Integer
Dim sweepType As Integer
Dim sweeps As Integer
Dim arbitraryWaveform(12) As Byte
Dim arbitrarywavesize As Integer
arbitraryWaveform = {255, 255, 255, 255, 127, 127, 127, 127, 0, 0, 0, 0}
arbitrarywavesize = 12
frequency = 10000
offset = 0
peak = 800000
increment = 0
dwell = 0
sweepType = 0
sweeps = 0
delta = ((frequency * arbitrarywavesize) / 4096) * 4294967296.0# * 0.00000002
ok = 1
ps2000_handle = ps2000_open_unit()
If ps2000_handle Then
ok = ps2000_set_sig_gen_arbitrary(ps2000_handle, offset, peak, delta, delta, increment, dwell, arbitraryWaveform(0), arbitrarywavesize, sweepType, sweeps)
End If
ps2000_close_unit(ps2000_handle)
End Sub
End Module