Speicher frei aber Page voll

Gast #3862848
Lesenswert?

Hallo zusammen,

ich programmiere gerade eine Software in MPLAB 8 mit dem HIGH-TECH 
Compiler für einen PIC16. Ich modifiziere das Projekt nur, darum der 
veraltete Compiler. Laut dem Memory Usage Gauge von MPLAB habe ich nun 
noch grob 20% Speicher frei (sowohl Flash Memory als auch Data). Sobald 
ich nun aber ein Paar Befehle hinzufüge, bekomme ich diese 
Fehlermeldung:

Error   [1347] ; 0. can't find 0xD words (0xd withtotal) for psect 
"strings" in segment "CODE" (largest unused contiguous range 0xEC)

Eine kleine Google Recherche hat ergeben, dass der gesamte speicher zwar 
noch nicht voll ist, aber dafür eine Page. Aber in C habe ich ja gar 
keinen Einfluss darauf, welche Page wofür genutzt wird. Was kann man da 
machen? Könnte ein anderer Compiler den Code vielleicht besser 
verteilen?

Diese Tipps aus dem aus dem Microchip Forum habe ich bereits beherzigt:
- use the smallest possible datatypes (best 8bit-variables)
- use local variables and functions.
- avoid big arrays.
- try to use reusable functions.

Grüße
Bernd

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