Hallo, in meinem neuen Bastelprojekt stehe ich vor folgendem Problem. Ich brauche eine Möglichkeit mir ein paar Daten zu merken wenn meine Schaltung vom Netz getrennt wird. Nun habe ich überlegt die Daten im EEprom abzulegen doch das ist wohl der schlechteste Weg da die Daten sich öfter ändern. Nun könnte man die Daten vielleicht im SRAM ablegen, kann man den mit einer Batterie buffern? Wie würde man das anstellen? Gruß AVRli...
Um wieviele Daten handelt es sich? Wenn es nur wenige sind, kannst du das EEPROM benutzen, indem du die ein Array von Strukturen der Daten im EEPROM anlegst und mitzählst, wie oft geschrieben wurde. Wenn der kritische Wert von 100000 (bei ATMEGA) erreicht ist, einfach die Adresse der Struktur erhöhen und die nächsten 100000 Schreibzugriffe stehen dir zur Verfügung. Adresse natürlich auch mit abspeichern. MW
Moin, es gibt da SRAM mit einer eingebauten Batterie. Die heißen 'Timekeeper' oder so. Einige K Speicher, Uhr und Strom in Dosen. Vielleicht hilft Dir das ja weiter. :-) Johannes
AVRli wrote: > Schaltung vom Netz getrennt wird. Nun habe ich überlegt die Daten im > EEprom abzulegen doch das ist wohl der schlechteste Weg da die Daten > sich öfter ändern. Aber nach dem Ausschalten änder sie sich ja nicht mehr.. wenn Du also nicht 100x pro Minute ausschaltest sonder vielleicht jede Stunde so kannst Du Dein SRAM noch ins EEPROM auslagern bevor die Spannung zusammenbricht. Dafür müsstest Du eine Erkennung haben, ob die Spannung vor einem Pufferkondensator auf 0 geht und entsprechend die Schreibroutine aufrufen.
Hi, AVRli, schau mal bei ebay unter FRAM - ferroelektrische RAMS. Von "paktek",(Nick des Lieferanten) habe ich 24FM16 gekauft, 2kx8 mit I2C. Vorteile: * Lesen und Schreiben so schnell wie RAM * Adressierung - Selective Read Write (jedes Byte einzeln), in Sequence. * Daten bleiben nach Power-Off erhalten. Das gibt's auch mit parallelem Adreß- und Datenbus. Ciao Wolfgang Horn
Wolfgang Horn wrote: > Vorteile: > * Lesen und Schreiben so schnell wie RAM Naja, so schnell wie interner RAM wird es wohl nicht sein, aber man wird wahrscheinlich keine waits einlegen müssen beim ansprechen.
Hallo, danke für die vielen Antworten. Nun die Menge der Daten ist nicht wenig... Es handelt sich um Texte die aufgezeichnet werden. Ähnlich einer SMS Funktion. So 10 Texte wollte ich schon ablegen können. Ein Text kann maximal 100 Zeichen enthalten. Die FRAM Geschichte klingt nicht schlecht, die Dinger sind nur überall abgekündigt wo ich geschaut habe. Hmm über eBay kaufe ich nichts mehr, zu oft auf die Nase gefallen. Gibt es vielleicht ein I²C RAM den man mit einer kleinen Batterie puffern kann? MfG AVRli...
Wenn die Daten nicht "ewig" gespeichtert werden müssen: Spendier dem AVR nen Größeren Kondensator (Goldcap) und schalt ihn in den "Power-Down Mode" sobald die externe Spannungsversorgung weg ist. Hat dann (Laut Datenblatt) einen Typ. Verbrauch von <1µA, und hält den RAM-Ihnalt bis runter zu 2.5V. Du musst dann natürlich einen Pin zum Spannungsüberwachen opfern, vorzugsweise einen der INT-Pins, die den Mega dann auch wieder aufwecken können, sobald der Strom wieder da ist.
fram gibts zB bei tme.pl wenn es dir allerdings nicht darum geht die Daten sehr schnell zu speichern, nimm doch eine Speicherkarte, da kannst du dann auch Romane speichern :P
Wie häufig müssen die Daten denn gesichert werden (wie oft wird abgeschaltet)? Viele AVRs haben 1K oder mehr EEPROM mit 100.000 Schreibzyklen. Das sollte reichen um ein Jahr lang alle 5 Min ausschalten zu können - wenn ich mich nicht verrechnet habe.
Hi, nimm doch ein EEPROM mit SPI Interface, z.B. 25080 (1024*8 Bit) oder 25160, 25320 oder gar 25640 (8192*8 Bit). Dieses EEPROM hat 3MHz Clock Rate, 32Byte page write und ca. 5ms programmierzeit mit 1M endurance (Daten von dem Atmel Device). Zugriff ist schnell und 8kByte könnte für deine Anwendung ausreichend sein. Gruß, Kai
Jörg B. wrote: > Wie häufig müssen die Daten denn gesichert werden (wie oft wird > abgeschaltet)? Viele AVRs haben 1K oder mehr EEPROM mit 100.000 > Schreibzyklen. Wobei nicht gesagt ist, dass das EEPROM mit dem 100.001 Schreibzyklus kaputt ist. Die 100.000 sind garantiert. Meist hält es länger. Viel länger! Also, Jörg hat völlig recht. Wie oft ändern sich die Texte? Schätz mal ab. Und dann rechne mal ein bischen, wieviele Jahre das ausmacht. Und dann entscheide ob du damit leben kannst.
Hallo! Vielen Dank für eure Antworten und Ideen! Ich habe mal gerechnet und festgestellt das ich damit gut leben kann wenn man die Daten direkt im eeprom speichert. Mehr wie 10 Jahre wird die Schaltung ehh nicht leben und wenn sie es schafft, ist es auch ok wenn sie dann das Zeitliche segnet. ;) Es ist wohl nur wichtig das man den EEProm nicht als "RAM" verwendet und alle Sekunde drauf schreibt. Nun werde ich vlt. doch lieber noch einen I²C EEProm nehmen, die haben ja 1mio Schreibzyklen... genug Luft... MfG AVRli...
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.