Paano Magsulat At Magbasa Ng Flash Memory Gamit Ang Arduino

Talaan ng mga Nilalaman:

Paano Magsulat At Magbasa Ng Flash Memory Gamit Ang Arduino
Paano Magsulat At Magbasa Ng Flash Memory Gamit Ang Arduino

Video: Paano Magsulat At Magbasa Ng Flash Memory Gamit Ang Arduino

Video: Paano Magsulat At Magbasa Ng Flash Memory Gamit Ang Arduino
Video: How to Install Software on a USB Flash Drive 2024, Mayo
Anonim

Sa artikulong ito, titingnan namin kung paano magsulat at magbasa mula sa memorya ng flash gamit ang isang Arduino gamit ang 25L8005 microcircuit bilang isang halimbawa.

Paano magsulat at magbasa ng flash memory gamit ang Arduino
Paano magsulat at magbasa ng flash memory gamit ang Arduino

Kailangan

  • - flash memory chip na may suporta sa SPI;
  • - isang adapter para sa memorya o isang panel na may zero gain (ZIF-panel);
  • - Arduino;
  • - computer;
  • - pagkonekta ng mga wire.

Panuto

Hakbang 1

Una, kailangan nating gawin ito upang madali kaming makakonekta sa microcircuit. Upang magawa ito, maaari mong gamitin ang alinman sa isang espesyal na adapter kung saan kailangan mong maghinang ng microcircuit, o (kung saan mas mabuti) gumamit ng isang zero-gain panel (ang tinaguriang ZIF panel).

Flash memory chip sa isang panel ng ZIF
Flash memory chip sa isang panel ng ZIF

Hakbang 2

Ngayon ay pagsamahin natin ang diagram ng elektrikal para sa pagkonekta ng flash memory chip sa Arduino. Gagamitin namin ang interface ng SPI para sa pag-program ng memorya, kaya makakonekta kami sa karaniwang mga pin:

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

Diagram ng pagkonekta ng memorya ng Flash sa Arduino
Diagram ng pagkonekta ng memorya ng Flash sa Arduino

Hakbang 3

Bago isulat ang memorya sa memorya, kinakailangan na burahin ang sektor o pahina kung saan kami magsusulat. Kung walang maraming data na maisusulat (sa aming halimbawa ng tutorial na ito ay magiging 16 bytes lamang), sapat na upang mabura ang 1 sektor. Mula sa dokumentasyon para sa microcircuit, nakikita namin na ang pagkakasunud-sunod ng burado ay ang mga sumusunod: itakda ang pahintulot sa pagsulat (1 byte), ipadala ang utos na burahin (1 byte) at ang address (3 bytes), itakda ang pagbabawal ng pagsulat (1 byte). Ito mismo ang ginagawa ng sketch sa itaas. I-load natin ito sa Arduino. Matapos makumpleto ang sketch, handa na ang flash drive para sa pagrekord.

Burahin ng sektor ng flash ang sketch
Burahin ng sektor ng flash ang sketch

Hakbang 4

Ngayon ay isulat natin ang data. Kumuha tayo ng isang maliit na hanay ng 16 bytes bilang isang halimbawa. Tulad ng nakikita mo mula sa dokumentasyon, kailangan mo munang itakda ang pahintulot sa pagsulat (1 byte), pagkatapos ay ipadala ang sulatin ng pagsulat (1 byte), ang panimulang address (3 bytes) at data (sa aming halimbawa, 16 bytes), sa itakda ng pagtatapos ang pagbabawal ng pagsulat (1 byte).

I-upload ang sketch sa Arduino. Matapos maipatupad ang sketch na ito, ang aming pagsubok na array ay dapat na nakasulat sa flash memory. Suriin natin kung ito talaga.

Isang sketch ng pagsusulat ng isang hanay ng mga byte upang flash memory
Isang sketch ng pagsusulat ng isang hanay ng mga byte upang flash memory

Hakbang 5

Sumulat tayo ng isang sketch upang mabasa ang 16 bytes mula sa flash memory. I-load natin ito sa Arduino at buksan ang serial port monitor. Sa monitor, tulad ng inaasahan, ang aming array, na basahin mula sa memorya gamit ang Arduino, ay ipapakita nang 1 oras bawat segundo.

Inirerekumendang: