Terminal - Dateien abspeichern

OP #5343201
Hallo Gemeinde,

ich möchte "billig" und doch komfortabel Messdaten
über eine UART-Verbindung als CSV-Datei abspeichern. (ca. 2KB)

hier habe ich schon geschaut:
https://www.mikrocontroller.net/articles/RS-232#Terminalprogramme

Man kann ja alles vom Terminal in eine Datei loggen.
Gibt es so eine Lösung bei der mit (z.B.) einem Button
sowas wie ein Skript ausgeführt wird?

Z.B.
Kommando <Send Messdaten>
FileOpen()
(Messdaten werden gesendet)
FileClose()

Das würde für meine Zwecke völlig ausreichen.

Viele Grüße
Runout
Persönliche Seite #5343489
Teraterm kann mit einer Skriptsprache automatisiert werden, vielleicht 
hilft das ja.

Ansonsten unterstützen richtige Terminalprogramme* auch 
Dateiübertragungsprotokolle wie Kermit, X-, Y- oder ZModem.

Letzteres erlaubt das vom Host (in diesem Falle ist das Dein µC) 
gesteuerte Übertragen von Dateien inklusive eines Dateinamens. Es sind 
keine weiteren Eingriffe durch den Benutzer erforderlich.



*) Also nicht "bray", "hterm" oder ähnliches, die verstehen ja noch 
nicht mal eine Terminalemulation à la VT100.
#5343519
Ich benutze TeraTerm und meinen microcontroller (ATMEGA2560+FTDI+SDcard) 
sended bestanden hin und her via ZMODEM. XMODEM und YMODEM funktioniert 
auch, ist einfacher zu programmieren aber ist mehr handmaessig (zB keine 
bestandsnameanzeige, kein autostart, nur bestandsgroessen von n*128 
bytes wenn ich mich gut erinnere).

Andere option ist natuerlich sich selber der PC terminal program zu 
schreiben


Patrick
OP #5343542
Sorry für die unverständliche Formulierung.

Ich möchte aus einem µC über UART Daten auslesen
und mit einem "serieller Monitor" als CSV-Datei
auf dem PC abspeichern abspeichern.

Richtige Terminalemulationen können das m.E.

Grüße
Runout
Persönliche Seite #5343562
Nun, mit etwas mehr Aufwand auf der Seite Deines µC, nämlich der 
Implementierung des Z-MODEM-Protokolls, könntest Du das Erzeugen der 
Dateien im Terminalprogramm vollautomatisch ablaufen lassen. Dann 
brauchst Du auf dem PC keine Spezialsoftware, keine Anpassungen, keine 
Programmierung, sondern nur ein Terminalprogramm.

Den Rest steuert Dein µC.

Das war der Hintergrund, dieses Protokoll zu erwähnen.
Gast #5343572
> Ich möchte aus einem µC über UART Daten auslesen
> und mit einem "serieller Monitor" als CSV-Datei
> auf dem PC abspeichern abspeichern.

Serielle Monitor Programme interpretieren die Daten nicht. Wenn du also 
im CSV Format speichern willst, musst du schon auf dem µC CSV erzeugen.

Das kannst du dann mit irgendeinem Terminal Programm empfangen und in 
eine Datei schreiben. Unter Linux reicht dazu sogar ein simpler copy 
Befehl.

Aber: Woran soll der PC erkennen, dass er alle Daten empfangen hat? 
Willst du manuell auf einen Stop-Knopf drücken müssen?
OP #5343604
Hallo Tom,

ja, es gibt noch einige Get- und Set-Befehle,
also Stati anschauen, Parameter setzen usw.
Es geht quasi um die Entscheidung "mit oder ohne 
Windows-Programmentwicklung".

Ich muss mal nach Embedded-Quellcode für ZMODEM suchen.
Das Target wäre ein STM32. (was aber eher unerheblich sein sollte)

Grüße
Runout

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 8 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.