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

Serielle Schnittstelle dekodiert falsch? | Encoding ascii

 

dEliRio
Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 14.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2012, 17:13     Titel: Serielle Schnittstelle dekodiert falsch? | Encoding ascii
  Antworten mit Zitat      
Hallo zusammen,

beim Auslesen von Registerwerten eines FPGAs über einen FTDI Chip und die serielle com-Schnittstelle von Matlab habe ich folgende Problematik.

Ich öffne die Schnittstelle
Code:
s = serial('com9');
set(s, 'DataBits',  8);
set(s, 'Parity', 'None');
set(s, 'StopBits', 2);
set(s, 'BaudRate', 115200);
set(s, 'InputBufferSize',8192);
fopen(s);


und lasse mir mit einem Lesebefehl einen Dump aller Registerwerte zurückgeben


Code:
fprintf(s,'d'); % in diesem Fall d für dump Smile
text = fscanf(s);

und ich bekomme folgenden Ascii Salat

text:




Wenn ich das selbe mit einem Terminal Programm mache, beispielsweise Picoterm (oder auch hyperterminal)
dann sieht der Salat folgendermaßen aus:








Das sieht jetzt zunächst nicht allzu problematisch aus, ja gut Matlab verwendet irgendwelche ASCII Zeichen und bastelt daraus Steuerzeichen.

Das eigentliche Problem ist, ich möchte es gerne verstehen UND!!! ich habe beim beschreiben der Register das Problem das ich es nicht wirklich hinbekomme!


Kann sich irgendjemand vorstellen was hier passiert?
Beim Verwenden der fprintf und fscanf und fopen Befehle in Kombination mit der seriellen lässt sich leider das encoding nicht verstellen, daher kann ich da nicht rumprobieren Sad



VIELEN Dank schonmal

Beste Grüße

matlab.jpg
 Beschreibung:

Download
 Dateiname:  matlab.jpg
 Dateigröße:  688.28 KB
 Heruntergeladen:  1505 mal
picoterm.jpg
 Beschreibung:

Download
 Dateiname:  picoterm.jpg
 Dateigröße:  963.02 KB
 Heruntergeladen:  1487 mal
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 04.12.2012, 18:12     Titel: Re: Serielle Schnittstelle dekodiert falsch? | Encoding asci
  Antworten mit Zitat      
Hallo dEliRio,

Es ist merkwürdig, dass Du ASCII-Steuerzeichen aus dem FPGA ausliest. Sowohl Matlab als auch Dein Terminal-Programm lesen die Zeichen genau gleich ein. Nur das Matlab-Command-Window kann die ASCII-Steuerzeichen nicht in Farben umwandeln, da es (fast) ein reines Text-Terminal ist.

Darum verstehe ich nicht genau, was Du eigentlich erreichen möchtest und wo Du einen Fehler vermutest.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
dEliRio
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 14.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.12.2012, 19:54     Titel:
  Antworten mit Zitat      
Hmmm, vielen Dank für die schnelle Antwort!!

Die Interpretation macht absolut Sinn und vielleicht war die Herangehensweise meinerseits von hinten durch die Tür. Embarassed



Also mein tatsächliches Problem war die Schreib-Kommunikation mit dem Terminalprogramm auf dem FPGA.

Tatsächlich lag es im Nachhinein an der richtigen Terminierung meiner ASCII Zeichen.

Ich hatte mich zunächst einfach zu verbissen auf das Thema Kodierung der Zeichensätze geschmissen, als das ich an anderer Stelle gesucht hätte.

Danke für deinen Hinweis!!!



Für jeden der ab und an mit COM Ports und Matlab experimentiert kann ich diesen COM-Port Emulator ans Herz legen
http://www.heise.de/download/virtua.....-port-driver-1119450.html

Er erzeugt beliebig viele virtuelle COM-Ports und jeweils ein Null-Modem Kabel dazwischen.
Schreibt man auf die eine Schnittstelle und horcht mit einem Terminal Programm auf die andere Seite sieht man man auch mal live was die Gegenstelle so alles sieht!! Ein Traum Smile
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.