mein AVR Spinnt

Gast #533381
Lesenswert?

Hallo

Ich habe folgendes phänomen.

Er startet einfach mal neu (hardreset) er durchläuft manche funtionen 
nicht die printf über fdevopen geht nicht oder nur manchmal.


Kann es sein das der SRAM überläuft???
mir ist es aufgefallen wo ich ein Array angelegt habe natürlich statisch 
weil es immer existent sein soll wo ich werte ablege.
seit dem spinnt er.


Wie sollte man sram schonend programmieren???

Mein System ein 128Mega.

Danke
Gast #533416
Lesenswert?

Map-File produzieren und nachsehen wo die Klöpse liegen. Auf die 
Gesamtmenge dort definierten RAMs nochmal so ein paarhundert Bytes RAM 
(wenn wie hier printf verwenden wird, sonst ggf. weniger) draufrechnen. 
Das sollte dann in den Speicher passen. malloc() Speicher geht 
zusätzlich ein, und ist schon deshalb dringend abzuraten. Grössere 
Klöpse auf dem Stack (lokal in der Funktion) sind ebenso riskant.


Gast #533689
Lesenswert?

Hallo nochmal


Also das Map file hab ich gefunden


wenn ich das richtig sehe könnte es hier stehen
Allocating common symbols
Common symbol       size              file


wenn ich die hex zusammenzähle komme ich auf 1733 byte der 128iger hat 
ja 4096 byte. das sollte ja reichen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren