Kann ich auf den Interrupt der seriellen Schnittstelle reagieren ??



  • hallo,

    in meiner Anwendung muss ich ständig die serielle Schnittstelle auf evtl. ankommende Daten abfragen. Dafür habe ich die Abfrage in einen separaten thread ausgelagert (Polling im 0.5 sec Takt), der meinem Frame eine Meldung schickt, falls Input vorliegt.

    Meine Frage:
    Kann man nicht bei einem Interrupt vom OS benachrichtigt werden? Vielleicht gibt es dazu eine Funktion die ich nicht kenne..

    Wenn nicht, gibt es unter Win2000 eine Möglichkeit das eleganter zu lösen? Das Nachschauen nach Daten muss leider sehr oft erfolgen, was zu einer erheblichen Belastung des Systems führt.

    Bitte um Hilfe.. 😕



  • WeNormalerweise kehrt doch ReadFile erst zurück, wenn etwas eingelesen wurde - verstehe also das Problem nicht so ganz 🙄 Wie liest du denn die Daten ein?



  • hallo,

    ich benutze ctb.lib (communication toolbox) um auf die serielle Schnittstelle zuzugreifen (wg. portierbarkeit). Jetzt habe ich bemerkt, dass der Zugriff mit der ov-struktur asynchron gemacht wird.

    Sieht wohl so aus als müsste ich es doch selber mit ReadFile machen. Und dasselbe nochmal für linux schreiben..

    Trotzdem Danke



  • Wenn der Zugriff OVERLAPPED abläuft kannst du auch mit WaitForSingleObject (keine Ahnung, wie das bei deiner Bibliothek dann heißt) warten, bis der Aufruf zurückkehrt. Kann man mit CTB denn nich ohne OVERLAPPED auf die serielle Schnittstelle zugreifen?!


Anmelden zum Antworten