Forum: Compiler & IDEs Nochmal: AVR-GCC und Platzprobleme


von Sebastian Fahrner (Gast)


Lesenswert?

Hallo,

wenn ich mein Programm für einen AT2313 (2kb Flash, 128 RAM) builde, 
bekomme ich folgende Fehlermeldung:
"region data is full"
Das bedeutet doch, daß das RAM voll ist, oder nicht?!


Ich habe im Programm ein Array wie folgt angelegt:

const char ScaleTable[256] = { ... };

Jetzt bin ich eigentlich davon ausgegangen, daß der Compiler dieses 
Array ins Flash legt, wegen "const". Wenn ich dieses Array aber 
auskommentiere, bekomme ich keine Fehlermeldung mehr!!
Der Compiler wird doch nicht etwa dieses Array im RAM anlegen, oder?!

Danke,

Sebastian

von Notker (Gast)


Lesenswert?

> Der Compiler wird doch nicht etwa dieses Array im RAM anlegen, oder?!

doch!

Wieso sollte er dies auch nicht tun?

Arrays im Flash werden z.B. mit prog_char oder prog_int deklariert.

Gruss,

Notker

von Sebastian Fahrner (Gast)


Lesenswert?

Okay, vielen Dank !!

Dann hätte ich mir ja gar nicht die ATMega8 bestellen müssen... ;)

Grüße,

Sebastian

von Joerg Wunsch (Gast)


Lesenswert?

Mach Dir keine Sorge, binnen kurzer Zeit wirst Du auch dessen
RAM und ROM mühelos voll bekommen. :-)

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
Noch kein Account? Hier anmelden.