Sommario:

Inizializzazione delle impostazioni EEPROM di Arduino: 5 passaggi
Inizializzazione delle impostazioni EEPROM di Arduino: 5 passaggi

Video: Inizializzazione delle impostazioni EEPROM di Arduino: 5 passaggi

Video: Inizializzazione delle impostazioni EEPROM di Arduino: 5 passaggi
Video: Realizziamo insieme software e hardware di un programmatore di EEPROM con Arduino MEGA - Parte 2 2024, Dicembre
Anonim
Image
Image
Che cos'è una EEPROM?
Che cos'è una EEPROM?

Ciao a tutti, Ogni Arduino ha una piccola memoria interna chiamata EEPROM. Puoi usarlo per memorizzare le impostazioni per il tuo progetto in cui i valori scelti verranno mantenuti tra i cicli di alimentazione e saranno lì la prossima volta che accendi Arduino. Ho un bel trucco che ti insegnerà come iniziare una serie di valori predefiniti alla tua prima esecuzione, quindi resta nei paraggi per scoprire come.

Passaggio 1: cos'è una EEPROM?

Che cos'è una EEPROM?
Che cos'è una EEPROM?

Una EEPROM è una piccola memoria, i cui valori vengono mantenuti anche quando la scheda Arduino è spenta. Si comporta come un piccolo disco rigido in modo da poter memorizzare i parametri per la prossima volta che accendi il dispositivo. A seconda del tipo di scheda Arduino, avrai a disposizione una diversa quantità di spazio di archiviazione su ciascuna, quindi ad esempio Uno ha 1024 byte, Mega ha 4096 byte e LilyPad ha 512 byte.

È importante notare che tutte le EEPROM hanno un numero limitato di cicli di scrittura. Atmel specifica un'aspettativa di vita di circa 100.000 cicli di scrittura/cancellazione per la EEPROM su Arduino. Questo può sembrare un sacco di scritture, ma può essere facile raggiungere questo limite se stai leggendo e scrivendo in un ciclo. Una volta che una posizione è stata scritta e cancellata troppe volte, può iniziare a diventare inaffidabile. Potrebbe non restituire i dati corretti o restituire il valore da un bit adiacente.

Passaggio 2: importa la libreria

Importa la libreria
Importa la libreria
Importa la libreria
Importa la libreria
Importa la libreria
Importa la libreria

Per utilizzare questa memoria, includiamo prima la libreria fornita da Arduino. La libreria fornisce due metodi: lettura e scrittura per le azioni corrispondenti. La funzione di lettura accetta l'indirizzo da cui vogliamo leggere, mentre la funzione di scrittura accetta sia l'indirizzo che il valore che vogliamo scrivere.

Nel nostro esempio, l'obiettivo è avere un array di impostazioni pronto ad ogni avvio di Arduino, quindi iniziamo definendo l'array che useremo per l'archiviazione e definendo gli indirizzi per ciascuna delle impostazioni che vogliamo archiviare. In un chip in cui sono disponibili 1024 byte, le posizioni degli indirizzi saranno comprese tra 0 e 1023.

Passaggio 3: impostare il flag di inizializzazione

Imposta il flag di inizializzazione
Imposta il flag di inizializzazione

Il trucco per l'impostazione iniziale dei valori predefiniti per le impostazioni consiste nell'utilizzare uno degli indirizzi come indicatore se le impostazioni sono state inizializzate o meno. Ho usato l'ultima posizione dell'indirizzo per questo poiché spesso non viene utilizzata per nient'altro. La funzione loadSettings controllerà prima questa locazione se il valore ivi memorizzato è un carattere “T” e in caso contrario andrà settando settando, scrivendo i valori iniziali per ognuno di essi. Una volta fatto, ora imposterà il valore della posizione in cui teniamo traccia delle impostazioni inizializzate sul carattere "T" e la prossima volta che accendiamo Arduino, non inizializzeremo più i valori, ma leggeremo invece i dati salvati in il nostro schieramento.

Passaggio 4: aggiornamento delle impostazioni

Aggiornamento delle impostazioni
Aggiornamento delle impostazioni

Per aggiornare i valori possiamo utilizzare la funzione di scrittura come l'avevamo durante l'inizializzazione, ma un modo migliore è usare la funzione di aggiornamento fornita. Quello che fa questa funzione è che prima controlla se il valore che stiamo cercando di salvare è lo stesso già nella EEPROM e se lo è allora non si aggiorna. In tal modo, cerca di ridurre al minimo il numero di operazioni di scrittura per prolungare la vita della EEPROM.

Passaggio 5: divertiti

Divertiti!
Divertiti!
Divertiti!
Divertiti!

Spero che questo Instructable ti sia stato utile e che tu sia riuscito a imparare qualcosa. Il codice sorgente è disponibile sulla mia pagina GitHub e il link è sotto. Se hai suggerimenti, lasciali nei commenti e non dimenticare di iscriverti al mio canale YouTube per altri video simili.

Consigliato: