Hi Leute, habe eine frage, ich progge gerade was für den dspic33fj64gp706a. Laut Datenblatt hat dieser 16k Ram, nun wenn ich mehr als ca. 4k Ram benutze, kommt es beim linken zu Fehler: obj\spi.o: Link Error: Could not allocate section .nbss, size = 30 bytes, attributes = bss near Link Error: Could not allocate data memory Warum? Ich habe gerade mal eine RAM auslasung von 28% und mehr kriege ich net rein? Gruß
Die PIC30-Familie kann zwar 64KB Daten adressiern, aber nur die ersten 4KB davon mit absoluter Adresse direkt im Befehl (=> near). Weshalb C-Compiler spezielle Keywords kennen, um die Platzierung von bestimmten grossen Variablen ausserhalb dieser 4KB explizit durchführen zu können. Alternativ existiert möglicherweise ein Schalter für ein Speichermodell, das zu Lasten der Codeeffizienz diese 4KB-Grenze nicht kennt.
Danke für die Antwort. habe es dank deines Tipps auch schnell gefunden! so geht es: unsigned int __attribute__((_far_)) data[3000]; Viele Grüße
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.