Obsah:

Inicializácia nastavení Arduino EEPROM: 5 krokov
Inicializácia nastavení Arduino EEPROM: 5 krokov

Video: Inicializácia nastavení Arduino EEPROM: 5 krokov

Video: Inicializácia nastavení Arduino EEPROM: 5 krokov
Video: Arduino 64 Step Sequencer с минимальным аппаратным обеспечением, адаптированный из Drum Sequencer 2024, Júl
Anonim
Image
Image
Čo je to EEPROM?
Čo je to EEPROM?

Ahoj všetci, Každé Arduino má malú vstavanú pamäť s názvom EEPROM. Toto môžete použiť na uloženie nastavení pre váš projekt, kde budú zvolené hodnoty zachované medzi cyklami napájania a budú tam pri ďalšom zapnutí Arduina. Mám skvelý trik, ktorý vás naučí, ako môžete pri prvom spustení inicializovať sadu predvolených hodnôt, takže sa držte a zistite, ako na to.

Krok 1: Čo je to EEPROM?

Čo je to EEPROM?
Čo je to EEPROM?

EEPROM je malé pamäťové úložisko, ktorého hodnoty sa uchovávajú, aj keď je doska Arduino vypnutá. Funguje to ako malý pevný disk, takže si môžete uložiť parametre pre ďalšie zapnutie zariadenia. V závislosti od typu dosky Arduino budete mať na každom k dispozícii iné množstvo úložiska, takže napríklad Uno má 1024 bajtov, Mega má 4096 bajtov a LilyPad má 512 bajtov.

Je dôležité poznamenať, že všetky EEPROM majú obmedzený počet cyklov zápisu. Atmel uvádza životnosť EEPROM na Arduine približne 100 000 cyklov zápisu/vymazania. Môže to znieť ako veľa zápisov, ale dosiahnuť tento limit môže byť ľahké, ak čítate a píšete v slučke. Akonáhle je miesto mnohokrát zapísané a vymazané, môže začať byť nespoľahlivé. Nesmie vrátiť správne údaje alebo vrátiť hodnotu zo susedného bitu.

Krok 2: Importujte knižnicu

Importovať knižnicu
Importovať knižnicu
Importovať knižnicu
Importovať knižnicu
Importovať knižnicu
Importovať knižnicu

Aby sme mohli používať túto pamäť, najskôr zahrneme poskytnutú knižnicu od Arduina. Knižnica ponúka dve metódy: čítanie a zápis pre príslušné akcie. Funkcia čítania akceptuje adresu, z ktorej chceme čítať, zatiaľ čo funkcia zápisu akceptuje adresu aj hodnotu, ktorú chceme zapísať.

V našom prípade je cieľom mať pri každom štarte Arduina pripravenú sadu nastavení, takže začneme definovaním poľa, ktoré použijeme na ukladanie, a definovaním adries pre každé z nastavení, ktoré chceme uložiť. Na čipe, kde máme k dispozícii 1 024 bajtov, budú adresy adresy od 0 do 1023.

Krok 3: Nastavte inicializačný príznak

Nastavte príznak inicializácie
Nastavte príznak inicializácie

Trik pri počiatočnom nastavení predvolených hodnôt pre nastavenia je použiť jednu z adries ako indikátor, či boli nastavenia inicializované alebo nie. Použil som na to posledné umiestnenie adresy, pretože sa často nepoužíva na nič iné. Funkcia loadSettings najskôr skontroluje toto umiestnenie, ak je v ňom uložená hodnota znak „T“, a ak nie, prejde na nastavenie nastavením, pričom pre každé z nich napíše počiatočné hodnoty. Po dokončení teraz nastaví hodnotu miesta, kde sledujeme inicializované nastavenia, na znak „T“a nabudúce, keď zapneme Arduino, už nebudeme inicializovať hodnoty, ale namiesto toho načítame uložené údaje do naše pole.

Krok 4: Aktualizácia nastavení

Aktualizácia nastavení
Aktualizácia nastavení

Na aktualizáciu hodnôt môžeme použiť funkciu zápisu, ako sme ju mali pri inicializácii, ale lepším spôsobom je použiť poskytnutú funkciu aktualizácie. Táto funkcia robí to, že najskôr skontroluje, či hodnota, ktorú sa pokúšame uložiť, je rovnaká už v EEPROM a ak je, potom sa neaktualizuje. Snaží sa tým minimalizovať počet operácií zápisu, aby sa predĺžila životnosť pamäte EEPROM.

Krok 5: Užite si to

Užite si to!
Užite si to!
Užite si to!
Užite si to!

Dúfam, že vám tento návod bol nápomocný a že ste sa niečo naučili. Zdrojový kód je k dispozícii na mojej stránke GitHub a odkaz je uvedený nižšie. Ak máte nejaké návrhy, nechajte ich dole v komentároch a nezabudnite sa prihlásiť na odber môjho kanála YouTube, kde nájdete ďalšie podobné videá.

Odporúča: