Hallo, ich habe eine Frage, wozu ich nicht wirklich eine Lösung finde. Vielleicht kann mir da ja mal jemand auf die Sprünge helfen. Ich habe im Atmel Studio6 ein C Projekt für einen Tiny84 erstellt. In zwei Fällen zeigt der Tiny ein komisches Verhalten. Zum einen wenn ich mehr als 256 Byte Data memory verwende und zum anderen wenn ich über 4 kb Program memory verwende. Im ersten Fall fängt er wieder von vorne an zu lesen. Schein irgendwie eine 8 Bit Grenze zu sein. Im zweiten Fall macht er nur noch wirres Zeug. Muss ich da etwas im Compiler konfigurieren, um zumindest eine der Grenzen zu übergehen? Danke und Gruß John
Konfigurieren musst und kannst du nichts. Beide Symptome deuten auf einen Stack-Overflow hin. Die nach dem Compilieren angezeigte SRAM-Auslastung berücksichtigt nur die statischen DAten, alles, was lokal auf dem Stack (oder gar auf dem heap) angelegt wird, kommt noch hinzu. Und irgendwann ist der Speicher halt voll... Oliver
Vielleicht ein umgelabelter ATtiny44. Sollte dann aber beim Verify meckern. Peter
Peter Dannegger schrieb: > Vielleicht ein umgelabelter ATtiny44. > Sollte dann aber beim Verify meckern. Nein, bereits beim Signaturvergleich.
Danke für die Antworten. Das mit dem Stacküberlauf klingt plausibel und scheint es auch zu sein. Irgendwie trat dieses Verhalten genau beim Sprung von 3900 auf 4150 Bytes auf. Das sah nach einer 4 kb Grenze aus. Aber ich habe mal ein wenig rumgebastelt und ich kann dieses Verhalten auch schon bei 3200 Byte erzeugen. Beim gegentesten mit einem Mega32 ist das Problem auch verschwunden. Da muss ich wohl noch etwas umbauen...
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.