Voici le début de la fonction begin() :
if ((!buffer) && !(buffer = (uint8_t *)malloc(WIDTH * ((HEIGHT + 7) / 8))))
return false;
Pour un écran de 128x64 le besoin est de 128*((64+7)/8) = 1136 octets
La compilation donne ceci :
Les variables globales utilisent 1024 octets (50%) de mémoire dynamique, ce qui laisse 1024 octets pour les variables locales. Le maximum est de 2048 octets.
1024 octets disponibles alors que la librairie en réclame 1136
![]()
-> essayer la librairie Greiman, ce qui implique pas mal de modifs de code, ou adopter une MEGA.