EEPROM: sve što trebate znati o ovoj memoriji

EEPROM

Ako ste proizvođač i radite neke DIY projekte u kojima morate raditi s memorijom, zasigurno već znate kako funkcioniraju različite uspomene koje Arduino integrira, poput flash-a (trajnog mjesta na kojem se čuvaju skica i bootloader) SRAM (brza i hlapljiva memorija u kojoj programske varijable ostaju tijekom obrade) i EEPROM (nehlapljiv i može se koristiti za pohranu podataka o ponovnom pokretanju).

Pa, osim EEPROM-a koji je uključen u Arduino, možete koristiti i vanjske čipove od ova vrsta sjećanjaKao još jedna komponenta. Nisu komplicirani za razumijevanje niti interakciju s njima radi generiranja pristupa (pisanje i čitanje) ili ažuriranja pohranjenih podataka. Ovdje ćete pronaći sve što trebate znati da biste počeli raditi s ovim vrstama sjećanja ...

Što je EEPROM?

STMicroelectronics EEPROM

STMicroelectronics EEPROM

La EEPROM (električno izbrisljiva programabilna crvena memorija) To je vrsta ROM memorije, odnosno trajne memorije u kojoj će se podaci trajno čuvati, čak i ako je napajanje uklonjeno. To ih stavlja na drugu stranu RAM-a (Random Access Memory), koji gube sve svoje podatke kad nisu napajani.

U slučaju EEPROM-a, to nije memorija poput ROM-a, u koju se podaci bilježe i više se ne mogu mijenjati. EEPROM, poput bljeskalice, priznaje da je izmijenjen po potrebi. Drugim riječima, neki se podaci mogu pohraniti i izbrisati za pohranu različitih.

Zapravo, kao što pokazuju njeni akronimi, to je a električno izbrisljiva memorija (električno izbrisljivo) za reprogramiranje. To se razlikuje od ostalih vrsta ROM-a, koji se također mogu izbrisati poput EPROM-a, ali u ovom slučaju struja se ne koristi za brisanje memorijskih ćelija, već su na čipu imali kvarcni "prozor" kako bi mogli projicirati UV svjetlo. koje je izbrisano.

Ta karakteristika EPROM postalo im je pomalo neugodno, morali su projicirati te zrake kako bi ih izbrisali. I, što je najgore od svega, mogli bi se slučajno izbrisati ako bi bili izloženi ovoj vrsti zračenja. U EEPROM-ovima je dopušteno to raditi putem napona, na ugodniji i sigurniji način.

Unutarnja struktura

EEPROM dijagram

Izvor: Researchgate.net

Da bi EEPROM mogao raditi, potrebne su vrlo posebne memorijske stanice. Grade se pomoću MOS tranzistora, ali imaju plutajuća vrata u usporedbi s tradicionalnim MOSFET-ovima. Ti novi tranzistori slijede strukturu poznatu kao SAMOS, a njegovo normalno stanje je odsječeno i izlaz će uvijek pružiti logični 1.

Te se EEPROM stanice mogu čitati neograničen broj puta, ali je ograničen na koliko se puta mogu izbrisati i reprogramirati, kao što se to događa mnogim drugima. To se također događa kao bljeskalica, zbog čega se toliko govori o trajnosti SSD tvrdih diskova, olovaka itd.

U slučaju SAMOS-a, ovo je ograničenje između 100.000 1.000.000 i XNUMX XNUMX XNUMX puta. Nakon toga neće uspjeti. Inače, neke strukture koje je stvorio stari znanac, jedan od velikana: dr. Fujio Masuoka iz Toshibe (1984.), koji je stvorio i druge važne uspomene i poluvodičke strukture ... Međutim, prvi čip lansiran na tržište je bilo Intelovo iz 1988. godine, EOR memorije NOR tipa.

Uz to, morate znati da je ova vrsta memorije obično povezana s procesorima ili kontrolerima autobus s protokolima poput SPI, I2Citd. U slučaju MCU-a (mikrokontrolera), on je obično integriran iznutra, kao u nekim DSP-ima, radi postizanja veće brzine.

Kao što se može vidjeti na gornjoj slici, Tranzistori SAMOS koji tvore memorijske stanice, u tom su slučaju grupirani u parove. Jedna od linija koja je pričvršćena na vrata nekih tranzistora djeluje kao odabirna crta za označavanje ili signaliziranje te linije za pristup (čitanje i pisanje), a druga će biti ona koja pohranjuje bit podataka (0 ili 1).

Tranzistori su poravnati tako da tvore potrebne duljine riječi (4-bitne, 8-bitne, 16-bitne, ...) i onoliko riječi koliko kapacitet želite imati EEPROM (npr .: mogu biti 64-bitne duljine riječi i sa 16 redaka = 1024 bita, to jest 1 kb).

Kako funkcionira EERPOM?

Kao što vidite sa strane, za izvođenje različite zadatke, napon vrata, odvoda i odvoda mora biti konkretan:

  • Vrata na 20v i odvod na 20v = programiranje (pisanje) memorijske ćelije za spremanje željenog bita.
  • Vrata na 0v i odvod na 20v = očisti pohranjeni bit tako da se može ponovno programirati s drugom vrijednošću.
  • Vrata na 5v i ispust na 5v = pročitajte pohranjeni bit. Kako je napon vrata niži od napona zapisivanja, pohranjena vrijednost neće se mijenjati. Isto se događa s naponom odvoda, budući da je niži, pohranjeni bit neće biti izbrisan.

Zaključak, EEPROM-ovi koriste nekoliko naponi "Visoko" za brisanje i pisanje, dok za čitanje koristi niže napone ...

Kupite EEPROM i radite s njim

STMicroelectronics, francuski proizvođač mikroelektronike, broj je jedan u ovoj vrsti EEPROM čipova, iako postoje mnogi drugi proizvođači, kao što je Microchip. Ti su čipovi obično prilično jeftini.

Ako se odlučite koristite jedan od ovih čipova, trebali biste vidjeti proizvođača i model i potražiti njihov tablični kako biste vidjeli sve preporuke proizvođača, jer se one mogu razlikovati od jedne do druge. Na primjer, oni će odrediti napone s kojima to radi, pinoutitd. Tako možete pravilno konfigurirati svoj projekt.

Ovisno o veličini i modelu, može imati više ili manje borovi. Ali da biste imali ideju, tipični 24LC512 EEPROM IC čip mogao bi se sastojati od:

  • Igle 1 (A0), 2 (A1) i 3 (A3) koje se koriste u konfiguraciji su igle za odabir.
  • Pin 4 (Vss / GND) spojen na masu.
  • Pin 5 (SDA), za serijske podatke za I2C komunikaciju.
  • Pin 6 (SCL), za sat za I2C.
  • Pin 7 (WP), zaštita od pisanja ili zaštita od pisanja. Ako je spojen na GND, pisanje će biti omogućeno. Ako se poveže s Vcc-om, onemogućen je.
  • Pin 8 (Vcc), spojen na napajanje.

Kao Tehničke specifikacije ovog čipa:

  • 512K (64 × 8)
  • 128-bajtni međuspremnik za pisanje
  • Operativni napon: 1.8 do 5.5 v
  • Struja čitanja: 40uA
  • Komunikacijska sabirnica: I2C
  • Ciklus pisanja: 5ms
  • Kompatibilnost sata: 100-400Khz
  • Trajnost: 10.000.000 XNUMX XNUMX ciklusa
  • Može se kaskadno pohraniti do 8 uređaja
  • Pakiranje: 8-pinski DIP, SOIJ, SOIC i TSSOP.

Gdje kupiti

u kupiti EEPROM čipove, možete pogledati ove preporuke:

Korištenje Arduino EEPROM-a

Snimka zaslona Arduino IDE-a

Ako želite započeti rad s EEPROM-om, možete isprobati i onaj na svojoj ploči Arduino. Može se programirati na jednostavan način da se na logičkoj i programskoj razini shvati kako to može raditi.

Primjer za spremanje varijable

//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
}

Primjer za čitanje podataka s 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()
{
}

Primjer za ažuriranje vrijednosti, ponovni raspored

//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
}

Više informacija - Besplatni tečaj Arduino


Budite prvi koji će komentirati

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.