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
Das verstehe ich jetzt nicht ganz. Soll dein Terminal die Daten empfangen oder senden?
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.
ja, der button ist bei den mir bekannten terminals enthalten und heisst: StartLog / Stop Log (Br@y++) SaveOutput (Hterm) ...
Vielleicht sollte der TO noch einmal neu anfangen, mit einer klar formulierten Frage. Offensichtlich ist der Interpretations-Spielraum zu groß.
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.
"richtige Terminalprogramme" = Terminal Emulatoren hterm müsste man wohl eher "serieller Monitor" nennen.
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
Stefan U. schrieb: > hterm müsste man wohl eher "serieller Monitor" nennen. Danke. Endlich jemand, der es versteht ...
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
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.
> 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?
Ist der "serielle Monitor" nötig, weil zwischendrin noch manuell interagiert wird?
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.