Katika nakala hii, tutaangalia jinsi ya kuandika na kusoma kutoka kwa kumbukumbu ya flash kutumia Arduino kwa kutumia microcircuit 25L8005 kama mfano.
Muhimu
- - chip ya kumbukumbu ya flash na msaada wa SPI;
- - adapta ya kumbukumbu au jopo na faida sifuri (jopo la ZIF);
- - Arduino;
- - kompyuta;
- - kuunganisha waya.
Maagizo
Hatua ya 1
Kwanza, tunahitaji kuifanya ili tuweze kuungana kwa urahisi na microcircuit. Ili kufanya hivyo, unaweza kutumia ama adapta maalum ambayo unapaswa kutengenezea microcircuit, au (ambayo ni bora) tumia jopo la faida-sifuri (kinachojulikana kama jopo la ZIF).
Hatua ya 2
Sasa wacha tuunganishe mchoro wa umeme wa kuunganisha chip ya kumbukumbu ya flash na Arduino. Tutatumia kiolesura cha SPI kwa programu ya kumbukumbu, kwa hivyo tutaunganisha kwenye pini za kawaida:
- CS - pini ya dijiti 10, - MOSI - pini ya dijiti 11, - MISO - pini ya dijiti 12, - SCK - pini ya dijiti 13.
Hatua ya 3
Kabla ya kuandika data kwa kumbukumbu, ni muhimu kufuta sekta au ukurasa ambao tutaandika. Ikiwa hakuna data nyingi za kuandikwa (katika mfano wetu wa mafunzo itakuwa ka 16 tu), basi inatosha kufuta tarafa 1. Kutoka kwa nyaraka za kipenyo kidogo, tunaona kwamba mlolongo wa kufuta ni kama ifuatavyo: weka ruhusa ya kuandika (1 ka), tuma amri ya kufuta (1 ka) na anwani (3 ka), weka marufuku ya kuandika (1 ka). Hii ndio hasa mchoro hapo juu unafanya. Wacha tuipakie kwenye Arduino. Baada ya mchoro kukamilika, gari la kuendesha gari liko tayari kurekodiwa.
Hatua ya 4
Sasa wacha tuandike data. Wacha tuchukue safu ndogo ya ka 16 kama mfano. Kama unavyoona kutoka kwa nyaraka, kwanza unahitaji kuweka ruhusa ya kuandika (1 ka), kisha tuma amri ya kuandika (1 ka), anwani ya kuanzia (ka 3) na data (kwa mfano, ka 16), kwa mwisho kuweka marufuku ya kuandika (1 baiti).
Pakia mchoro kwa Arduino. Baada ya kutekeleza mchoro huu, safu yetu ya majaribio inapaswa kuandikwa ili kuangazia kumbukumbu. Wacha tuangalie ikiwa hii ni kweli.
Hatua ya 5
Wacha tuandike mchoro wa kusoma kaiti 16 kutoka kwa kumbukumbu ya flash. Wacha tuipakie Arduino na tufungue mfuatiliaji wa bandari ya serial. Katika mfuatiliaji, kama inavyotarajiwa, safu yetu, iliyosomwa kutoka kwa kumbukumbu kutumia Arduino, itaonyeshwa mara 1 kwa sekunde.