Hallo, ich bin gerade dabei Daten an meinen µC zu senden. Der µC wertet die Daten aus und meldet einen Fehler wenn Daten verloren gegangen sind. An meinen µC habe ich einen FTDI Chip FT232BM angeschlossen. In meinem Programm am Rechner (VB6) kann ich mit der Funktion FT_Read die im Buffer stehenden Zeichen lesen. Funktioniert alles soweit einwandfrei. Jetzt habe ich aber das Problem, dass ich immer prüfen muss, ob Daten im Buffer stehen, also ständig in irgendeiner Art und Weise mein Programm unterbrechen muss um nach Daten im Buffer schauen. Gibt es die Möglichkeit, dass so eine Art MSComm1.CommEvent.comEvReceive im Hintergrund läuft und von alleine reagiert, sprich eine von mir erstellte Funktion aufruft, die die Daten aus dem Buffer liest? Danke schon mal Gruß Clemens
Hi Clemens, ich weiss nicht, ob die FTDI-Treiber das unterstützen, ich bin selbst erst dabei, mich einzuarbeiten. Aber als schneller Workaround wäre evtl. ein Timer in VB hilfreich. Jedesmal wenn das Timer-Event kommt, prüfst du in der Event-Routine den Buffer.Wäre das evtl. hilfreich? Ralf
An sowas habe ich auch schon gedacht, aber ist leider nicht so schön wie irgendein vom Treiber/µC ausgelöstes Event. Ich hab heute erst damit angefangen das Manual zu lesen. Mal schaun ob ich noch mehr rausfinde. Vielen Dank Gruß Clemens
du benutzt die FT2XX.DLL oder?!? ein event wie z.b. bei einem activex-element (mscomm) kann damit nicht realisiert werden. ich denke das eleganteste ist es, in einem anderen thread den puffer zu pollen und bei datenempfang die daten dem hauptthread bekannt zu machen. (so hab ich das zumindest in delphi mal realisiert)
Ein Lesethread im Hintergrund, der ein Event auslöst, wenn was da ist, wäre die Standard-Lösung.
Hallo nochmal, der VCP Treiber macht doch sicherlich nichts anderes, wie bei einem Dateneingang im Buffer ein Event auszulösen (bzw. eine Meldung an mein MSComm Modul und dies löst eine Event aus). Das heißt doch das genau mein Problem mit dem VCP Treiber gelöst wird. Ist es jetzt nicht möglich etwas in VB nachzuprogrammieren, was genau dies macht, ohne den VCP Treiber zu verwenden? Gruß Clemens
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.