|
|
tcp_write in Octave aus Funtion aufrufen |
|
Axel_S |
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 07.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.01.2018, 11:18
Titel: tcp_write in Octave aus Funtion aufrufen
|
|
Hallo,
ich habe noch eine Frage zu Octave. Ich möchte Zeilen aus einer Datei auslesen und per tcp_write an ein Gerät schicken.
Wenn ich das mit F9 nacheinander mache, funktionert alles super. Wenn ich den tcp_write aber in eine Funktion einbinde, gibt er mit folgenden Fehler:
Zitat: |
error: Invalid call to tcp_write. Correct usage is:
-- Loadable Function: N = tcp_write (TCP, DATA)
error: called from
print_usage at line 91 column 5
send_script at line 21 column 11
Script_aus_Octave_schicken at line 29 column 1
|
Mein Minimalbeipsiel sieht folgendermaßen aus:
Kann mir dabei einer helfen?
Danke und Gruß,
Axel
|
|
|
|
|
Axel_S |
Themenstarter
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 07.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.01.2018, 11:21
Titel:
|
|
vielleicht noch ein Nachsatz zur Verdeutlichung. Mit handisch ausführen meine ich, dass ich
in der Console setzt, das Gerät initialisiere und dann den Code zwishen fid1 = ... und fclose(fid1) per F9 ausführe. Aber halt eben nicht über den Funktionsaufruf...
|
|
|
Axel_S |
Themenstarter
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 07.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.01.2018, 11:49
Titel: Sorry...
|
|
Es tut mir leid. Ich bin etwas doof...
ein
vor der Initialisierung löst das Problem.
|
|
|
AndyydnA |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.01.2018, 14:30
Titel:
|
|
Du solltest besser keine globalen Variablen verwenden. Gib es einen Grund, dass du deiner send_script Funktion nicht auch das handle mitgibst? Also klassisch
|
|
|
Axel_S |
Themenstarter
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 07.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.01.2018, 22:20
Titel: Nachtrag
|
|
Hallo,
ja es gibt einen Grund. Ich habe dieses Beispiel als Minimalbeispiel auf einem GUI Code von mir herausgezogen (und dabei auch entsprechende Deklaration vergessen). Dazu hatte ich kürzlich auch schon eine Frage --> siehe http://www.gomatlab.de/srl-write-in.....-in-octavegui-t45281.html.
Die Funktionen die dort ganz unten über die Buttons aufgerufen werden ('callback', @functionName), haben nicht so richtig funktioniert, wenn man noch zusätzliche Dinge mit übergeben wollte. Daher habe ich mich erstmal für die quick and (very) dirty methode entschlossen, da das Projekt zeitlich auch etwas knapp ist.
Für Anregungen, wie man dieses besser machen kann, bin ich natürlich immer offen.
Liebe Grüße,
Axel
|
|
|
AndyydnA |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.01.2018, 22:49
Titel:
|
|
Ah, sowas packt man normalerweise bei GUI Sachen in userdata oder guidata. Da die callbacks ein handle auf die figure haben, kommt man darüber dann easy an userdata ran.
Happy hacking, Gruß Andy
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|