Announcement

Collapse
No announcement yet.

SerialPort löst Event aus bevor DataReceived Threshold erreicht wird

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SerialPort löst Event aus bevor DataReceived Threshold erreicht wird

    Hallo Zusammen,

    ich arbeite an einem Projekt bei dem ich einen µC vom PC aus fernsteuere. Nun habe ich folgendes Problem welches zwar häufig auftritt jedoch finde ich keinen direkten Auslöser:

    Mit einem Portmonitor habe ich die serielle Schnittstelle über die PC und µC kommunizieren beobachtet. Nun kommt es vor, dass C++/Cli das DataReceived Event auslöst bevor die erwarteten 25 Bytes empfangen wurden. Beim nächsten Abfragen des Ports kommen die restlichen Bytes durch, verdrängen dadurch aber die nächste Antwort. Da die Kommunikation auf Frage & Antwort basiert kommt alles durch einander.

    Kann mir jemand etwas genaueres zu den WriteTimeout & ReadTimeout Eigenschaften der SerialPortKlasse sagen? Vielleicht ist das der Grund für die verstümmelte Kommunikation?

    Vielen Dank im Voraus für hoffentlich vielen Antworten


    SaWi81

  • #2
    Ich habe den Fehler noch weiter untersucht.

    Mit einem Oszi habe ich die Serielle Kommunikation nachvollzogen. Es werden definitiv alle Bytes übermittelt, im Empfangspuffer liegen aber nich alle vor.

    die Baudrate habe ich auch mal zwischen 38,4k und 9,6k variiert. Ohne Einfluss

    Ist das ein Problem von Windows?

    Wer kann mir Helfen?

    Danke im Voraus

    SaWi81

    Comment

    Working...
    X