Ce n'est pas. Eh bien, il pourrait s'user lentement si vous le faites fonctionner pendant 20 ans ... (comme la plupart des autres produits physiques)? Au moins, il ne dépend pas de la complexité du code mais du nombre d'opérations d'écriture effectuées dans la même section de mémoire. De plus, lorsqu'il s'use, il ne fait que devenir maillé et ne deviendra pas un code plus simple comme faire clignoter la LED.
Un Arduino (Uno) a trois parties mémoire. SRAM, FLASH et EEPROM. SRAM ressemble plus à une grille de transistor logique. Il ne s'usera pas en stockant des variables. FLASH et EEPROM se composent de portes flottantes. Ils s'usent lentement lorsque vous écrivez de nouvelles données. D'après la fiche technique du microcontrôleur Ateml , il indique:
La mémoire Flash a une endurance d'au moins 10 000 cycles d'écriture / effacement. (Extrait du chapitre 8.2)
L'EEPROM a une endurance d'au moins 100 000 cycles d'écriture / effacement. (Du chapitre 8.4)
Cependant, la mémoire FLASH est un espace pour l'exécution de code. L'opération d'écriture n'est pas effectuée pendant l'exécution d'Arduino. Vous n'écrivez de la mémoire FLASH que lorsque vous téléchargez un nouveau code. Il s'use donc lorsque vous téléchargez du code au moins 10 000 fois.
Si vous voulez vraiment, vous pouvez créer un code spécial pour auto-reprogrammer la mémoire FLASH, généralement dans le but de conserver les données variables lorsque Arduino est éteint. Lorsque vous écrivez ce type de programme, il s'use lentement car la mémoire FLASH n'a pas beaucoup d'endurance en écriture. C'est pourquoi il vous sera suggéré d'utiliser l'EEPROM qui a beaucoup plus d'espérance de vie, si vous souhaitez conserver les données même lorsque Arduino est éteint.
Pour résumer, il s'usera en réécrivant la mémoire FLASH ou EEPROM, et non par l'exécution de code.