Ushbu maqolada biz 25L8005 mikrosxemasi misolida Arduino yordamida flesh-xotiraga qanday yozish va o'qishni ko'rib chiqamiz.
Kerakli
- - SPI-ni qo'llab-quvvatlaydigan flesh-xotira chipi;
- - xotira uchun adapter yoki nol koeffitsientli panel (ZIF-panel);
- - Arduino;
- - kompyuter;
- - ulash simlari.
Ko'rsatmalar
1-qadam
Birinchidan, biz uni mikrosxemaga osongina ulanishimiz uchun qilishimiz kerak. Buning uchun siz mikrosxemani lehimlashingiz kerak bo'lgan maxsus adapterdan foydalanishingiz mumkin (yoki afzalroq) nolinchi panelni (ZIF paneli deb nomlangan) ishlatishingiz mumkin.
2-qadam
Keling, flesh-xotira chipini Arduino-ga ulash uchun elektr diagrammasini yig'amiz. Biz xotira dasturlash uchun SPI interfeysidan foydalanamiz, shuning uchun biz standart pinlarga ulanamiz:
- CS - raqamli pin 10, - MOSI - raqamli pin 11, - MISO - raqamli pin 12, - SCK - raqamli pin 13.
3-qadam
Ma'lumotlarni xotiraga yozishdan oldin biz yozmoqchi bo'lgan sektorni yoki sahifani o'chirib tashlash kerak. Agar yoziladigan ma'lumotlar juda ko'p bo'lmasa (bizning o'quv misolimizda u atigi 16 baytdan iborat bo'lsa), unda 1 ta sektorni o'chirish kifoya. Mikrosxemaning hujjatlaridan biz o'chirish ketma-ketligini ko'rayapmiz: yozish uchun ruxsatni o'rnating (1 bayt), o'chirish buyrug'ini (1 bayt) va manzilni (3 bayt) yuboring, yozishni taqiqlang (1 bayt). Bu yuqoridagi eskizning aniq ishidir. Keling, uni Arduino-ga yuklaymiz. Eskiz tugagandan so'ng, flesh-disk yozib olishga tayyor.
4-qadam
Endi ma'lumotlarni yozamiz. Misol tariqasida 16 baytli kichik massivni olaylik. Hujjatlardan ko'rinib turibdiki, avval yozish uchun ruxsatni o'rnatishingiz kerak (1 bayt), so'ngra yozish buyrug'ini (1 bayt), boshlang'ich manzilni (3 bayt) va ma'lumotlarni (bizning misolimizda, 16 bayt) yuboring. oxiri yozishni taqiqladi (1 bayt).
Eskizni Arduino-ga yuklang. Ushbu eskizni bajargandan so'ng, bizning test qatorimiz flesh-xotiraga yozilishi kerak edi. Keling, bu shundaymi yoki yo'qligini tekshirib ko'raylik.
5-qadam
Flesh xotiradan 16 bayt o'qish uchun eskiz yozamiz. Keling, uni Arduino-ga yuklaymiz va ketma-ket port monitorini ochamiz. Monitorda kutilganidek Arduino yordamida xotiradan o'qilgan massivimiz soniyasiga 1 marta aks etadi.