Cum Se Scrie și Se Citește Memoria Flash Folosind Arduino

Cuprins:

Cum Se Scrie și Se Citește Memoria Flash Folosind Arduino
Cum Se Scrie și Se Citește Memoria Flash Folosind Arduino

Video: Cum Se Scrie și Se Citește Memoria Flash Folosind Arduino

Video: Cum Se Scrie și Se Citește Memoria Flash Folosind Arduino
Video: ESP32 Flash Memory - Store Permanent Data (Write and Read) 2024, Decembrie
Anonim

În acest articol, vom analiza cum să scrieți și să citiți din memoria flash folosind un Arduino folosind microcircuitul 25L8005 ca exemplu.

Cum se scrie și se citește memoria flash folosind Arduino
Cum se scrie și se citește memoria flash folosind Arduino

Necesar

  • - cip de memorie flash cu suport SPI;
  • - un adaptor pentru memorie sau un panou cu câștig zero (panoul ZIF);
  • - Arduino;
  • - calculator;
  • - conectarea firelor.

Instrucțiuni

Pasul 1

În primul rând, trebuie să o realizăm astfel încât să ne putem conecta cu ușurință la microcircuit. Pentru a face acest lucru, puteți utiliza fie un adaptor special la care trebuie să lipiți microcircuitul, fie (ceea ce este de preferat) utilizați un panou cu câștig zero (așa-numitul panou ZIF).

Cip de memorie flash pe un panou ZIF
Cip de memorie flash pe un panou ZIF

Pasul 2

Acum să combinăm schema electrică pentru conectarea cipului de memorie flash la Arduino. Vom folosi interfața SPI pentru programarea memoriei, așa că ne vom conecta la pinii standard:

- CS - pin digital 10, - MOSI - pin digital 11, - MISO - pin digital 12, - SCK - pin digital 13.

Diagrama conectării memoriei Flash la Arduino
Diagrama conectării memoriei Flash la Arduino

Pasul 3

Înainte de a scrie date în memorie, este necesar să ștergeți sectorul sau pagina pe care urmează să scriem. Dacă nu sunt multe date de scris (în exemplul nostru de tutorial vor fi doar 16 octeți), atunci este suficient să ștergeți 1 sector. Din documentația pentru microcircuit, vedem că secvența de ștergere este după cum urmează: setați permisiunea de scriere (1 octet), trimiteți comanda de ștergere (1 octet) și adresa (3 octeți), setați interdicția de scriere (1 octet). Exact asta face schița de mai sus. Să-l încărcăm în Arduino. După finalizarea schiței, unitatea flash este gata pentru înregistrare.

Sectorul bliț șterge schița
Sectorul bliț șterge schița

Pasul 4

Acum să scriem datele. Să luăm ca exemplu o mică matrice de 16 octeți. După cum puteți vedea din documentație, mai întâi trebuie să setați permisiunea de scriere (1 octet), apoi să trimiteți comanda de scriere (1 octet), adresa de pornire (3 octeți) și datele (în exemplul nostru, 16 octeți), la sfârșitul a stabilit interdicția de scriere (1 octet).

Încărcați schița pe Arduino. După executarea acestei schițe, matricea noastră de test ar fi trebuit să fie scrisă în memoria flash. Să verificăm dacă este așa.

O schiță de scriere a unei matrice de octeți în memoria flash
O schiță de scriere a unei matrice de octeți în memoria flash

Pasul 5

Să scriem o schiță pentru a citi 16 octeți din memoria flash. Să-l încărcăm în Arduino și să deschidem monitorul portului serial. Pe monitor, așa cum era de așteptat, matricea noastră, citită din memorie folosind Arduino, va fi afișată de 1 dată pe secundă.

Recomandat: