WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Serial Receive - Header - Syntax?

 

Droidxy
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 11.12.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.12.2013, 16:14     Titel: Serial Receive - Header - Syntax?
  Antworten mit Zitat      
Hallo!

folgendes Problem:

ich lese über den Serial Receive Block einen Datenstream aus.
Jeder Frame hat 56byte, davon sind die ersten beiden Byte der
Header (255 2), Enden tut das ganze immer mit einem Byte (3). Auf dem Anhgehängten Bild kann man die Ausgelesenen Daten und die Eingestellten Parameter sehen.

Wenn ich Beispielsweise 255 für den Header eintrage bekomme ich nur Nullen ausgelesen. Weiß jemand wie man den Block richtig Konfiguriert?

Danke!

Simulink.png
 Beschreibung:

Download
 Dateiname:  Simulink.png
 Dateigröße:  109.25 KB
 Heruntergeladen:  726 mal
Private Nachricht senden Benutzer-Profile anzeigen


knilumis_baltaM
Forum-Century

Forum-Century


Beiträge: 241
Anmeldedatum: 20.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2013, 08:50     Titel:
  Antworten mit Zitat      
Musst du nicht bei Header das ASCII Zeichen eintragen? Also zum Beispiel 'S' (für Start) und er würde dann schauen wann die Zahl 83 auftaucht und das als Datenbeginn sehen. Da du 255 hast müsstest du ÿ eintragen (laut ascii Tabelle). Ich hab die Blöcke noch nie verwendet deshalb kann ich es auch nicht sicher sagen. Die Hilfe zum Block bringt nichts?
Private Nachricht senden Benutzer-Profile anzeigen
 
Droidxy
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 11.12.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2013, 14:46     Titel:
  Antworten mit Zitat      
Ich werde das probieren, glaube aber nicht das dies die Lösung ist, der "Standard" ASCII geht ja nur bis 127....
Allerdings hat man unter Terminator eine Auswahlmöglichkeit im Stil: LF('\n')

Was sich hiermit deckt:
http://de.wikipedia.org/wiki/Steuerzeichen

Allerdings gibt es für STX und ETX keine C darstellung...(STX ist das 2. Byte in meinem Fall).
Private Nachricht senden Benutzer-Profile anzeigen
 
knilumis_baltaM
Forum-Century

Forum-Century


Beiträge: 241
Anmeldedatum: 20.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.12.2013, 12:52     Titel:
  Antworten mit Zitat      
Du hast uint8 Datentyp eingestellt. Wenn ich in der Matlab Konsole
Code:

eintippe dann erhalte ich 255. Ich denke alles was du bei Header eintippst wird auf diese weise umgewandelt.
Private Nachricht senden Benutzer-Profile anzeigen
 
Droidxy
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 11.12.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.12.2013, 14:59     Titel:
  Antworten mit Zitat      
Ok, du hast recht, das mit dem ÿ funktioniert. Danke schonmal!


Ich würde aber auch gerne die 2 (STX) mit zum header nehmen.
Bin allerdings ratlos welches Ascii zeichen matlab dafür verwendet (uint8('STX') kennt es nicht, bzw. liefert keine 2 als ergebnis)

Ein idee?
Private Nachricht senden Benutzer-Profile anzeigen
 
knilumis_baltaM
Forum-Century

Forum-Century


Beiträge: 241
Anmeldedatum: 20.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.12.2013, 08:44     Titel:
  Antworten mit Zitat      
Da es ein Steuerzeichen ist und zu den nicht darstellbaren Zeichen gehört, würde ich hier einfach was anderes nehmen. Es kann ja sein, dass Matlab die Zeichen gar nicht unterstützt. Du gibst hier ja etwas in eine Maske ein, was Matlab/Simulink damit dann macht wissen wir ja nicht.

Hast du es mal in der Caret-Notation ^B versucht?
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.