mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Was passiert wenn der SRAM Voll ist MEGA128???


Autor: Herrmann A (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Habe ein phänomen mit meinem MEGA 128 und SDCARD.

Schreibe alles in den SRAM 512Byte für die SDCARD wenn die 512 Byte voll 
sind schreibe ich auf die karte.

beim schreiben passiert es das der Mega 128 bei main() wieder anfängt er 
macht keinen reset merken tu ich es das ich die Variablen die in der 
main deklariert wurden wie Timer 2 der wieder aktiv wird aber sämtliche 
anderen sachen weiter laufen die eigendlich nach einem Reset erst wieder 
gestartet werden müssen.

oder ist es eine andere sache????

Autor: Ludwig Wagner (lordludwig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
am ende des rams ist der stackpointer. der wird beim vollschreiben 
überschrieben -> der avr macht was er will!

abhilfe: nicht den gesammten RAM nutzen

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja, der 128er hat ja immerhin 4k RAM, das sollte schon mal ne 
512byte-page drin sein, ohne den stack kaputtzuschmeissen.
Ich sag einfach mal, es liegt am Programm(ierer). Stell die Software 
rein, alles andere ist nur Ostereier suchen.

Autor: Herrmann A (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Also ich habe mal ein paar andere RAM Fresser beseitigt Arrays die ca 
1024 Byte groß waren GPS Buffer.

und siehe da er arbeitet zuverlässig.
Also es  ist jetzt Zeit für mich statische Variablen Char Arrays im 
Flash abzulegen um den SRAM nicht zu belastet.

Habe aber noch eine kleine Frage.

Über Nacht habe ich mal die NMEA Daten auf der SDCARD aufzeichnen lassen 
und heute morgen habe cih sie ausgelesen.(Schreibe direkt auf dei SDCARD 
ohne FAT).Soweit so gut aber ich hatte einen 512 Byete Block drin um ca 
5:30 der nicht beschrieben werden konnte der nächste und bis zum schluß 
8:30 waren in Ordnung nur der um 5:30. Ist es ein Fehlerhafter 
Block/Sektor auf der SD CARD???


Wie kann man die SDCARD im RAW Modus löschen oder Prüfen???

Ist es besser mit FAT Schreiben Lesen???? Gibt es da schon Beispiel code 
in C??? FAT lesen geht das habe ich schon getetstet LIB von Radig aber 
schreiben???


Autor: akw (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
RAW kannst du lesen in dem du die Karte mit nem HexEditor öffnest soweit 
ich weiß.

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.