Sketch te groot
Sketch too big / region 'text' overflowed / not enough memory
Oorzaak: Je programma past niet in het geheugen van het bord. Een Arduino Uno heeft maar 32 KB programmageheugen en 2 KB werkgeheugen. Vooral grote String-teksten en zware libraries vullen dat snel.
Oplossing: Maak je programma kleiner, of stap over op een ruimer bord (de STM32 heeft veel meer geheugen).
- Gebruik de
F()-macro rond vaste teksten, zodat ze niet in het schaarse werkgeheugen komen:
# FOUT — tekst vult het werkgeheugen
Serial.println("Een lange uitleg die veel RAM kost");
# GOED — tekst blijft in het programmageheugen
Serial.println(F("Een lange uitleg die veel RAM kost"));
- Verwijder libraries die je niet echt gebruikt.
- Vervang grote
String-objecten door gewonechar-tekst waar het kan.
Loop je hier vaak tegenaan? Dan is dit precies een reden om naar de STM32 over te stappen. Zie 8.1 Waarom STM32?.