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????
am ende des rams ist der stackpointer. der wird beim vollschreiben überschrieben -> der avr macht was er will! abhilfe: nicht den gesammten RAM nutzen
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.
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???
RAW kannst du lesen in dem du die Karte mit nem HexEditor öffnest soweit ich weiß.
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.