www.mikrocontroller.net

Forum: PC-Programmierung Visual C++ Daten zyklisch abfragen


Autor: Sebastian Ulmer (sulmer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey,
ich programmier gerade eine Anwendung, die unter anderem Daten über USB 
Schnittstelle empfangen und in eine Liste eintragen soll.
Das ganze Läuft als MDI Projekt.
Nun brauch ich eine Möglichkeit, die zyklisch überprüft ob Daten 
vorhanden sind.
Jetzt gibts da ja verschiedene Möglichkeiten:
- Thread, der alle paar ms aufgerufen wird
- Windows Timer
- Multimedia Timer

Welche Möglichkeit würdet ihr empfehlen? Leider hab ich noch mit keiner 
der genannten Möglichkeiten Erfahrung.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich geh mal davon aus, dass deine USB Schnittstelle sich für
dich wie eine normale serielle Schnittstelle präsentiert.
D.h. Schreiben und lesen werden über File Handles abgewickelt.

In dem Fall wäre meine erste Wahl, eine Windows übliches
Event Modell ans Laufen zu kriegen, welches meinem Programm
eine Nachricht zustellt, sobald sich an der Schnittstelle
etwas tut.

Du kannst dir hier ja mal ansehen, wie sowas aussieht:
http://www.codeproject.com/KB/system/serial.aspx


PS: codeproject ist ein Muss für MFC Programmierer.

Autor: Sebastian Ulmer (sulmer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An die USB Schnittstelle wird ein FT232 angeschlossen. Der Treiber dafür 
stellt Read/Write Funktionen zur Verfügung.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian Ulmer wrote:
> An die USB Schnittstelle wird ein FT232 angeschlossen. Der Treiber dafür
> stellt Read/Write Funktionen zur Verfügung.

Na das passt ja dann perfekt.

Autor: Sebastian Ulmer (sulmer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider nutze ich den D2xx Treiber und nicht den VCP. Daher werden die 
WindowsMsg für die serielle Schnittstelle, soweit ich weiß, nicht 
ausgelöst. Dann muss ich doch mit einem Timer arbeiten.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.