www.mikrocontroller.net

Forum: PC-Programmierung RS-232 mit Matlab


Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich versuche derzeit mit dem GUIDE von Matlab eine GUI zu erstellen, 
welche dann mit meinem Mikrocontroller über RS-232 kommuniziert.

Ich bin jetzt soweit, dass Daten empfangen werden und gesendet werden.
Nur verstehe ich eine Sache nicht bzw. hoffe das ich das so richtig 
verstanden habe.

Ich will von meinem PC aus über Matlab 2 Zeichen senden ('O','K')
dazu benutze ich die Funktion

fscanf(s,'O');
fscanf(s,'K');

Nach dem Senden, steht im Serial-Objekt, daß 4 Bytes gesendet wurden 
(?).

Jetzt habe ich folgenden Text gefunden:
fprintf(obj,'cmd') writes the string cmd to the device connected to obj. 
The default format is %s\n. The write operation is synchronous and 
blocks the command line until execution is complete.

Heisst das, es werden immer das Zeichen und '\n' gesendet ?
also:

1.Byte = 'O'
2.Byte = '\n'
3.Byte = 'K'
4.Byte = '\n'

Dann würde das nämlich auch passen, anders versteh ich, daß nicht.

Autor: GAST (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie kann man mit fscanf etwas senden?????

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sry ich meinte natürlich

fprintf(s,'O');
fprintf(s,'K');

mein Fehler.

Autor: Bobby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sieht ja nach C aus.
Ich schreib jetzt nur mal hin, wie es in C ist;
was MATLAB daraus macht weiß ich nicht.

Z.B.:
fprintf(s,'O');

gibt auf den Stream s die Zeichenkette 'O' aus.


Z.B.:
fprintf(s,'OK');

gibt auf den Stream s die Zeichenkette 'OK' aus.


Zusätzliche Zeichen werden in beiden Fällen nicht angehängt.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit dem fprintf befehl wird automatisch der zeilenversatz mitgeschickt!

anstatt fprintf kannst du es auch mal mit fwrite versuchen! da wird kein 
terminator (in diesem fall "/n") mitgeschickt!

Autor: Bobby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aha, also doch kein richtiges C.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.