1 000 000 poistosykliä on paljon, mutta voit polttaa sen nopeasti, kun tajusit. Kerran sekunnissa tapahtuvien lukemien kohdalla se saavutettaisiin 11,6 päivässä.
Kuten jo mainittiin, tallentaminen RAM-muistiin ja kirjoittaminen EEPROM: lle vain satunnaisesti on yksi tapa.
Toinen tapa on käyttää FLASH EEPROMia. FLASHilla on merkitystä vain poistomäärällä. Voit kirjoittaa monta kertaa kääntämällä 1: t 0: ksi ilman rangaistusta. Jos sinulla on vain muutama lukema ja suhteellisen suuri määrä FLASH-tilaa, voit käyttää tietueita.
Poista tiedot jättäen kaikki 0xFF: t.
Kirjoituksia varten: Kirjoita peräkkäin EEPROM-tilaan. Kun olet täynnä, poista kaikki ja aloita alusta. Jos data-arvo on kaikki 0xFFs, sinun on vaihdettava se yhdellä LSB: llä, jotta et näyttäisi tyhjältä tietueelta. Sinun tapauksessasi se olisi joka tapauksessa ylivuoto.
Lukemille: Etsi all-0xFFs-tietue ja varmuuskopioi yksi. Jos saavutat lopun eikä all-0xFFs-ennätystä ole, viimeinen sijainti on se.
FLASH-kestävyys on yleensä matalampi ... sanotaan 100 000. Yksinkertaisella 1 Mbit: n FLASH-muistilla olisi kuitenkin tarpeeksi tilaa lähes 104 vuoden säilytykseen tällä menetelmällä.
Tällaisen kaupallisen tuotteen osalta EEPROM-kirjoituksissa on oltava virtakatkosturvallisuus. Joko lisää virtakatkosten havaitseminen ja riittävä varmuuskopiointiteho (supercap, mikä tahansa) kirjoitustoiminnon suorittamiseksi ... tai suorita kirjoittaminen vikaturvallisella tavalla. Tätä varten voit jakaa EEPROMin kahteen puolikkaaseen, vuorotellen kirjoitusten puoliskojen välillä ja kirjoittaa CRC tietueen kanssa. Luku etsii uusinta tietuetta kummaltakin sivulta, jolla on kelvollinen CRC. Puolikkaiden on oltava poistolohkotason turvallisuuden vuoksi.
Apuohjelmat kuitenkin yleensä haluavat enemmän kuin vain käytetyn kokonaisenergian. Harkitse, kuinka pidät kirjaa siitä, kuinka monta lukua sekunnissa saat, ja tallenna myös nämä numerot. Useimmat apuohjelmat veloittavat kaupallisia asiakkaita myös tarvitsemansa enimmäistehon perusteella noin 15 minuutin välein.