V tem članku si bomo ogledali, kako zapisovati in brati iz bliskovnega pomnilnika z uporabo Arduina z uporabo mikrovezja 25L8005 kot primer.
Potrebno
- - flash pomnilniški čip s podporo SPI;
- - adapter za pomnilnik ali ploščo z ničelnim ojačanjem (plošča ZIF);
- - Arduino;
- - računalnik;
- - priključne žice.
Navodila
Korak 1
Najprej ga moramo narediti tako, da se lahko enostavno povežemo z mikrovezjem. Če želite to narediti, lahko uporabite poseben adapter, na katerega morate spajati mikrovezje, ali (kar je bolje) uporabite ploščo z ničelnim ojačanjem (tako imenovano ploščo ZIF).
2. korak
Zdaj pa sestavimo električni diagram za priključitev bliskovnega pomnilniškega čipa na Arduino. Za programiranje pomnilnika bomo uporabili vmesnik SPI, zato se bomo povezali s standardnimi nožicami:
- CS - digitalni zatič 10, - MOSI - digitalni zatič 11, - MISO - digitalni zatič 12, - SCK - digitalni zatič 13.
3. korak
Pred zapisovanjem podatkov v pomnilnik je treba izbrisati sektor ali stran, na katero bomo pisali. Če ni treba zapisati veliko podatkov (v našem primeru z vajami bo to le 16 bajtov), potem je dovolj, da izbrišete 1 sektor. Iz dokumentacije za mikrovezje vidimo, da je zaporedje brisanja naslednje: nastavite dovoljenje za pisanje (1 bajt), pošljite ukaz za brisanje (1 bajt) in naslov (3 bajte), nastavite prepoved pisanja (1 bajt). Natančno to počne zgornja skica. Naložimo ga v Arduino. Po končani skici je bliskovni pogon pripravljen za snemanje.
4. korak
Zdaj zapišimo podatke. Za primer vzemimo majhno polje 16 bajtov. Kot lahko vidite iz dokumentacije, morate najprej nastaviti dovoljenje za pisanje (1 bajt), nato poslati ukaz za pisanje (1 bajt), začetni naslov (3 bajte) in podatke (v našem primeru 16 bajtov) na konec nastavite prepoved pisanja (1 bajt).
Skico naložite v Arduino. Po izvedbi te skice bi morali biti naš testni niz zapisan v pomnilnik flash. Preverimo, ali je temu tako.
5. korak
Napišimo skico za branje 16 bajtov iz bliskovnega pomnilnika. Naložimo ga v Arduino in odpremo monitor serijskih vrat. Na monitorju bo po pričakovanjih naša matrika, prebrana iz pomnilnika z uporabo Arduina, prikazana 1-krat na sekundo.