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

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.