Messwerte auf Speicherkarte (z.B. SD) loggen

Hallo zusammen,

Ich wollte mal Fragen ob es irgendwo ein freies Projekt oder so gibt, wo man Messwerte über eine längere Zeitspanne auf eine SD-Karte oder so schreibt.

Ich mein technisch ist dazu doch eigentlich nur ein entsprechend programmierter Controller, Verstärker für die Messfühler und dann halt ne Speicherkarte notwendig. Oder sehe ich das falsch? z.B. Fat-Dateien zu erzeugen und zu schreiben stelle ich mir kompliziert vor.

Gibt es dazu ein Projekt, welches man für eigene Bedürfnisse leicht abändern könnte? Ich würde mir gerne eine kleine Wetterstation basteln, die dann Daten auf ne Speicherkarte SM, SD oder was auch immer speichert und dann will ich dazu eine kleine Software schreiben, die die Daten dann auf dem PC zu einer Datenbank hinzufügt etc...

Würde mich freuen, wenn jemand so etwas kennt. Vor einiger Zeit hat mit schonmal jemand einen sehr guten Link zu einem MP3-Player gegeben, aber das ist ja noch nicht ganz das was ich suche. Um sowas nämlich komplett alleine zu entwerfen fehlt mit derzeitig noch das Wissen.

lg,

Markus

Reply to
Markus Gronotte
Loading thread data ...

Hallo Markus,

schau mal bei glyn.de

die haben Evaluation-Boards für SD / MMC Karten, welche du seriell (SPI) betreiben kannst. Dürfte genau das sein, was du suchst.

Gruss Robert

Reply to
Robert Hammann

"Robert Hammann"

Hallo Robert,

betreiben kannst. Dürfte genau das sein, was du suchst.

Hmm.. Das geht auf jeden Fall schonmal in die richtige Richtung.

349 Euro für das Fat16-Mudul (also Software) sind mir als (bis jetzt noch) Hobbybastler allerdings noch zu viel. Fat16 wäre nämlich die Vorraussetzung dafür, dass die Datenreihen nach der Aufnahme hinterher einfach in eine Datenbank im PC übergehen.

lg,

Markus

Reply to
Markus Gronotte

In der aktuellen Ausgabe

formatting link
gibt´s einen Artikel: Portable FAT Library for MCU Applications Ivan Sham, William Hue & Pete Rizun The DOS FAT file system is the industry standard format for flash memory cards. You can use a microcontroller to read and write files on an SD/MMC flash memory card with the FAT system. Read on to learn how to build a portable FAT library for MCU applications. p.18

Source Code sham176.zip unter: ftp://ftp.circuitcellar.com/pub/Circuit_Cellar/2005/176/

wolfgang PS: Als Steckplatz für SD Cards eignen sich alte ISA Slots bestens ;-)

"Markus Gronotte" schrieb im Newsbeitrag news:4235a688$0$26544$ snipped-for-privacy@newsread4.arcor-online.net...

Reply to
Wolfgang Kabelka

"Markus Gronotte" wrote in news:4235a688$0$26544$ snipped-for-privacy@newsread4.arcor-online.net:

formatting link
aktuelle Ausgabe. SD-Card FAT16-File lesen/schreiben im Rootdirectory. (Das Online-Abo ist recht preiswert, aber die Source alleine kann man da auch irgendwo per Anonymous-FTP downloaden.)

Wenn Du FAT16 drauf hast, spart es die Mühe und den Ärger das in Windows auf Low-Level-Ebene auszulesen (darf sowas eine Nicht-Admin unter XP überhaupt?)

M.

--
Bitte auf mwnews2@pentax.boerde.de antworten.
Reply to
Matthias Weingart

Unter

formatting link
gibt es AVR Code.

--
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
Reply to
Uwe Bonnes

"Uwe Bonnes"

Was ist eigentlich der Unterschied zwischen AVR und Mega? Ich hab jetzt grad mal im Conrad nachgeschaut... Kommt man eigentlich in der Regel mit 64kByte Ram wirklich aus? Kann man den Externen Speicher beliebig erweitern? Und was kostet der eigentlich so bzw. welchen mus man dafür nehmen, dann könnte ich selber nachschauen. Da steht jetzt Sram. Ist das ein günstiger Standard?

Fragen über Fragen ;)

lg,

Markus

Reply to
Markus Gronotte

Ein paar Kleinigkeiten modernisiert.

Kommt drauf an was du machst. In den allermeisten Faellen ist das ausreichend.

Ja, notfalls ueber Bankswitching.

Tja, SRAM ist SRAM. Steht so auch im Katalog.

Im Vergleich zu anderen RAM Technologien ist das ein teurer Standard. Aber dafuer einfach zu beherschen. Du willst nichts anderes nehmen.

Olaf

Reply to
Olaf Kaluza

"Olaf Kaluza"

Hallo Olaf,

Hmm... Ich brauche für noch ein anderes Vorhaben zwingend Multithreading. (ca 8KHzDatenstrom auf Memorychip speichern) Ohne Multithreading geht sowas nicht, oder? Weil die Schreibzyklen würden ja dann kleine Unterbrechungen verursachen. Können MT beide oder nur der Mega? Weißt du das zufällig? Ich finde darüber keine Informationen beim AVR.

lg,

Markus

Reply to
Markus Gronotte

"Markus Gronotte" schrieb im Newsbeitrag news:4236879d$0$1091$ snipped-for-privacy@newsread2.arcor-online.net...

Natuerlich nicht.

Threads sind ein (eher krankes, Prozesse sind sauberer aber uneffektiver) Konzept eines Betriebssystems. Also Software. Das hat nichts mit dem Microprozessor zu tun, also der Hardware. Die kann das, so bald sie Interrupts kennt, und die kennt jeder uC.

Mit einem Betriebssystem, welches mit dem Begriff 'Multithreading' wirbt, wirst du allerdings dein Problem nicht loesen koennen. Microsofts Schrott ist viel zu langsam, um deinen Job hinzubekommen, und das Multithreading ist dort viel zu instabil und unberechenbar, um Erfolg zu garantieren.

Du hast kein Betriebssystem (sei froh) und wirst Interrupts (aus dem Zeitgeber) verwenden (die es sowohl beim AVR als auch beim ATMega gibt) um das Problem zu loesen, damit du WAEHREND des einen Jobs erst mal den anderen weiter laufen lassen kannst, bis der erste Job eben fertig ist.

Denke moeglichst immer ereignisgesteuert, dann ergibt sich das Programm von selbst.

--
Manfred Winterhoff, reply-to invalid, use mawin at despammed.com
homepage: http://www.geocities.com/mwinterhoff/
de.sci.electronics FAQ: http://dse-faq.elektronik-kompendium.de/
Read 'Art of Electronics' Horowitz/Hill before you ask.
Lese 'Hohe Schule der Elektronik 1+2' bevor du fragst.
Reply to
MaWin

"MaWin"

Hallo Mawin,

Das würde ich gerne, aber damit habe ich unter Delphi schon meine Probleme. Ich gehe jetzt davon aus, dass ich ca 4096 Messwerte im Speicher ansammle und dann 4096 Messwerte auf die Karte Schreibe. Ich stelle mir das jetzt so vor dass wenn ein Schreibzyklus für

4096 Messwerte beginnen soll, werden die 4096 Messwerte in einen anderen Speicherteil kopiert, damit weiter neue Messwerte gesammelt werden können. Ich gehe dabei davon aus, dass das Kopieren von 4096 Messwerten schnell genug geht. Dann müsste der Schreibzyklus beginnen und dieser müsste dann ja nach jedem Eintreffen eines neuen Messwerts gestoppt werden. Deshalb vermutlich die Bezeichnung Interrupts? Nur damit, mir die Umsetzung im Code vorzustellen, tue ich mir momentan noch schwer. Aber vermutlich solte ich mir darüber erst Gedanken machen, wenn ich die Hardware soweit zusammen habe.

lg,

Markus

Reply to
Markus Gronotte

Markus Gronotte schrieb:

Hast Du überhaupt einen Schimmer, wie man Mikrocontroller programmiert? Glaub mir, es ist auf jeden Fall sinnvoll mit einem "Hello World" (also einer blinkenden LED) anzufangen und sich dann weiterzutasten. Es kann nicht gut gehen, mit Deinem Delphi-Ansatz auf einen uC zu gehen und dann zu fragen, ob 64k Flash auch wirklich genug seien. Die Leute, die "auf einer graphischen Oberfläche" die ersten Programmierversuche gemacht haben, sind wahrscheinlich zu "verwöhnt".

"Wir hatten ja nix. Wir wären ja _froh_ gewesen, wenn wir sowas wie eine GUI gehabt hätten. Aber wir hatten ja nix."

;-)

Gruß Henning

P.S.: Was ist aus Deinem MP3-Wiedererkennungsprogramm geworden?

--
henning paul home:  http://www.geocities.com/hennichodernich
PM: henningpaul@gmx.de , ICQ: 111044613
Reply to
Henning Paul

"Henning Paul"

Zur Zeit stehen Klausuren an, da liegen solche Sachen bei mir auf Eis. Aber es hat schon diverse Fortschritte gemacht.

Reply to
Markus Gronotte

Mit einem 16 MHz 286er habe ich 1988 einen (fast :-) kontinu- ierlichen Datenstrom von 4800 Baud auf die Festplatte gesi- chert und 'nebenbei' noch eine Bildschirmgraphik von 1024*768 aus den Messwerten (mit wilder polynomaler Anpassung [1]) ge- zeichnet. Allerdings war die Online-Darstellung eher neben- sächlich, denn die Daten kamen von einer Meereskunde-Sonde die bis zu 1500 Meter in die Tiefe gelassen wurde. Die Position mitten auf dem Atlantik war auch 'nett'[2] und wohl das teuerste am Projekt.

Mit heutiger Hardware sollte sowas nun kein Problem mehr sein. Damals hatte ich Turbo-Pascal mit einer Assembler-Unterroutine für einen 32 KByte V24-Empfangspuffer.

Gruss, Holger

[1] die sogenannte "UNESCO"-Formel, um aus der gemessenen Leit- fähigkeit und dem Druck sowie der Temperatur den Salzgehalt zu errechnen. Ein Mathe-Coprozessor war aber nötig. [2] Das unmittelbare Erkennen der 'Sprungschicht' war schon sinn- voll.
Reply to
Holger Petersen

Markus Gronotte schrieb:

Es gibt einige resourcen zu dem Thema MM/SDC an µC im Netz. Das Thema wurde auch hier immer mal wieder Behandelt.

Musst Du ja auch nicht, es würde z.B. reichen die Karte am PC mittels Card-reader vorzubereiten (eine einzige unfragmentierte Datei Draufspielen) und dann ab Anfang der Datei (lässt sich leicht ermitteln) den µC Deine Daten reinschreiben lassen. Ist quick and dirty, schont aber µC-Ressourcen.

Nimm am besten einen 3.3V-Controller, dann sparst Du u.U. ein interface zur Karte. Es empfielt sich natürlich der SPI-Mode. Karten-Slots gibts bei Farnell.

Jörg.

Reply to
Joerg Schneide

"Henning Paul"

Achso. Was ich dazu noch vergessen hatte zu schreiben. Ich kenne jetzt dein Alter nicht bzw. ob du mal studiert hast, aber wir haben bei uns im Studiengang E-Technik Praktika, in denen man solche kleineren Sachen mal programmiert. Sobald ich die Praktika in Digitaltechnik absolviert habe, denke ich, kann ich auch besser einschätzen, wie das alles so geht ;) Von daher ACK ^^ Ich plane ja nur meine nächsten Sommersemesterferien etwas; deshalb diese Fragen.

lg,

Markus

Reply to
Markus Gronotte

Markus Gronotte schrieb:

24, noch dabei (angehendes 8. Semester Informationstechnik an der Uni Bremen).

Nun, ich habe mitbekommen, daß Du an der FH bist, wahrscheinlich ist das bei Euch anders, aber die ersten beiden Semester war Physikpraktikum, d.h. Franck-Hertz, Clausius-Clayperon und wie sie alle heißen, die nächsten beiden Semester war Grundlagenlabor E-Technik, d.h. richtiges Messen, Oszi, OP-Schaltungen. Im fünften Semester 3 Labore: Regelungstechnik (Sprungantworten aufnehmen, Regler dimensionieren, ein bißchen DSpace, ein bißchen S7), Digitaltechnik (74er Logik, GALs ABELn etc.), Nachrichtentechnik (MATLABen, PLL breadboarden, mit Rohde&Schwarz UKW-Stereo Muxen :-) ). Im 6. Semester Schwerpunktlabor Digitaltechnik, d.h. FPGA. Im 7. Semester HF-Labor. Die Mikrocontroller "dürfen" nur die Mikroelektroniker in ihrem Schwerpunktlabor programmieren - das war dann aber auch nur "Hello World" auf dem MSP430.

_Vor_ meinem Studium, zu Schulzeiten (und v.a. in der freien Zeit zwischen Zivi und Studium) habe ich deutlich mehr mit Mikrocontrollern gemacht als seitdem.

Gruß Henning

--
henning paul home:  http://www.geocities.com/hennichodernich
PM: henningpaul@gmx.de , ICQ: 111044613
Reply to
Henning Paul

Hallo,

ich wollte mir den Artikel "Portable FAT Library for MCU Applications" unter

formatting link
für 1,50 US$ holen, aber leider muss man wohl trotz ausgewählter Paypal-Zahlungsmethode eine Kreditkartennummer angeben, die ich nun mal leider nicht habe. Kommt jemand an den Artikel ran?

Gruß Michael

"Wolfgang Kabelka" schrieb im Newsbeitrag news:d14f3s$kak$ snipped-for-privacy@paperboy.Austria.EU.net...

einen

Reply to
Michael Gaus

"Michael Gaus"

Visa kostenlos bei Comdirekt.

Reply to
Markus Gronotte

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.