इस लेख में, हम एक उदाहरण के रूप में 25L8005 microcircuit का उपयोग करके Arduino का उपयोग करके फ्लैश मेमोरी से लिखने और पढ़ने का तरीका देखेंगे।
ज़रूरी
- - एसपीआई समर्थन के साथ फ्लैश मेमोरी चिप;
- - मेमोरी के लिए एडेप्टर या शून्य लाभ वाला पैनल (ZIF- पैनल);
- - अरुडिनो;
- - संगणक;
- - तारों को जोड़ना।
अनुदेश
चरण 1
सबसे पहले, हमें इसे बनाने की आवश्यकता है ताकि हम आसानी से माइक्रोक्रिकिट से जुड़ सकें। ऐसा करने के लिए, आप या तो एक विशेष एडेप्टर का उपयोग कर सकते हैं, जिसमें आपको माइक्रोक्रिकिट को मिलाप करना होगा, या (जो बेहतर है) एक शून्य-लाभ पैनल (तथाकथित ZIF पैनल) का उपयोग करें।
चरण दो
अब फ्लैश मेमोरी चिप को Arduino से जोड़ने के लिए विद्युत आरेख को एक साथ रखते हैं। हम मेमोरी प्रोग्रामिंग के लिए SPI इंटरफ़ेस का उपयोग करेंगे, इसलिए हम मानक पिन से जुड़ेंगे:
- सीएस - डिजिटल पिन 10, - मोसी - डिजिटल पिन 11, - MISO - डिजिटल पिन 12, - एससीके - डिजिटल पिन 13.
चरण 3
मेमोरी में डेटा लिखने से पहले जिस सेक्टर या पेज पर हम लिखने जा रहे हैं, उसे मिटा देना जरूरी है। यदि लिखने के लिए बहुत अधिक डेटा नहीं है (हमारे ट्यूटोरियल उदाहरण में यह केवल 16 बाइट्स होगा), तो यह 1 सेक्टर को मिटाने के लिए पर्याप्त है। माइक्रोक्रिकिट के लिए प्रलेखन से, हम देखते हैं कि मिटाने का क्रम इस प्रकार है: लिखने की अनुमति (1 बाइट) सेट करें, इरेज़ कमांड (1 बाइट) और पता (3 बाइट्स) भेजें, लेखन निषेध सेट करें (1 बाइट). यह वही है जो उपरोक्त स्केच करता है। आइए इसे Arduino में लोड करें। स्केच पूरा होने के बाद, फ्लैश ड्राइव रिकॉर्डिंग के लिए तैयार है।
चरण 4
अब डेटा लिखते हैं। आइए एक उदाहरण के रूप में 16 बाइट्स की एक छोटी सी सरणी लें। जैसा कि आप प्रलेखन से देख सकते हैं, पहले आपको लिखने की अनुमति (1 बाइट) सेट करने की आवश्यकता है, फिर राइट कमांड (1 बाइट), प्रारंभिक पता (3 बाइट्स) और डेटा (हमारे उदाहरण में, 16 बाइट्स) भेजें। अंत में लेखन निषेध (1 बाइट) सेट करें।
स्केच को Arduino पर अपलोड करें। इस स्केच को निष्पादित करने के बाद, हमारे परीक्षण सरणी को फ्लैश मेमोरी में लिखा जाना चाहिए था। आइए देखें कि क्या ऐसा है।
चरण 5
आइए फ्लैश मेमोरी से 16 बाइट्स पढ़ने के लिए एक स्केच लिखें। आइए इसे Arduino में लोड करें और सीरियल पोर्ट मॉनिटर खोलें। मॉनिटर में, जैसा कि अपेक्षित था, हमारी सरणी, Arduino का उपयोग करके मेमोरी से पढ़ी गई, प्रति सेकंड 1 बार प्रदर्शित की जाएगी।