Gem en værdi i EEPROM
Skriv og læs indstillinger, der bevares uden strøm.
Gem en værdi i EEPROM er en gratis Arduino & IoT Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Arduino & IoT Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Arduino & IoT Academy-kurset indeholder 4 lektioner i alt.
Hukommelse, der glemmer
Normale variabler ligger i RAM, som tømmes i samme øjeblik, strømmen forsvinder. Hvis en indstilling skal bevares, har du brug for hukommelse, der husker.
Mød EEPROM
EEPROM er en lille lagerblok indbygget i chippen, som bevarer data ved strømtab. Tænk på den som en lille notesblok, hvor det skrevne bliver stående.
Hvor meget plads?
En Arduino Uno giver dig omkring 1024 bytes EEPROM. Pladsen er begrænset, så gem indstillinger og tællere, ikke store logfiler.
Adresser, ikke navne
EEPROM er organiseret i nummererede pladser, der kaldes adresser, og som starter ved 0. Du vælger, hvilken adresse der skal indeholde hver værdi.
Medtag biblioteket
For at bruge det skal du medtage det indbyggede EEPROM-bibliotek øverst i din skitse. Du behøver ikke downloade noget; det følger med IDE’en.
#include <EEPROM.h>Skriv en byte
EEPROM.write gemmer én byte på en adresse. Her gemmer vi tallet 42 på plads 0.
EEPROM.write(0, 42);Læs den tilbage
EEPROM.read henter den byte, du gemte. Læs plads 0, så får du værdien tilbage, selv efter en nulstilling.
byte value = EEPROM.read(0);Én byte indeholder 0 til 255
En enkelt byte gemmer værdier fra 0 til 255. Hvis du vil gemme et større tal, deler du det op på flere adresser.
Gem større værdier nemt
Til ints, floats eller structs skal du bruge EEPROM.put og EEPROM.get. De håndterer automatisk opdelingen i bytes for dig.
int score = 1500;
EEPROM.put(0, score);Skrivninger slider hukommelsen
EEPROM tåler omkring 100.000 skrivninger pr. celle. Skriv ikke i hvert gennemløb, ellers slider du den hurtigt op.
Skriv kun ved ændringer
Brug EEPROM.update i stedet for write. Den springer skrivningen over, når værdien er uændret, så hukommelsen skånes.
EEPROM.update(0, 42);Hurtigt tjek
Lad os se på, hvorfor vi overhovedet bruger EEPROM.
Opsummering: Vedvarende lagring
Du så EEPROM som ikke-flygtig hukommelse, skrev og læste bytes efter adresse og lærte at begrænse antallet af skrivninger. Dine indstillinger kan nu bevares! 💾
Lær C++ med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 30
- Lektioner
- 120
Ofte stillede spørgsmål
Er lektionen “Gem en værdi i EEPROM” gratis?
Ja — hele teksten til “Gem en værdi i EEPROM” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Arduino & IoT Academy-kurset, skal du opgradere til CoddyKit PRO. Arduino & IoT Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Gem en værdi i EEPROM”?
Skriv og læs indstillinger, der bevares uden strøm. Du øver dig i Arduino & IoT Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Arduino & IoT Academy?
Der kræves ingen tidligere erfaring. Arduino & IoT Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.
Hvor lang tid tager lektionen “Gem en værdi i EEPROM”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Arduino & IoT Academy-lektion?
Ja. Alle Arduino & IoT Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Hvorfor knapper »bouncer«
- Fjern kontaktprel med millis()
- Gem en værdi i EEPROM
- Husk en tæller efter nulstilling