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

Verfügbare serielle (R232) Schnittstellen auslesen

 

Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 17.03.2011, 17:43     Titel: Verfügbare serielle (R232) Schnittstellen auslesen
  Antworten mit Zitat      
Guten Abend,
weiß jemand wie man die verfügbare serielle (R232) Schnittstellen auslesen kann?
Wollte in meiner GUI ein Auswahl-Box mit diesen Werten schreiben.

Lieben Gruß
Peter
Private Nachricht senden Benutzer-Profile anzeigen


pfeili
Forum-Century

Forum-Century


Beiträge: 177
Anmeldedatum: 27.08.08
Wohnort: ---
Version: R2019b
     Beitrag Verfasst am: 17.03.2011, 21:08     Titel:
  Antworten mit Zitat      
Hallo Peter,

zur seriellen Schnittstelle gibt es schon viele Beiträge im Forum. Mindestens folgende Eigenschaften sind (mithilfe des Schnittstellenprotokolls deines Geräts angepasst) zu deklarieren:

Code:

s = serial('com1');
set(s, 'DataBits', 8);
set(s, 'Parity', 'None');
set(s, 'StopBits', 1);
set(s, 'BaudRate', 9600);
fopen(s);

...

fclose(s);
delete(s);
 


Zum Senden bzw. Auslesen schau dir die Funktionen "fprintf" und "fscanf" an. Um was für ein Gerät handelt es sich denn überhaupt?

Beste Grüße

pfeili
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter Quint
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 17.03.2011, 22:41     Titel:
  Antworten mit Zitat      
Hallo pfeili,
etschuldige, ich habe mich falsch ausgedrückt. Wie man die Eigenschaften der Schnittstelle setzen bzw. auslesen kann, ist mir klar.

Welchen Befehl ich leider noch nicht ergooglen konnte ist der,
welcher mir sagt:

"GetSchnittstellen()"
ans = 'COM1', 'COM2,....

Zu Not kann ich das mit try-catch oder ähnlichem machen, aber ich kann mir sehr gut vorstellen, dass es dafür ein Befehl gibt.

Mein Problem ist, dass ich einen R232-USB Adapter habe. Leider bekommt dieser nach jedem Neustart oder umstöpseln des Kabels einen neuen COM-Port. In meiner GUI würde ich daher gerne alle vorhandenen Ports sehen.
Private Nachricht senden Benutzer-Profile anzeigen
 
pfeili
Forum-Century

Forum-Century


Beiträge: 177
Anmeldedatum: 27.08.08
Wohnort: ---
Version: R2019b
     Beitrag Verfasst am: 17.03.2011, 22:55     Titel:
  Antworten mit Zitat      
Meinst du vielleicht so etwas:

Code:

instrfindall
 


?

Beste Grüße

pfeili
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter Quint
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 18.03.2011, 09:54     Titel:
  Antworten mit Zitat      
@pfeili: Danke für Deine Hilfe Smile


Leider bringt dies auch nicht den gewünschten Effekt:
Code:

s1=serial('geht nicht');
s2=serial('COM7'); %ist vorhanden
instrfind

Instrument Object Array

   Index:    Type:     Status:   Name:  

   1         serial    closed    Serial-GEHT NICHT
   2         serial    closed    Serial-COM7

fopen(s1)
??? Error using ==> serial.fopen at 72
Port: GEHT NICHT is not available. Available ports: COM1, COM2.
Use INSTRFIND to determine if other instrument objects are connected to the requested device.
 


Leider bringt dies nicht den benötigten Erfolg.

ABER ich würde diesen Thread nicht schließen, wenn ich keine Lösung gefunden hätte Wink:
http://www.mathworks.com/matlabcent.....51-get-available-com-port

Dabei wird einfach ein Port erzeugt den es nicht geben kann (wie im obrigen Beispiel s1) und die Fehlermeldung gespeichert. Da in dieser die vorhanden COM-Port stehen, können sie aus der Fehlermeldung (ist ja der String) ausgelesen werden.
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 - 2025 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.