Announcement

Collapse
No announcement yet.

Daten von COM1 werden fehlerhaft in RichEdit geschrieben

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

  • Daten von COM1 werden fehlerhaft in RichEdit geschrieben

    hallo,
    zu meiner ausbildung als physiklaborant gehört auch das programmieren.
    ich versuche nun daten, die von einem modemtester gesendet werden über
    COM1 in ein RichEdit feld einzufügen. das ganze klappt eigentlich, mit einer ausnahme:
    der modemtester sendet folgendes (mit hyperterminal gelesen):

    'the quick brown fox jumps over the lazy dog 123456789'

    ich bekomme im RichEdit jedoch folgendes zu sehen:

    'TÈE QÕICË ÂROWÎ FOX JÕÍÐÓ OÖER TÈE LÁÚÙ ÄOÇ 12³4µ¶78¹°ŠŠ'

    woran kann das liegen? an der schriftart nicht, das hab ich schon
    gecheckt. alle einstellungen wie stopbits, baudrate etc.. stimmen auch!

    würde mich sehr über einen tip freuen!

    thanx im voraus
    dAn

  • #2
    Hallo Herr Buchmann<br><br>Ich habe ein Terminalprogramm programmiert, mit dem Sie alle Daten zur Anzeige<br>bringen können, wie Sie wünschen. Laden Sie das Programm von meiner HP:<br>
    www.mmvisual.de > Freeware/BinTerm > Projekt BinTerm<br>
    (Das Programm ist sogar Freeware!!!)<br>
    Stellen Sie bei Schnittstelle die 1. Abfrageart ein.<br><br>Gruss M.Mülle

    Comment


    • #3
      hallo herr müller,
      besten dank für ihre hilfe, nice homepage!
      aber ich sollte das programm eben selber
      schreiben um auch noch was zu lernen.

      könnte es nicht auch am zeichensatz liegen ?
      bin eben leider immer noch nicht weitergekommen..

      währe froh um hilfe

      gruss d|buchman

      Comment


      • #4
        Hallo Herr Buchmann,<br>
        <br>
        ich verwende im RichEdit- Control im Abschnitt Font den CharSet "ANSI_CHARSET"<br>
        und als Name "Courier New"<br><br>
        Bei meiner Entwicklung hatte ich auch ähnliche Probleme.<br> Siehe: "Datenverlust bei lesen serieller Daten" leider erhalte ich von niemandem eine Antwort.<br><br>Doch ein Tipp habe ich für Sie:<br> Erstellen Sie eine Textdatei. Geben Sie folgenden Konsole-Befehl ein:<br>COPY TEXTDATEI.TXT COM1<br><br>somit wird diese Datei "Blind" auf die Schnittstelle ausgegeben. Mit Ihrem Programm können Sie die Daten empfangen und anzeigen.<br><br>Klappt dies, können Sie gleiche mit dem HyperTerm probieren:<br>
        Datei als Textdatei senden. (Das Hyperterm löscht jedoch die LF oder die CR- Zeichen weg)<br><br>Noch ein Tipp:<br>Wenn Sie die Zeichen Empfangen, müssen Sie als einzelne Bytes behandelt werden.<br>Empfangen Sie alle Zeichen in einem PByteArray- Buffer.<br>Für den Empfang muss die Schnittstelle mit dem TOVERLAPP geöffnet werden.<br>Genauso wie dieWaitComEvent und ReadFile- Prozeduren<br>Alle Informationen stehen detailiert in der WIN32.HLP- Datei.<br><br>Gruss Markus Mülle

        Comment


        • #5
          hallo herr müller,
          hab rausgefunden, dass die fehlerhaften zeichen in der
          ansi-tabelle um jeweils 128 zeichen verschoben waren.
          hab dann die falschen zeichen abgefangen und mit shl,
          resp. shr bitweise verschoben.
          in der zwischenzeit hab ich einige programme mit der
          seriellen schnittstelle gefertigt (chat-programme etc..)
          und immer die freeware-komponente varian async32 (sehr
          zu empfehlen!!) verwendet, mit welcher nie probleme
          aufgetreten sind.

          werde ihre tipps noch auschecken, besten dank!

          mfg d.buchman

          Comment

          Working...
          X