Forum: PC Hard- und Software Terminal - Dateien abspeichern


von Thomas T. (runout)


Lesenswert?

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

: Verschoben durch User
von Rolf M. (rmagnus)


Lesenswert?

Das verstehe ich jetzt nicht ganz. Soll dein Terminal die Daten 
empfangen oder senden?

von Stefan F. (Gast)


Lesenswert?

Das heißt "Datenlogger". 
https://de.aliexpress.com/item/Free-Shipping-New-Mini-Logging-Recorder-Data-Logger-Module-Shield-V1-0-for-Arduino-SD-Card/32346411331.html

Ich glaube, dieses Ding musst du selbst (mit Arduino) programmieren.

So etwas gibt es aber auch als Fertig-Produkt.

von dummschwaetzer (Gast)


Lesenswert?

ja, der button ist bei den mir bekannten terminals enthalten und heisst:
StartLog / Stop Log (Br@y++)
SaveOutput (Hterm)
...

von Stefan F. (Gast)


Lesenswert?

Vielleicht sollte der TO noch einmal neu anfangen, mit einer klar 
formulierten Frage. Offensichtlich ist der Interpretations-Spielraum zu 
groß.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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.

von Stefan F. (Gast)


Lesenswert?

"richtige Terminalprogramme" = Terminal Emulatoren

hterm müsste man wohl eher "serieller Monitor" nennen.

von Patrick C. (pcrom)


Lesenswert?

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

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Stefan U. schrieb:
> hterm müsste man wohl eher "serieller Monitor" nennen.

Danke. Endlich jemand, der es versteht ...

von Thomas T. (runout)


Lesenswert?

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

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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.

von Stefan F. (Gast)


Lesenswert?

> 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?

von Tom (Gast)


Lesenswert?

Ist der "serielle Monitor" nötig, weil zwischendrin noch manuell 
interagiert wird?

von Thomas T. (runout)


Lesenswert?

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

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

http://pauillac.inria.fr/~doligez/zmodem/

... dürfte vielleicht weiterhelfen.

Viel Erfolg!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.