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

Fread mit serieller Schnittstelle liest zu langsam

 

sebbe
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 22.03.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.06.2019, 18:25     Titel: Fread mit serieller Schnittstelle liest zu langsam
  Antworten mit Zitat      
Hallo zusammen,

Ich versuche einen Sensor über Matlab auszulesen. Das funktioniert auch, allerdings dauert es 2,3 Sekunden bis ich die Daten von dem Sensor erhalte.

Mein Code nur zum Erhalt der Sensordaten sieht so aus.

Code:

s = serial('COM6', 'DataBits', 8, 'Parity', 'none', 'StopBits', 1, 'BaudRate', 921600);

fopen(s);

tic
a = dec2hex(fread (s));
toc

fclose(s);


2,3 Sekunden kommen mir hierbei sehr lang vor. Die BaudRate zu verändern ändert nichts an der Zeit. Gibt es irgendwas mit dem ich die serielle Schnittstelle schneller auslesen kann? Oder konfiguriere ich die serielle Schnittstelle falsch?

Bin über jeden Hinweis dankbar!
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: 19.06.2019, 11:29     Titel: Re: Fread mit serieller Schnittstelle liest zu langsam
  Antworten mit Zitat      
Hallo sebbe,

Wie viele Daten werden denn gelesen?
Code:

s = serial('COM6', 'DataBits', 8, 'Parity', 'none', 'StopBits', 1, 'BaudRate', 921600);
fopen(s);

tic
data = fread(s);
size(data)
a = dec2hex(data);
toc
fclose(s);

Vielleicht werden viele Daten versendet, oder nur manchmal. Bist du sicher, dass die Kommunikation mit 921'600 Baud läuft? Das ist ungewöhnlich viel.

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

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 22.03.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.06.2019, 11:45     Titel:
  Antworten mit Zitat      
Hallo Jan,

danke für deine schnelle Antwort.

Es werden so viele Daten gelesen bis der Inputbuffer voll ist. Da der Default Wert ja bei 512 bytes liegt, werden so auch 512 Daten gelesen. Erhöhe ich den InputBuffer werden auch mehr Daten gelesen.
Der Sensor ist ein FMCW Radar, welches kontinuierlich die Daten sendet. Ich habe die BaudRate zum testen so hoch eingestellt, allerdings ändert auch eine andere Einstellung nichts an der Schnelligkeit.

Kann ich überprüfen ob Matlab tatsächlich die konfigurierte BaudRate benutzt?

Vielen Dank
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.