EEPROM: vse, kar morate vedeti o tem spominu

EEPROM

Če ste izdelovalec in izvajate nekaj projektov DIY, v katerih morate delati s pomnilnikom, zagotovo že veste, kako delujejo različni spomini, ki jih integrira Arduino, na primer flash (trajni, kjer sta shranjena skica in zagonski nalagalnik), SRAM (hiter in spremenljiv pomnilnik, kjer programske spremenljivke ostanejo med obdelavo), in EEPROM (nehlapno in se lahko uporablja za shranjevanje informacij o ponovnem zagonu).

No, poleg EEPROM-a, ki je vključen v Arduino, lahko uporabite tudi zunanje čipe tovrstni spominKot še eno komponento. Niti jih ni težko razumeti niti z njimi komunicirati, da bi ustvarili dostop (pisanje in branje) ali posodobitve shranjenih informacij. Tu boste našli vse, kar morate vedeti, da začnete delati s tovrstnimi spomini ...

Kaj je EEPROM?

STMicroelectronics EEPROM

STMicroelectronics EEPROM

La EEPROM (električno izbrisljiv programabilen rdeči pomnilnik) To je vrsta pomnilnika ROM, to je trajni pomnilnik, v katerem se bodo podatki trajno shranili, tudi če je napajalnik odstranjen. To jih postavi na drugo stran RAM-ov (pomnilnik z naključnim dostopom), ki izgubijo vse svoje podatke, ko niso napajani.

V primeru EEPROM-a ne gre za pomnilnik, kakršen je ROM, v katerem so podatki zabeleženi in jih ni več mogoče spreminjati. EEPROM, kot flash, prizna, da je bil spremenjen po potrebi. To pomeni, da je nekatere podatke mogoče shraniti in izbrisati, da shranijo različne.

Pravzaprav je, kot kažejo njegove kratice, a električno izbrisljiv pomnilnik (električno izbrisljivo) za reprogramiranje. To se razlikuje od drugih vrst ROM-ov, ki jih je mogoče izbrisati tudi kot EPROM-e, vendar se v tem primeru električna energija ne uporablja za brisanje pomnilniških celic, temveč so na čipu imeli kremenčevo "okno", da lahko projicirajo UV-svetlobo. ki je bila izbrisana.

Ta značilnost EPROM postalo jim je nekoliko neprijetno, saj so morali te žarke projicirati, da jih izbrišejo. In kar je najhuje, lahko bi jih slučajno izbrisali, če bi bili izpostavljeni tovrstnemu sevanju. V EEPROM-jih je to mogoče narediti prek napetosti na bolj udoben in varen način.

Notranja struktura

Diagram EEPROM

Vir: Researchgate.net

Za delovanje EEPROM-a so potrebne zelo posebne pomnilniške celice. Izdelani so z uporabo tranzistorjev tipa MOS, vendar imajo plavajoča vrata v primerjavi s tradicionalnimi MOSFET-ji. Ti novi tranzistorji sledijo strukturi, imenovani SAMOS, njegovo normalno stanje je odrezano in izhod bo vedno zagotovil logično 1.

Te celice EEPROM lahko preberemo neomejeno število krat, vendar je v kolikokrat jih je mogoče izbrisati in ponovno programirati, kot se dogaja mnogim drugim. Tudi to se zgodi, da utripa, zato se toliko govori o trajnosti trdih diskov SSD, pogonov pisala itd.

V primeru SAMOS je ta omejitev med 100.000 in 1.000.000 krat. Po tem bodo propadli. Mimogrede, nekatere strukture, ki jih je ustvaril stari znanec, eden od velikanov: dr. Fujio Masuoka iz Toshibe (1984), ki je ustvaril tudi druge pomembne spomine in polprevodniške strukture ... Vendar pa je prvi čip, lansiran na na trgu je bil Intelov od leta 1988, NOP tipa EEPROM.

Poleg tega morate vedeti, da je ta vrsta pomnilnika običajno povezana s procesorji ali krmilniki avtobus s protokoli, kot je SPI, I2Citd. V primeru MCU-jev (mikrokrmilnikov) je običajno vgrajen znotraj, kot pri nekaterih DSP-jih, za doseganje večje hitrosti.

Kot je razvidno na zgornji sliki, Tranzistorji SAMOS ki tvorijo spominske celice, so v tem primeru združeni v parih. Ena od vrstic, pritrjenih na vrata nekaterih tranzistorjev, deluje kot izbirna črta, ki označuje ali signalizira to črto za dostop (branje in pisanje), druga pa bo tista, ki shrani bit informacij (0 ali 1).

Tranzistorji so poravnani tako, da tvorijo zahtevane dolžine besed (4-bit, 8-bit, 16-bit, ...) in toliko besed kot zmogljivost želite imeti EEPROM (npr .: dolžina besed je lahko 64-bitna in ima 16 vrstic = 1024 bitov, to je 1 kb).

Kako deluje EERPOM?

Kot lahko vidite na strani, za izvedbo različne naloge, napetost vrat, vira in odtoka mora biti konkretna:

  • Vrata pri 20v in odtok pri 20v = programiranje (pisanje) pomnilniške celice za shranjevanje želenega bita.
  • Vrata pri 0v in odtok pri 20v = počistite shranjeni bit, da ga lahko znova programirate z drugo vrednostjo.
  • Vrata pri 5v in odtok pri 5v = preberite shranjeni bit. Ker je napetost vrat nižja od napetosti zapisa, shranjena vrednost ne bo spremenjena. Enako se zgodi z odtočno napetostjo, ki je nižja in shranjeni bit ne bo izbrisan.

Zaključek: EEPROM-i uporabljajo nekaj napetosti "Visoko" za brisanje in pisanje, medtem ko za branje uporablja nižje napetosti ...

Kupite EEPROM in sodelujte z njim

STMicroelectronics, francoski proizvajalec mikroelektronike, je na prvem mestu pri tej vrsti čipov EEPROM, čeprav obstaja veliko drugih proizvajalcev, kot je Microchip. Ti žetoni so običajno precej poceni.

Če se odločite uporabite enega od teh čipov, videli bi proizvajalca in model ter poiskali Obrazec da si ogledate vsa priporočila proizvajalca, saj se lahko med seboj razlikujejo. Na primer, določili bodo napetosti, s katerimi deluje, pinoutitd. Tako lahko svoj projekt pravilno konfigurirate.

Glede na velikost in model je lahko bolj ali manj bori. Da pa bi dobili idejo, bi lahko tipični IC 24EP512 EEPROM IC sestavljali:

  • Zatiči 1 (A0), 2 (A1) in 3 (A3), uporabljeni v konfiguraciji, so izbirni zatiči.
  • Zatič 4 (Vss / GND), povezan z zemljo.
  • Pin 5 (SDA) za serijske podatke za komunikacijo I2C.
  • Zatič 6 (SCL) za uro za I2C.
  • Pin 7 (WP), zaščita pred pisanjem ali zaščita pred pisanjem. Če je povezan z GND, bo pisanje omogočeno. Če se poveže z Vcc, je onemogočen.
  • Zatič 8 (Vcc), priključen na napajanje.

Kot za Tehnične specifikacije tega čipa:

  • 512K (64 × 8)
  • 128-bajtni medpomnilnik za pisanje
  • Delovna napetost: 1.8 do 5.5 v
  • Bralni tok: 40uA
  • Komunikacijsko vodilo: I2C
  • Cikel pisanja: 5 ms
  • Združljivost ure: 100-400Khz
  • Trajnost: 10.000.000 ciklov
  • Lahko kaskadno poveže do 8 naprav
  • Pakiranje: 8-polni DIP, SOIJ, SOIC in TSSOP.

Kje kupiti

za kupite čipe EEPROM, si lahko ogledate ta priporočila:

Uporaba Arduino EEPROM-a

Posnetek zaslona Arduino IDE

Če želite začeti sodelovati z EEPROM-om, lahko preizkusite tudi tisto na plošči Arduino. Lahko ga programiramo na preprost način, da na logični in programski ravni razumemo, kako lahko deluje.

Primer shranjevanja spremenljivke

//Almacenar un valor en la EEPROM
#include <EEPROM.h>
 
float sensorValue;
int eepromaddress = 0;
 
//Función para simular lectura de un sensor o pin
float ReadSensor()
{
  return 10.0f;
}
 
void setup()
{
}
 
void loop()
{
  sensorValue = ReadSensor(); //Lectura simulada del valor
  EEPROM.put( eepromaddress, sensorValue );  //Escritura del valor en la EEPROM
  eepromaddress += sizeof(float);  //Apuntar a la siguiente posición a escribir
  if(eepromaddress >= EEPROM.length()) eepromaddress = 0;  //Comprueba que no existe desbordamiento 
 
  delay(30000); //Espera 30s
}

Primer branja podatkov iz EEPROM-a

//Leer una variable de coma flotante
#include <EEPROM.h>
 
struct MyStruct{
  float field1;
  byte field2;
  char name[10];
};
 
void setup(){
  
  float f;
  int eepromaddress = 0; //La lectura comienza desde la dirección 0 de la EEPROM    
  EEPROM.get( eepromaddress, f );
  Serial.print( "Dato leído: " );
  Serial.println( f, 3 );  
 
  eepromaddress += sizeof(float);
}
 
void loop()
{
}

Primer posodobitve vrednosti, prerazporeditev

//Actualizar valor de la EEPROM escribiendo el dato entrante por la A0
#include <EEPROM.h>
 
int eepromaddress = 0;
 
void setup()
{
}
 
void loop()
{
   int val = analogRead(0) / 4;
   EEPROM.update(eepromaddress, val);
  
  eepromaddress += sizeof(int);
  if(address == EEPROM.length()) eepromaddress = 0;
 
  delay(10000);  //Espera de 10 segundos
}

Več informacij - Brezplačni tečaj Arduino


Bodite prvi komentar

Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.