Tout d'abord, je travaille avec un kit Folger Tech Prusa i3, si cela fait une différence. Je pense aussi que l'Arduino est un Mega 2560.
Je sais quelque part à l'arrière de ma tête que la ROM électriquement programmable comme ce qui doit être sur la carte Arduino stockant le firmware se dégrade un peu, chaque fois que vous y écrivez. En ce moment, j'essaie d'étalonner un autre problème d'impression, et je pense que je dois encore modifier le firmware, ce que j'ai déjà fait plusieurs fois. Je commence donc à m'inquiéter du nombre de fois où je peux le faire.
Eh bien, une fois que je me suis souvenu de l'acronyme "EEPROM", et après un peu de recherche sur Google, je suis tombé sur cela, Arduino - EEPROM , qui dit qu'il peut gérer des cycles de 100k, donc je pense que je suis sur la réponse, mais le problème est que je ne sais pas si un cycle est un fichier entier en cours de téléchargement? Ne s'agirait-il pas d'un seul morceau de données? Et si oui, combien de cycles consommerait le fichier Marlin moyen?
J'ai également trouvé ceci:
mais je serais très surpris si j'y ai téléchargé plus de 2000 fois
sur Mega2560 maçonné? non détecté, DFU échouant , indiquant que la réponse pourrait être aussi faible que 2000.
De plus, ceci:
Modes de défaillance
Il existe deux limites aux informations stockées; l'endurance et la conservation des données.
Lors des réécritures, l'oxyde de grille dans les transistors à grille flottante accumule progressivement les électrons piégés. Le champ électrique des électrons piégés s'ajoute aux électrons dans la grille flottante, abaissant la fenêtre entre les tensions de seuil pour les zéros et les uns. Après un nombre suffisant de cycles de réécriture, la différence devient trop petite pour être reconnaissable, la cellule est bloquée dans l'état programmé et une défaillance d'endurance se produit. Les fabricants spécifient généralement que le nombre maximal de réécritures est de 1 million ou plus. [5]
Pendant le stockage, les électrons injectés dans la grille flottante peuvent dériver à travers l'isolateur, en particulier à une température élevée, et provoquer une perte de charge, ramenant la cellule à l'état effacé. Les fabricants garantissent généralement une conservation des données de 10 ans ou plus. [6]
de Wikipedia: EEPROM - Failure Modes , indiquant que la réponse pourrait être dans les millions.
À ce stade, je me demande simplement si un expert pourrait voir cela et soulager mon angoisse ...
Réponses:
L'EEPROM n'est pas où le programme lui-même est stocké, ce qui est pertinent pour votre question est le flash. Le flash de l'ATmega2560 est conçu pour 10 000 cycles (c'est-à-dire que vous pouvez le reprogrammer au moins 10 000 fois).
la source
L'AVR a SRAM pour les variables (ce qui est généralement appelé RAM), il a EEPROM pour les variables non volatiles et il a flash pour le code exécutable. (Architecture de Harvard!)
Pour re-flasher le firmware, ni les taux d'écriture SRAM ni EEPROM ne sont importants, mais les taux Flash le sont. Les taux d'écriture flash sont de l'ordre de 100 000 à un million, ce qui ne devrait donc pas être un problème.
L'article que vous avez lié indique également qu'il n'a pas fait plus de 2000 réécritures et devrait donc être correct. Je ne peux qu'être d'accord. Quelques milliers de re-flashs ne posent aucun problème. Une fois que vous vous approchez de 100 000, vous pouvez commencer à vous inquiéter.
Les bits flash ne peuvent être écrits que de 1 à 0. L'effacement du flash écrit tous les bits en 1. L'effacement ne peut être effectué que sur une page flash (la taille dépend du périphérique mais généralement un multiple de 512).
la source