1
Την EEProm μπορείς να την κάνεις κάπως έτσι
Δεν είμαι σίγουρος αν η βιβλιοθήκη ελέγχει αν τα δεδομένα είναι ίδια έτσι ώστε να μην κάνει άσκοπα erase/write την ίδια τιμή οπότε καλό είναι να το κάνεις κάπως έτσι και κάθε φορά που θα ξεκινάει αν έχεις αλλάξει τιμή θα γράφει την καινούρια αλλιώς δεν θα γράφει τίποτα. Αν γράφεις κάθε φορά που αλλάζει η τιμή απ' τον encoder πολύ γρήγορα θα καταστραφούν οι συγκεκριμένες διευθύνσεις. Δεν "καίγονται" απλώς αναπτύσσουν φορτίο και δεν μπορείς να σβήσεις.Κώδικας:void Program::writeEEPROMData() { EEPROM.put(EEPROM_START_ADDRESS, m_secsCountdown); } int16_t Program::readEEPROMData() { int16_t temp; EEPROM.get(EEPROM_START_ADDRESS, temp); if(temp< 0) temp= 1; else if(temp> 9999) temp= 9999; return temp; } void Program::UpdateEEPROMData() { if(readEEPROMData() != m_secsCountdown) writeEEPROMData(); }
Μερικές φορές χρησιμοποιούν και τεχνικές έτσι ώστε να αλλάζει κάθε φορά η πρώτη διεύθυνση για να εκμεταλλεύονται όλα τα byte της eeprom αλλά περιττό εδώ.
Επίσης η EEPROM είναι διαφορετική απ' την ROM και συνήθως αποφεύγουμε το σκέτο "Rom" για συντομία γιατί παραπέμπει αλλού. Ο bootloader γράφει στην ROM πχ και πολλά δεδομένα που δεν αλλάζουν κατά την εκτέλεση (string συνήθως) τα βάζουμε στην Rom για να μην τρώνε άσκοπα RAM
Άμα έχεις 30-40 βίντεο και κάποιο μετά γίνει viral θα μαζέψεις πολύ κόσμο στο κανάλι, είναι "light" βίντεο και το βλέπουν άνετα χομπίστες, κυλάει γρήγορα και ομαλά. Συνήθως αυτά που ξεκινάνε "DIY ..." όλα έχουν πολλά views.
*Όταν κάνεις δοκιμή μην ξεχάσεις να βγάλεις τις εκτυπώσεις έτσι ώστε το toner να ακουμπάει το φωτοευαίσθητο