Gast
#3862848
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