- आवश्यक सामग्री:
- शिफ्ट का रजिस्टर:
- Shift रजिस्टर का उपयोग किए बिना ESP12 के साथ इंटरफेस एलसीडी:
- कोड:
- ESP12 के साथ इंटरफेस एलसीडी शिफ्ट रजिस्टर SN74HC595N का उपयोग कर:
- कोड:
इस ट्यूटोरियल में हम देखेंगे कि I2C संचार का उपयोग किए बिना 16x2 एलसीडी के साथ NodeMCU को कैसे इंटरफ़ेस करें । यहाँ हम 16x2 LCD इंटरफ़ेस को रजिस्टर रजिस्टर SN74HC595 का उपयोग करेंगे। हम किसी भी बदलाव रजिस्टर का उपयोग किए बिना भी इसे इंटरफ़ेस कर सकते हैं। हम इस ट्यूटोरियल में दोनों तरह के इंटरफेस देखेंगे। दोनों इंटरफेसिंग के बीच मुख्य अंतर NodeMCU में उपयोग किए जाने वाले पिनों की संख्या है।
आवश्यक सामग्री:
- NodeMCU ESP12E
- SN74HC595 शिफ्ट रजिस्टर आईसी
- 16x2 एलसीडी मॉड्यूल
- तनाव नापने का यंत्र
- नर-मादा के तार
- ब्रेड बोर्ड
शिफ्ट का रजिस्टर:
डिजिटल सिस्टम में, शिफ्ट रजिस्टर फ्लिप-फ्लॉप का एक संयोजन है जो श्रृंखला में कैस्केड किया जाता है और उसी घड़ी को साझा करता है। इस कैस्केड पैकेज में, एक फ्लिप-फ्लॉप के डेटा-आउट, अगले फ्लिप-फ्लॉप के लिए डेटा-इन के रूप में कार्य करते हैं, जिसके परिणामस्वरूप एक सर्किट होता है जो एक स्थिति में शिफ्ट हो जाता है, इसमें संग्रहीत बिट सरणी।
जिस IC का हम उपयोग करने जा रहे हैं वह SN74HC595N है। यह समानांतर आउट शिफ्ट रजिस्टर आईसी में एक सरल 8-बिट धारावाहिक है। सरल शब्दों में, यह आईसी समानांतर और धारावाहिक प्रारूपों के बीच डेटा परिवर्तित करके माइक्रोकंट्रोलर में अतिरिक्त इनपुट या आउटपुट को जोड़ने की अनुमति देता है। हमारे माइक्रोकंट्रोलर इस आईसी के 3 पिन का उपयोग क्रमिक रूप से डेटा भेजने के लिए करते हैं। वास्तव में 8-बिट आउटपुट 8 पिन पर आ रहा होगा इनपुट इनपुट पिन से 8-बिट जानकारी प्राप्त करने के बाद। यहां शिफ्ट रजिस्टर के बारे में अधिक जानें।
IC SN74HC595N के पिन आरेख और पिन फ़ंक्शन नीचे दिए गए हैं:
आप Arduino के साथ और यहाँ Raspberry pi के साथ 74HC595N के बीच का अंतर पाते हैं।
Shift रजिस्टर का उपयोग किए बिना ESP12 के साथ इंटरफेस एलसीडी:
अगर आपने Arduino बोर्ड के साथ 16x2 LCD का उपयोग किया है तो यह बहुत आसान होगा। आपको NodeMCU में बस हुकअप पिन करना होगा जैसा कि आपने Arduino Board के साथ किया है।
NodeMCU में 16 GPIO पिन हैं और हमें 6 पिन और gnd, vcc की आवश्यकता है। नीचे दिए गए सर्किट आरेख के अनुसार पिन कनेक्ट करें:
हम का उपयोग करेगा 4 डेटा पिन और रुपये, एलसीडी के एन जो के रूप में जुड़े हुए हैं:
D7 एलसीडी का पिन == N8MCU का D8 पिन
एलसीडी का d6 पिन == NodeMCU का D7 पिन
D5 पिन ऑफ़ LCD == D6 पिन ऑफ़ NodeMCU
D4 पिन की LCD == D5 पिन NodeMCU की
एलसीडी का आरएस पिन == एनओडीएमसीयू का डी 2 पिन
एनोडएमसीयू के एलसीडी == डी 3 पिन का एन पिन
आप इन कनेक्शनों के लिए किसी भी GPIO का उपयोग कर सकते हैं।
अब, पहले बताए अनुसार Arduino IDE का उपयोग करके कोड अपलोड करें। कोड Arduino बोर्ड के लिए समान है जो लिक्विड क्रिस्टल उदाहरण में पाया जा सकता है। कार्यक्रम सरल और आसानी से समझ में आता है यदि आप कार्यक्रम के बारे में अधिक जानना चाहते हैं तो Arduino प्रोग्राम के साथ हमारे एलसीडी इंटरफेस की जांच करें।
कोड:
#शामिल
जैसा कि हमने देखा, हमने पहले से ही NodeMCU के 6 पिन का उपयोग किया है। इस छोटे से बोर्ड के लिए पहले से ही कम पिन उपलब्ध हैं और अन्य सेंसर को इंटरफेस करने के लिए हमें कुछ पिनों के साथ छोड़ दिया गया है।
इसलिए, इस समस्या को दूर करने के लिए हम शिफ्ट रजिस्टर आईसी का उपयोग करेंगे, जो कि न्यूनतम को कम करेगा। पिन का उपयोग NodeMCU पर किया जाता है।
ESP12 के साथ इंटरफेस एलसीडी शिफ्ट रजिस्टर SN74HC595N का उपयोग कर:
शिफ्ट रजिस्टर आईसी में 8 आउटपुट और 3 इनपुट पिन उपलब्ध हैं। हम 6 आउटपुट पिन का उपयोग एलसीडी और 3 इनपुट पिन के साथ NodeMCU से जुड़ने के लिए करेंगे।
आईसी के साथ एलसीडी के कनेक्शन निम्नानुसार हैं:
एलसीडी का D7 पिन == IC का पिन 1
एलसीडी का D6 पिन == IC का पिन 2
एलसीडी का D5 पिन == IC का पिन 3
एलसीडी का D4 पिन == IC का पिन 4
एलसीडी का आरएस पिन == आईसी का पिन 7
एलसीडी के एन पिन == आईसी के 15 पिन
आईसी के साथ NodeMCU का कनेक्शन:
NodeMCU का D6 पिन == IC का पिन 14, IC का DATA पिन
N7MCU का D7 पिन == IC का पिन 12, IC का LATCH पिन
N8MCU का D8 पिन == IC का पिन 11, IC का CLOCK पिन
IC के PIN 16 और PIN 10 को Vcc से कनेक्ट करें।
IC के GND पर PIN 8 और PIN 13 को कनेक्ट करें।
नीचे दिए गए आरेख के अनुसार सावधानीपूर्वक सर्किट बनाएं:
अब हमारा हार्डवेयर प्रोग्राम करने के लिए तैयार है।
अब, हमें एक पुस्तकालय " लिक्विड क्रिस्टल 595 " की आवश्यकता है जिसे इस लिंक https://github.com/tehniq3/LiquidCrystal595 से नीचे के चरणों से डाउनलोड किया जा सकता है:
1. Arduino IDE का गोटो स्केच मेनू।
2. इन्क्लूड लाइब्रेरी पर क्लिक करें ।
3. अब, Add.zip लाइब्रेरी पर क्लिक करें। ज़िप फ़ाइल चुनें जिसे आपने दिए गए लिंक और उसके किए से डाउनलोड किया है।
अब नीचे दिए गए कोड को अपलोड करें और आपको एलसीडी पर मैसेज प्रिंटिंग दिखाई देगी।
कोड:
#शामिल
कोड सरल है क्योंकि हमें LiquidCrystal595 एलसीडी () में तर्क के रूप में सिर्फ डेटा पिन, लैच पिन और क्लॉक पिन देना है ; और बाकी कोड वैसा ही है जैसा हमने पहले किया है।
इस तरह, आपने Shift Register का उपयोग करके NodeMCU के केवल 3 पिन सहेजे हैं।
इसके अलावा, अन्य माइक्रोकंट्रोलर्स के साथ 16x2 एलसीडी इंटरफेस की जाँच करें:
- पीआईसी माइक्रोकंट्रोलर के साथ एलसीडी इंटरफैसिंग
- अजगर के साथ रास्पबेरी पाई के साथ 16x2 एलसीडी इंटरफेसिंग
- ATmega32 माइक्रोकंट्रोलर के साथ एलसीडी की जगह
- 8051 माइक्रोकंट्रोलर के साथ एलसीडी इंटरफेसिंग