- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 11

Thema: rs232 telegramm auswerten mit gepufferten Empfang

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    25.03.2006
    Ort
    Hinsdorf
    Alter
    49
    Beiträge
    381

    rs232 telegramm auswerten mit gepufferten Empfang

    Guten Morgen,

    ich empfange über UART folgendes Telegramm:
    HEX 0D 0A 4F 4B 0D 0A
    Ascii CR LF OK CR LF

    dies wird auch in den entsprechenden Puffer geschrieben. Nur leider zerbreche ich mir seit geraumer Zeit wie ich das Ende dieser Übertragung erkennen kann. Da ja am Anfang und am Ende der Übertragung ein CR LF steht kann ich über Serial0CharMatch oder Serial0ByteReceived nicht genau darauf filtern. Auch ist der Inhalt der Message immer unterschiedlich lang.
    Wie würdet Ihr daran gehen, um das Ende nach dem (siehe oben) OK zu ermiteln?

    Grüße MAT

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Lass doch das Char-Match auf &H0A prüfen, und schau dir dann an, ob es das erste oder das zweite CR_LF war.
    Alternativ würde ich das Erkennen über den URXC Interrupt selber durchführen. Da bist du flexibler und vermeidest diese verborgene Funktionalität des Char-Matchens.

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    25.03.2006
    Ort
    Hinsdorf
    Alter
    49
    Beiträge
    381
    Hallo for_ro,

    ok, in der Char-Match Sub könnte ich natürlich das &H0A prüfen..... warum eigentlich nicht! Werde ich gleich mal testen.
    Noch eins,

    ich sende ein Komando:
    Print #1 , "ATE" (=> darauf antwortet das Modem mit:CR LF OK CR LF) :At_ok = 10
    Call Gsm_ok(at_ok)
    und schicke derzeit die Anzahl der zu empfangenen Zeichen an die Sub:
    Sub Gsm_ok(byval Rxlen As Byte) in der ich überprüfen will, ob das Modem auf den Befehl richtig antwortet.

    Nur wie kann ich nun den zu erwartenden Text (ascii => CR LF OK CR LF) nach At_ok in Bascom schreiben.
    At_ok & rxlen sind als String deklariert.

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Hallo Mat,
    sorry, aber die Erklärung verstehe ich nicht. Kannst du das vielleicht noch mal anders beschreiben?

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    25.03.2006
    Ort
    Hinsdorf
    Alter
    49
    Beiträge
    381
    Moin for-ro,

    mein Hauptproblem an der Sache ist, wie ich den String im Programm schreiben kann, der in ascii so aussieht: CR LF OK CR LF (CR LF OK CR LF=> diesen sendet mir mein GSM Modem nach erfolgreicher Bearbeitung eines Befehls).
    Ist dies in Bascom so richtig: "{013}{010}Ok{013}{010} "?

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Zitat Zitat von mat-sche Beitrag anzeigen
    Moin for-ro,

    mein Hauptproblem an der Sache ist, wie ich den String im Programm schreiben kann, der in ascii so aussieht: CR LF OK CR LF (CR LF OK CR LF=> diesen sendet mir mein GSM Modem nach erfolgreicher Bearbeitung eines Befehls).
    Ist dies in Bascom so richtig: "{013}{010}Ok{013}{010} "?
    Wenn du das Leerzeichen am Ende noch weglässt ist das eine Möglichkeit, wie du diese Ausgabe in Bascom erreichen kannst.

Ähnliche Themen

  1. Funkwetterstation Telegramm auswerten
    Von paul88 im Forum Sensoren / Sensorik
    Antworten: 16
    Letzter Beitrag: 01.07.2013, 19:40
  2. Problem mit RS232-Empfang
    Von Tido im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 6
    Letzter Beitrag: 24.10.2011, 21:06
  3. Probleme mit RS232 und dem Empfang
    Von BlaueLed im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 15
    Letzter Beitrag: 14.01.2010, 19:35
  4. RS232 Telegramm????
    Von kalletronic im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 26.01.2009, 19:38
  5. RS232 Empfang UND Versand auf einem Port?
    Von RHS im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 22.01.2007, 18:02

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen