Hallo,
ich möchte aus Excel heraus eine Kommunikation mit dem FT232R
herzustellen. Dafür benutze ich den D2xx Treiber von FTDI. Das Modul
D2XX_Module.bas habe ich mir von FTDI heruntergeladen und eingebunden.
Mit
FT_Open (ByVal intDeviceNumber As Integer, ByRef lngHandle As Long)
kann ich eine Verbindung zum Device herstellen und danach mit
FT_Write (ByVal lngHandle As Long, ByVal lpszBuffer As String, ByVal
lngBufferSize As Long, ByRef lngBytesWritten As Long)
Daten senden.
Probleme habe ich mit dem Empfang. Obwohl ich Bytes sende und auch den
Empfang durch die RX_LED bestätigt bekomme kann ich keine Daten
auslesen.
Zwar enthält nach dem Aufruf
FT_Read(FT_Handl, s, 6, byte_read)
byte_read den Wert 6 aber der String bleibt leer.
Jetzt habe ich mir die noch einmal die D2XX_Module.bas genauer
angeschaut:
Public Declare Function FT_Read Lib "FTD2XX.DLL" (ByVal lngHandle As
Long, ByVal lpszBuffer As String, ByVal lngBufferSize As Long, ByRef
lngBytesReturned As Long) As Long
lpszBuffer wird hier ByVal übergeben und nicht byRef. Ist das richtig
so? Wo wird denn dann mein String zurück gegeben?
Der Inhalt der Queue lässt sich auch nicht auslesen.
FT_GetQueueStatus (ByVal lngHandle As Long, ByRef lngRxBytes As
Long)
lngRxBytes hat nach jedem Aufruf den Wert 0.
Prinzipiell bekomme ich nach dem Aufruf jeder Funktion den Wert 0
zurück. Soweit ist also in Ordnung.
Weiß jemand Rat?
Außer das mich eine Kommunikation zwischen Excel und und FT auch interessieren würde... helfen kann ich nicht, aber das fertige Konstruct würde ich gerne mal sehen :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.