Le microcontrôleur d'une carte Arduino dispose de trois types de mémoire, la SRAM, la flash et l'EEPROM. Chacune a son utilité spécifique, mais les trois sont en quantité réduite. L'utilisation d'une mémoire externe (EEPROM) permet de facilement disposer d'un espace de stockage pour des données, mais là encore, on parle de quelques dizaines de kilooctets. Que faire si on a besoin de bien plus d'espace ? C'est simple, il suffit de faire exactement la même chose que tous les produits électroniques du marché : utiliser une carte SD ou microSD !
Se retrouver à l'étroit lorsqu'un projet évolue est monnaie courante, c'est là tout le principe de l'écriture de croquis Arduino et de la programmation de microcontrôleurs en général. Il faut penser, dès le départ, que nous ne disposons pas d'une masse énorme de mémoire comme c'est le cas, par exemple avec un PC ou une Raspberry Pi. Une technique généralement utilisée consiste donc à judicieusement choisir ce qui est stocké où, ou en d'autres termes, faire usage de façon efficace des différents types de mémoire, en fonction des types d'informations qu'on utilise.
Dans ce sens, le plus important est le code qui ne peut être exécuté qu'en flash. Les données, quant à elles, peuvent être migrées à un autre endroit, récupérées en cas de besoin et stockées en mémoire vive (SRAM) pour être manipulées avant d'être à nouveau proprement rangées. Nous avons vu, par exemple, dans le précédent numéro, qu'il était possible d'attacher une mémoire...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première