ARDUINO में हमारे पास 20 I / O पिन हैं, इसलिए हम UNO के 20 पिन को इनपुट या आउटपुट के रूप में उपयोग करने के लिए प्रोग्राम कर सकते हैं। हालांकि ATMOA328P कंट्रोलर पर UNO की तुलना में अधिक पिन हैं, यह इसलिए है क्योंकि बोर्ड को डिज़ाइन करते समय कुछ पिन डिफ़ॉल्ट होते हैं।
अब कुछ अनुप्रयोगों के लिए हमें 30 से अधिक पिनों की आवश्यकता है, अगर हम 5x5x5 एलईडी सीयूबीई डिजाइन करना चाहते हैं, तो इसके लिए हमें 5x5 + 5 = 30pins की आवश्यकता है। ऐसे मामलों के लिए हम सीरियल का उपयोग समानांतर कनवर्टर चिप्स या शिफ्ट रजिस्टर में करते हैं। एक शिफ्ट रजिस्टर चिप यूएनओ बोर्ड से क्रमिक रूप से डेटा लेता है और 8 बिट समानांतर कॉन्फ़िगरेशन में आउटपुट देता है।
अवयव आवश्यक
हार्डवेयर: Arduino uno बोर्ड, कनेक्टिंग पिन, 220or रेसिस्टर, LED (आठ टुकड़े), 74HC595 IC, ब्रेड बोर्ड।
सोफावेयर: रात में अरुडुइनो
सर्किट आरेख और कार्य स्पष्टीकरण
यहां हम रजिस्टर को शिफ्ट करने के लिए एकल चैनल के माध्यम से आठ बिट आकार में डेटा भेजने जा रहे हैं। शिफ्ट रजिस्टर डेटा को क्रमिक रूप से लेता है और उस डेटा को उसकी मेमोरी में संग्रहीत करता है। एक बार कंट्रोलर द्वारा डेटा भेजे जाने के बाद, हम आउटपुट पर डेटा को दिखाने के लिए रजिस्टर को शिफ्ट रजिस्टर करने के लिए भेजने जा रहे हैं, इस कमांड के साथ शिफ्ट रजिस्टर डेटा को समानांतर रखता है।
यह आउटपुट आउटपुट से जुड़े आठ एलईडी द्वारा दिखाया गया है।
के लिए Arduino संयुक्त राष्ट्र संघ को शिफ्ट रजिस्टर जोड़ने हम दो काम करने की जरूरत है:
|
पहले हमें आउटपुट के रूप में UNO के किसी भी तीन पिन सेट करने की आवश्यकता है। फिर हमें इन तीन आउटपुट पिनों से डिजिटल पिन, क्लॉक पिन और लैच पिन कनेक्ट करना होगा। उसके बाद हमें यूएनओ को यह बताने की जरूरत है कि कौन सी चिप चिप यूएनओ बोर्ड पिन से जुड़ी है। यह कमांड में सरल लेखन "
shiftOut(dataPin, clockPin, data);
" द्वारा किया जाता है । यहां डेटा बाइनरी या दशमलव या हेक्साडेसिमल में हो सकता है। जिन आठ बिट सूचनाओं को भेजने की आवश्यकता होती है, उन्हें "डेटा" के स्थान पर लिखा जाता है।
भेजा गया डेटा इस प्रकार है:
कुंडी को अक्षम करें, यह चिप को अब के लिए आउटपुट नहीं दिखाने के लिए कहता है।
आठ बार हम सिलसिलेवार तरीके से डेटा भेजेंगे, इसलिए क्लॉक हाई लो-डेटा-क्लॉक कम- और इतने पर।
कुंडी सक्षम करें, यह आठ बिट डेटा दिखाने के लिए चिप को बताता है।
SHIFT REGISTER के साथ ARDUINO का कार्य नीचे दिए गए C कोड में चरणबद्ध तरीके से बताया गया है: