Sisällysluettelo:

Arduino EEPROM -asetusten alustaminen: 5 vaihetta
Arduino EEPROM -asetusten alustaminen: 5 vaihetta

Video: Arduino EEPROM -asetusten alustaminen: 5 vaihetta

Video: Arduino EEPROM -asetusten alustaminen: 5 vaihetta
Video: VL53L1X Лазерный дистанционный датчик времени полета 400 см 2024, Heinäkuu
Anonim
Image
Image
Mikä on EEPROM?
Mikä on EEPROM?

Hei kaikki, Jokaisessa Arduinossa on pieni sisäänrakennettu muisti nimeltä EEPROM. Voit käyttää tätä tallentaaksesi projektisi asetukset, joissa valitut arvot säilytetään käynnistysjaksojen välillä ja ne ovat siellä seuraavan kerran, kun käynnistät Arduinon. Minulla on hieno temppu, joka opettaa sinulle, kuinka voit aloittaa oletusarvojen sarjan ensimmäisellä kerralla, joten pysy selvilläksesi miten.

Vaihe 1: Mikä on EEPROM?

Mikä on EEPROM?
Mikä on EEPROM?

EEPROM on pieni muistitallennus, jonka arvot säilytetään, vaikka Arduino -kortti on sammutettu. Tämä toimii kuin pieni kiintolevy, joten voit tallentaa parametrit seuraavan kerran, kun käynnistät laitteen. Arduino -levyn tyypistä riippuen sinulla on eri määrä tallennustilaa jokaisessa, joten esimerkiksi Unolla on 1024 tavua, Megalla 4096 tavua ja LilyPadilla 512 tavua.

On tärkeää huomata, että kaikilla EEPROM -laitteilla on rajoitettu määrä kirjoitussyklejä. Atmel määrittää Arduinon EEPROM -järjestelmän odotettavissa olevan elinajan, joka on noin 100 000 kirjoitus-/poistosykliä. Tämä saattaa kuulostaa monelta kirjoitukselta, mutta tämän rajan saavuttaminen voi olla helppoa, jos luet ja kirjoitat silmukassa. Kun sijainti on kirjoitettu ja poistettu liian monta kertaa, se voi alkaa muuttua epäluotettavaksi. Se ei ehkä palauta oikeaa dataa tai palauttaa arvoa viereiseltä bitiltä.

Vaihe 2: Tuo kirjasto

Tuo kirjasto
Tuo kirjasto
Tuo kirjasto
Tuo kirjasto
Tuo kirjasto
Tuo kirjasto

Tämän muistin käyttämiseksi sisällytämme ensin Arduinon toimittaman kirjaston. Kirjasto tarjoaa kaksi tapaa: lukea ja kirjoittaa toimintoja varten. Lukutoiminto hyväksyy osoitteen, josta haluamme lukea, kun taas kirjoitusfunktio hyväksyy sekä osoitteen että arvon, jonka haluamme kirjoittaa.

Esimerkissämme tavoitteena on saada joukko asetuksia valmiiksi jokaiseen Arduinon käynnistykseen, joten aloitamme määrittelemällä taulukon, jota aiomme käyttää tallennukseen, ja määrittelemällä osoitteet kullekin tallennettavalle asetukselle. Sirulla, jossa meillä on käytettävissä 1024 tavua, osoitepaikat ovat 0-1023.

Vaihe 3: Aseta alustuslippu

Aseta alustuslippu
Aseta alustuslippu

Asetusten oletusarvojen alkuasetuksen temppu on käyttää jotakin osoitetta osoittimena siitä, onko asetukset alustettu vai ei. Olen käyttänyt tähän viimeistä osoitepaikkaa, koska sitä ei usein käytetä mihinkään muuhun. LoadSettings -toiminto tarkistaa ensin tämän sijainnin, jos siihen tallennettu arvo on "T" -merkki, ja jos ei, se siirtyy asettamalla ja kirjoittamalla alkuarvot kullekin niistä. Kun se on tehty, se asettaa nyt sen paikan arvon, jossa seuraamme alustettuja asetuksia, T -merkiksi, ja seuraavan kerran, kun kytket Arduinon päälle, emme enää aloita arvoja, vaan luemme tallennetut tiedot meidän joukko.

Vaihe 4: Asetusten päivittäminen

Asetusten päivittäminen
Asetusten päivittäminen

Arvojen päivittämiseen voimme joko käyttää kirjoitustoimintoa sellaisena kuin se oli alustuksessa, mutta parempi tapa on käyttää toimitettua päivitystoimintoa. Tämä toiminto tekee sen, että se tarkistaa ensin, onko arvo, jota yritämme tallentaa, sama kuin jo EEPROM -järjestelmässä, ja jos se on, se ei päivity. Näin se yrittää minimoida kirjoitusoperaatioiden määrän EEPROM -käyttöiän pidentämiseksi.

Vaihe 5: Nauti

Nauttia!
Nauttia!
Nauttia!
Nauttia!

Toivon, että tästä ohjeesta oli apua sinulle ja että onnistuit oppimaan jotain. Lähdekoodi löytyy GitHub -sivultani ja linkki on alla. Jos sinulla on ehdotuksia, jätä ne kommentteihin ja muista tilata YouTube -kanavani saadaksesi lisää samanlaisia videoita.

Suositeltava: