Forum: Mikrocontroller und Digitale Elektronik RS232/USB-Daten in TXT oder CSV-Datei speichern


von Bernd R. (berndrix)


Lesenswert?

Hallo an alle,
ich habe folgendes Problem:
Mit einem ATmega 8 möchte ich einen Datenlogger realisieren. 
Funktioniert soweit auch, nur möchte ich die EEProm-Daten über RS232/USB 
über ein
Terminalprogram speichern und in EXCEL auswerten und darstellen.
Alle bisher gefundenen Programme empfangen die Daten, können diese aber
nicht speichern. Zuletzt probiert mit Docklight.
Kennt jemand ein einfaches Programm, mit dem man die Daten nicht nur 
lesen,
sondern auch zur späteren Auswerung speichern kann?
Ich wäre echt froh, wenn jemand einen guten Tipp hat.

von Rico (Gast)


Lesenswert?

mit HTerm kannst du abspeichern, aber nur in ein txt...

von Tubie (Gast)


Lesenswert?

Hallo,


Terra Term oder Hyper Terminal unterstützen den Datenaustausch via X,Y 
oder Z Modem.  X bzw. Y Modem lässt sich sogar auf einem Mega 8 recht 
einfach realisieren.


Grüße,
Tubie

von Wilhelm F. (Gast)


Lesenswert?

Über HyperTerminal kann man Daten sofort in einem Textfile aufzeichnen. 
Man muß nur darauf achten, daß sie vom µC aus etwas formatiert sind. 
Z.B. Zeilenlänge mit Zeilenumbruch.

Mit TeraTerm habe ich es noch nicht versucht. Jedenfalls kann man aber 
Daten später aus dem Textfile in Excel einfügen. Ich weiß nur nicht, ob 
das mit mehrspaltigen Textdateien da auch reibungslos funktioniert. 
Notfalls braucht man einen Editor, der Spalten markieren und kopieren 
kann.

von hans (Gast)


Lesenswert?

Du kannst die Daten mit VBA doch direkt von EXCEL
einlesen lassen. Haben Tausende schon gemacht ;)

hans

von Michel (Gast)


Lesenswert?

Wilhelm Ferkes schrieb:
> Ich weiß nur nicht, ob
> das mit mehrspaltigen Textdateien da auch reibungslos funktioniert.

Warum sollte das nicht funktionieren. Das Terminalprogramm empfängt 
genau das, was du ihm über den seriellen Port sendest. Wenn du ein 
Trennzeichen verwendest, mit dem Excel umgehen kann (z.B. <tab> = #09) 
funkioniert das bestens.

von Jens (Gast)


Lesenswert?


von Bernhard S. (b_spitzer)


Lesenswert?

Als Trennzeichen geht einfach auch ein Komma oder Semikolon. Die 
Textdatei (Hyperterminal: Textdatei empfangen) nennt man dann .csv und 
die wird problemlos von Calc und Excel importiert.
Wenn man jetzt noch die Rohdaten mit Excel-Formelelementen aufpeppt, 
muss man in der Kalkulation nix mehr machen. Für AD-Werte schicke ich 
z.B. eine Laufende Sample-Nummer multipliziert mit der Abtastzeit und 
den AD-Wert multipliziert mit Ulsb (hier ein ADU mit 5V Bereich und 8 
Bit). Das sieht in C dann so aus:
printf ("=%d*0.01, =%d*5/256 /n", Nummer, ADWert);
in der Textdatei landet dann z.B.
=1*0.01, =0*5/256
=2*0.01, =10*5/256
=3*0.01, =51*5/256
usw. Calc macht daraus beim Import sofort die umgerechneten Werte für 
Zeit (n*10ms) und Spannung. Die Überschriftzeile kann man vom Controller 
aus auch gleich mitschicken.

tschuessle
Bernhard

von Bernd R. (berndrix)


Lesenswert?

Hallo an alle, die so schnell geantwortet haben!!
Hyper terminal habe ich leider nicht (Win XP), werde aber die anderen 
Vorschläge probieren.
Das geht aus Zeitgründen erst in der nächsten Woche.
Aber über die große und schnelle Hilfsbereitschaft habe ich mich echt 
gefreut und werde das Forum öfter besuchen um evtl. auch mal einen Tipp
geben zu können, auch wenn ich noch kein AVR-Erfahrener bin.

Danke

von Bernd R. (berndrix)


Lesenswert?

Hallo an alle, die geantwortet haben,
Tera Term via x-Modem brachte die Lösung. Das klappt perfekt!!
Danke für den Hinweis an Tubie.

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.