mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Datenlogger - MMC oder EEprom ?


Autor: Guenter B. (gbl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin dabei mir einen Datenlogger zur Heizungsüberwachung zu bauen.
Grundlage ist ein Mega8 programmiert in C.
DCF 77, AD, und den Code für die serielle Schnittstelle habe soweit 
fertig.
Nun stehe vor dem Problem: Wo speichere die Daten  (6 Byte + Uhrzeit pro 
Minute) ?
Ich habe schon nach Code für MMC/SD - Karten gesucht, allerdings ist 
dieser Code meistens aufgrund des Speicherverbrauchs nur für grössere 
AVR geeignet.
Gibt es einen einfachen Code der auch auf dem Mega8 läuft ?
Mir würde es schon reichen, wenn ich in eine schon vorher angelegte 
Datei
schreiben könnte.
Alternativ würde ich ein EEprom (ca 128kbyte) nehmen, wobei ich mit den 
seriellen EEproms und deren Ansteuerung keine Erfahrung habe.

Gruß

Günter

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guenter B. wrote:

> Gibt es einen einfachen Code der auch auf dem Mega8 läuft ?

Ja:
http://elm-chan.org/fsw/ff/00index_e.html

> Mir würde es schon reichen, wenn ich in eine schon vorher angelegte
> Datei
> schreiben könnte.

Der Code kann FAT16/32 komplett lesen und beschreiben, mit allem was 
dazu gehört. Den Code kann man Stufenweise auf das nötigste kastrieren, 
dann passt der problemlos in einen mega8.

Autor: hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wahlweise geht auch ein DATAFLASH von ATMEL

http://www.atmel.com/products/DataFlash/

Applications auch bei Atmel, z.B. im "Butterfly"

gruß hans

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na ja, das Problem bei SD/MMC mit FAT ist eigentlich der Speicherbedarf. 
Man hält IMHO immer einen kompletten Block (512 Byte) im  RAM. Kommt 
halt darauf an, ob Du noch so viel frei hast. Ist aber schön günstig, 
gut beschaffbar und  direkt am PC auswertbar.
Wie viele Datensätze willst Du denn speichern? Es gibt bei Atmel 
DataFlash bis 128 MBit oder 16 MByte. Ist schön klein und wird einfach 
über SPI angesprochen. Bei einem Verbrauch von rund 10 Byte pro 
Datenpunkt käme man also auf rund 1.6   Millionen Datenpunkte oder 1165 
Tagen wenn ich mich nicht verrechnet habe :-)Da Du sowieso eine serielle 
Schnittstelle hast, kann man die Daten dort auslesen...

Autor: Harald A. (embedded)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder wie wäre es mit einem richtigen 'state-of-the-art' USB-Stick:

http://apple.clickandbuild.com/cnb/shop/ftdichip?o...

Einfach mit DOS-ähnlichen Kommandos über die RS232 ansprechbar... Ich 
habe das Ding mal selbst getestet. Geht sehr gut!

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DataFlash ist schnell, günstig und unkompliziert. Außerdem ist es klein 
und hat eine lange Haltbarkeit. Wir setzen die Dinger auch haufenweise 
ein.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann auch SPI-Flash nehmen, z.b. 1MByte:

http://de.farnell.com/1565995/ics-quarze/product.u...

Für den Bastler im praktischen DIP-8 Gehäuse.


Peter

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist denn der Unterschied zwischen einem (Data-)Flash und einem 
Eeprom ?

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
(Data-)Flash kann nur Sektorweise gelöscht und beschrieben werden (meist 
128, 256 oder 512Bytes), während EEPROMs auch Byteweise gelöscht werden 
können. Allerdings findet zunehmend eine Vermischung der beiden Typen 
statt, denn einige Flahs besitzen intern einen RAM Puffer in den ein 
Sektor gelesen wird, ein Byte verändert wird, und dann der ganze Sektor 
zurückgeschrieben wird. Bei einigen Speichern muss man das selbst 
machen, andere erledigen das automatisch.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke !

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine eindeutige Unterscheidung Flash/EEPROM gibt es nicht.

Der A25L80P muß vor dem Schreiben gelöscht werden, kann aber auch 
byteweise beschrieben werden.


Peter

Autor: Guenter B. (gbl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke ich werde mich für die SD-Karte entscheiden, da ich noch eine 
alte Karte gefunden habe.

Allerdings habe ich noch ein Verständnisproblem:
Brauche ich FAT auf der Karte, wenn ich die Karte nur mit dem AVR 
schreiben und lesen möchte ?
Oder kann ich die Daten in 512Byte Blöcken nacheinander auf die Karte 
schreiben ?
Die gespeicherten Daten würde ich seriell vom AVR zum PC transportieren.

Günter

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guenter B. wrote:

> Brauche ich FAT auf der Karte, wenn ich die Karte nur mit dem AVR
> schreiben und lesen möchte ?

Nein.

> Oder kann ich die Daten in 512Byte Blöcken nacheinander auf die Karte
> schreiben ?

Ja, dann ist eine SD Karte nichts anderes als ein großer Speicher mit 
512Byte Pages.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.