Forum: Mikrocontroller und Digitale Elektronik FT232 von Excel aus kommunizieren


von Ralf (Gast)


Lesenswert?

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?

von Sirko P. (poehli)


Lesenswert?

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
Noch kein Account? Hier anmelden.