Étape 7: Utilisation de la RAM et PROGMEM
int availableMemory() {}
int taille = 2048 ;
Byte * buf ;
tandis que ((buf = (byte *) malloc(--size)) == NULL) ;
Free(BUF) ;
retourner la taille ;
}
Appeler cette routine dans votre routine setup() et affichez la mémoire vive disponible sur le port série ou l’écran LCD. La quantité de RAM libre dont vous avez besoin est un appel du jugement mais je commencerais devient nerveux s’il tombé au-dessous de 200 octets. Ram libre est nécessaire pour la pile qui est où toutes les variables locales déclarées dans les sous-routines. Aussi, évitez de mettre des grands tableaux de variables sur la pile (comme une variable dans une sous-routine). Quelque chose comme
unsigned long MyArray [23] [23]
consommera entièrement tout de votre RAM.
Une chose, que vous pouvez faire pour économiser beaucoup de RAM est d’utiliser PROGMEM pour les chaînes. Il est regrettable que les chaînes vont dans la RAM, ils sont beaucoup mieux adaptés pour mémoire FLASH. Vous pouvez forcer en FLASH avec PROGMEM. Les instructions sont disponibles ici et il existe de nombreux exemples dans mon code.