-> Hier kostenlos registrieren
Hallo,
wieder mal gibt es ein Problem mit LibNoDave. Ich will aus VB2005 heraus 100 Integerwerte in den DB1 der S7-CPU schreiben. Im DB1 habe ich eine Array von 100 Integerwerten angelegt.
Der nachfolgende Code schreibt auch 100 Werte in den DB1, aber nicht 0, 2, 4, 6, usw. wie gefordert, sondern 0, 512, 1024, 1536, usw.
Ich vermute, die VB-Short-Werte müssen noch Byteweise gedreht werden mit "libnodave.daveSwapIed_16(i)"
bevor sie in den DB1 geschrieben werden können.
Meine diesbezüglichen Versuche sind allerdings immer gescheitert.
Frohe Weihnachten
Earny
wieder mal gibt es ein Problem mit LibNoDave. Ich will aus VB2005 heraus 100 Integerwerte in den DB1 der S7-CPU schreiben. Im DB1 habe ich eine Array von 100 Integerwerten angelegt.
Der nachfolgende Code schreibt auch 100 Werte in den DB1, aber nicht 0, 2, 4, 6, usw. wie gefordert, sondern 0, 512, 1024, 1536, usw.
Ich vermute, die VB-Short-Werte müssen noch Byteweise gedreht werden mit "libnodave.daveSwapIed_16(i)"
bevor sie in den DB1 geschrieben werden können.
Meine diesbezüglichen Versuche sind allerdings immer gescheitert.
Private Sub btnWerteInDB1Schreiben_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnWerteInDB1Schreiben.Click
Dim buf(198) As Byte, i As Short
If fds.rfd > 0 Then
For i = 0 To 198 Step 2
buf(i) = i
'BitConverter.GetBytes(libnodave.daveSwapIed_16(buf))
Next
res = dc.writeBytes(libnodave.daveDB, 1, 0, 200, buf)
End If
End Sub
Frohe Weihnachten
Earny