Sì, è possibile spegnere bruscamente un Arduino.
Bene, soprattutto al sicuro.
I processori utilizzati nei vari Arduinos hanno tre tipi di memoria:
Flash: dove è memorizzato il programma. Il tuo programma può leggere materiale da qui, ma non può scriverlo.
RAM: dove vengono conservate le variabili del programma mentre il programma è in esecuzione. I dati qui scompaiono quando si spegne Arduino. Il tuo programma legge e scrive qui costantemente.
EEPROM - Dove il tuo programma può memorizzare roba di cui avrà bisogno alla prossima esecuzione. Di solito cose che cambiano raramente, ma sono necessarie ogni volta che il programma viene eseguito. Come i dati di calibrazione per un sensore.
La maggior parte dei programmi utilizza solo Flash e RAM. Puoi accendere e spegnere Arduino ogni volta che vuoi con quei programmi.
Se il tuo programma scrive su EEPROM, interrompere l'alimentazione durante la scrittura su EEPROM potrebbe corrompere i dati lì.
In che modo ciò influisce sul programma dipende da quali sono i dati.
Se corrompe i dati di calibrazione di un sensore, si otterrebbero misurazioni errate per tutto ciò che il sensore sta rilevando.
Se si scrivono checksum con i dati EEPROM, è possibile rilevare il danneggiamento e il programma potrebbe arrestarsi invece di utilizzare dati non validi.
Naturalmente, sapresti se il tuo programma scrive su EEPROM: devi caricare una libreria separata e usare comandi speciali per leggere e scrivere nell'area EEPROM.
Il pericolo è davvero solo in quel breve momento in cui scrivi alla EEPROM. Dal momento che ciò accade raramente (e di solito solo in condizioni controllate), sarà anche raro corrompere i dati EEPROM.
Sommario:
Puoi accendere e spegnere un Arduino a tuo piacimento senza alcun pericolo, a meno che tu non stia usando la EEPROM - e anche in questo caso riuscirai a cavartela per la maggior parte del tempo.