none
Byte 0xFF mit COM Schnittstelle empfangen RRS feed

  • Frage

  • Ich programmiere gelegentlich in Visual Basic Express 2013 und möchte eine serielle Schnittstelle (COM) so konfigurieren, dass sie das Byte 0xFF empfangen und weitergeben kann. Ich meine alles richtig gemacht zu haben, aber momentan scheint das MSB verloren zu gehen.

    Vielen Dank für jeden hilfreichen Hinweis.

    Mowast

    Sonntag, 19. Januar 2020 18:49

Antworten

  • Jetzt habe ich lange nachgedacht und mir ist aufgefallen, dass ich folgenden Befehl verwendet habe:

                        SerialPort.ReadLine           'reads an ASCII string ! MSB ignored.

    Dann hatte ich mich erinnert, dass ich hier schon einmal Probleme gehabt hatte.

    Dann habe ich

                        SerialPort.ReadByte

    verwendet und das Problem war behoben!

    Danke Stefan für's "Zuhören".

    Gruß - Walter

    • Als Antwort markiert mowast Dienstag, 21. Januar 2020 09:57
    Dienstag, 21. Januar 2020 09:57

Alle Antworten

  • Hi, was meinst du denn alles richtig gemacht zu haben?
    Ohne ein bisschen Code und was genau du machen möchtest wir dir hier kaum jemand weiterhelfen können.

    Und wenn du mit VB Express 2013 programmierst, könnte doch eventuell auch VS 2019 Community in Frage kommen. Ich würde mal die Lizenz-Bedingungen prüfen.

    Gruß
    Stefan

    Freiberufler im Bereich Softwareentwicklung Von der PLC und Robotik zu VB.NET & C#, vorrangig WPF und UWP

    Montag, 20. Januar 2020 10:13
  • Ja, hallo Stefan, danke für Deine Kommentare.

    Ich habe die Möglichkeit den empfangenem Daten-Stream mit dem eines anderen Programms zu vergleichen: Da ist z.B. an einer Stelle des Streams im anderen Programm 0xFF angezeigt, wobei in meinem VB-Programm dann 0x3F steht. Auch an anderen Stellen sind Hinweise, dass mit dem MSB etwas nicht stimmt - möglicherweise auch mit (MSB - 1). Bytes, die weder MSB noch (MSB - 1), benötigen (also null sind), werden richtig dargestellt: Z.B. 0x1B oder 0x01.

    Danke für weitere Kommentare.

    Gruß - Walter

    Montag, 20. Januar 2020 11:58
  • Hallo Walter,

    ich denke, das es ohne eine genaue Beschreibung deines Aufbaus sehr schwer sein wird, dir brauchbare Tipps zu geben. 

    Ohne deinen Code und deinen Aufbau (mit wem kommuniziert dein Programm) zu kennen, kann ich nur sagen, das die Schnittstellenparamter auf beiden Seiten identisch sein müssen ... usw...

    Einen Tipp habe ich noch, den du prüfen könntest, Stichwort: Byte-Reihenfolge! Auch diese sollte von beiden gleich sein oder du musst es anpassen.

    Gruß


    Freiberufler im Bereich Softwareentwicklung Von der PLC und Robotik zu VB.NET & C#, vorrangig WPF und UWP

    Montag, 20. Januar 2020 17:10
  • Jetzt habe ich lange nachgedacht und mir ist aufgefallen, dass ich folgenden Befehl verwendet habe:

                        SerialPort.ReadLine           'reads an ASCII string ! MSB ignored.

    Dann hatte ich mich erinnert, dass ich hier schon einmal Probleme gehabt hatte.

    Dann habe ich

                        SerialPort.ReadByte

    verwendet und das Problem war behoben!

    Danke Stefan für's "Zuhören".

    Gruß - Walter

    • Als Antwort markiert mowast Dienstag, 21. Januar 2020 09:57
    Dienstag, 21. Januar 2020 09:57