none
Serial Port Parser in Visual Studio C# RRS feed

  • Frage

  • Hallo zusammen,

    ich will mit Visual Studio C# Daten von einem Mikrocontroller einlesen. Es handelt sich um 10 x 200 Bytes pro Sekunde, welche ich mit einer Baudrate von 460800 verschicke. Soweit so gut, Daten einlesen und in einen Puffer schreiben funktioniert. Nur wie lese ich die Daten aus dem Puffer möglichst schnell und Effizient aus? Es kann sich hierbei nicht nur um Messdaten handeln, sondern um allerlei andere Daten zur Steuerung des Mikrocontrollers. Daher muss ich alle empfangenen Daten auswerten und das natürlich möglichst Effizient, um diese danach auch grafisch zu visualisieren.

    Gibt es hier Ideen, wie man ein solches Problem am sinnvollsten umsetzen kann?

    Viele Grüße und ein Dankeschön für jedes Kommentar,

    Michi

    Freitag, 7. Februar 2020 09:03

Antworten

  • Hi Michi,
    um keine Daten zu verlieren und um die Anwendung nicht zu blockieren, solltest Du die Anwendung in einzelne Prozesse zu zerlegen. Jeder dieser relativ unabhängigen Prozesse kann dann in einem eigenen Thread laufen. Hauptproblem dabei ist der thread-übergreifende Zugriff. Diesem Thema ist besondere Aufmerksamkeit zu widmen, da es bei unsachgemäßer Implementierung zu gegenseitiger Blockierung oder auch zu schwer auffindbaren Fehlern kommen kann.

    --
    Best Regards / Viele Grüße
    Peter Fleischer (former MVP for Developer Technologies)
    Homepage, Tipps, Tricks

    Freitag, 7. Februar 2020 10:11