- सामग्री की आवश्यकता
- संक्षिप्त परिचय 16 × 2 डॉट मैट्रिक्स एलसीडी डिस्प्ले के लिए
- TIVA लॉन्चपैड में ADC
- सर्किट आरेख और कनेक्शन
- एनर्जिया आईडीई का उपयोग करते हुए एलसीडी के लिए प्रोग्रामिंग TIVA TM4C लॉन्चपैड
- TIVA लॉन्चपैड के साथ 16x2 एलसीडी डिस्प्ले
पिछले ट्यूटोरियल में, हमने TIVA TM4C लॉन्चपैड के बारे में सीखना शुरू किया और एनर्जिया आईडीई का उपयोग करके इसके डिजिटल इनपुट और आउटपुट पिन को कैसे नियंत्रित किया जाए। अब, इस ट्यूटोरियल में, हम उपयोगी जानकारी और सेंसर डेटा प्रदर्शित करने के लिए इस बोर्ड के साथ 16 × 2 डॉट मैट्रिक्स एलसीडी डिस्प्ले के इंटरफेसिंग के बारे में जानेंगे।
16x2 एलसीडी डिस्प्ले हम में से अधिकांश सार्वजनिक पीसीओ के माध्यम से या तो अन्य इलेक्ट्रॉनिक्स परियोजनाओं में इस्तेमाल किया है। 16x2 एलसीडी कम लागत वाला डिस्प्ले मॉड्यूल है जो किसी भी इलेक्ट्रॉनिक्स अनुप्रयोगों के लिए डेटा या अन्य डिबगिंग जानकारी प्रदर्शित करने के लिए बहुत आसान है। तो यहाँ हम TIVA C Series TM4C123G LaunchPad के साथ 16x2 LCD डिस्प्ले को इंटरफैस कर रहे हैं । यहां हम एलसीडी डिस्प्ले पर एडीसी मान और वोल्टेज स्तर दिखाएंगे। एडीसी मूल्यों को अलग करने के लिए एक पोटेंशियोमीटर संलग्न है। 16x2 एलसीडी डिस्प्ले और इसके पिन के बारे में और जानें।
सामग्री की आवश्यकता
- टेक्सास इंस्ट्रूमेंट्स से TIVA TM4C लॉन्चपैड
- 16 × 2 डॉट मैट्रिक्स एलसीडी डिस्प्ले
- तारों को जोड़ना
संक्षिप्त परिचय 16 × 2 डॉट मैट्रिक्स एलसीडी डिस्प्ले के लिए
जैसा कि पहले बताया गया है कि एनर्जिया आईडीई एक सुंदर पुस्तकालय प्रदान करता है जो इंटरफेस को केक का एक टुकड़ा बनाता है और इसलिए डिस्प्ले मॉड्यूल के बारे में कुछ भी जानना अनिवार्य नहीं है। लेकिन, यह दिखाना दिलचस्प नहीं होगा कि हम क्या उपयोग कर रहे हैं !!
16 × 2 नाम का अर्थ है कि डिस्प्ले में 16 कॉलम और 2 पंक्तियाँ हैं, जो एक साथ (16 * 2) 32 बॉक्स बनाती हैं। एक एकल बॉक्स नीचे दी गई तस्वीर में कुछ इस तरह दिखाई देगा
एक एकल बॉक्स में 5 पंक्तियों और 8 स्तंभों के मैट्रिक्स क्रम के साथ 40 पिक्सेल (डॉट्स) होते हैं, ये 40 पिक्सेल मिलकर एक वर्ण बनाते हैं। इसी तरह, सभी बॉक्स का उपयोग करके 32 अक्षर प्रदर्शित किए जा सकते हैं। अब पिनआउट्स पर एक नज़र डालते हैं।
एलसीडी में कुल 16 पिंस होते हैं, जैसा कि ऊपर दिखाया गया है, उन्हें निम्नानुसार चार समूहों में वर्गीकृत किया जा सकता है
सोर्स पिंस (1, 2 और 3): ये पिन डिस्प्ले के लिए पॉवर और कंट्रास्ट लेवल को सोर्स करते हैं
नियंत्रण पिंस (4, 5 और 6): ये पिन एलसीडी इंटरफेसिंग आईसी में रजिस्टरों को सेट / नियंत्रित करते हैं (अधिक यह नीचे दिए गए लिंक में पाया जा सकता है)
डेटा / कमांड पिंस (7 से 14): ये पिन एलसीडी पर किस सूचना को प्रदर्शित करना चाहिए, इसका डेटा प्रदान करते हैं।
एलईडी पिन (15 और 16): इन पिनों का उपयोग एलसीडी की बैकलाइट को चमकाने के लिए किया जाता है यदि आवश्यक हो (वैकल्पिक)।
इन सभी 16 पिनों में से, एलसीडी के समुचित कार्य के लिए केवल 10 पिनों का उपयोग किया जाना है यदि आप इस एलसीडी आलेख में इन एलसीडी डिस्प्ले जंप के बारे में अधिक जानना चाहते हैं।
इसके अलावा कई अन्य माइक्रोकंट्रोलर के साथ 16x2 एलसीडी डिस्प्ले के इंटरफेस की जांच करें
- 4-बिट मोड में Atmega16 AVR माइक्रोकंट्रोलर के साथ 16x2 एलसीडी को इंटरफैस करना
- MPLABX और XC8 का उपयोग करते हुए PIC माइक्रोकंट्रोलर के साथ एलसीडी इंटरफेसिंग
- STM32F103C8T6 के साथ 16x2 एलसीडी को इंटरफैस करना
- MSP430G2 लॉन्चपैड के साथ एलसीडी को इंटरफैस करना
- 8051 माइक्रोकंट्रोलर के साथ एलसीडी इंटरफेसिंग
- Arduino के साथ 16x2 LCD इंटरफेसिंग
- अजगर के साथ रास्पबेरी पाई के साथ 16x2 एलसीडी इंटरफेसिंग
TIVA लॉन्चपैड में ADC
पोटेंशियोमीटर एनालॉग आउटपुट प्रदान करता है ताकि यह लॉन्चपैड के डिजिटल पिंस से जुड़ा न हो। तो MCU के एनालॉग या ADC पिन का उपयोग किसी भी सेंसर को इंटरफेस करने के लिए किया जाता है जिसका आउटपुट प्रकृति में एनालॉग होता है। TIVA TM4C में 12-बिट आउटपुट के साथ 2 ADC चैनल हैं इसका मतलब है कि सेंसर या पोटेंशियोमीटर से एनालॉग वैल्यू को डिजिटल मानों में बदलने के लिए 0 से 2 ^ 12 (4096) के बीच मैप किया जा सकता है। माइक्रोकंट्रोलर में एनालॉग से डिजिटल रूपांतरण के बारे में अधिक जानने के लिए, लिंक का अनुसरण करें।
कर रहे हैं 12 एनालॉग इनपुट पिन (A0-A11) TIVA लॉन्चपैड में नीचे वाले चित्र में दिखाया गया है।
सर्किट आरेख और कनेक्शन
TIVA लॉन्चपैड TM4C के साथ 16 × 2 डॉट मैट्रिक्स एलसीडी डिस्प्ले इंटरफेस करने के लिए पूरा सर्किट आरेख नीचे दिखाया गया है।
इन एलसीडी को बाधित करते समय एक प्रमुख बाधा इसके ऑपरेटिंग वोल्टेज है। एलसीडी डिस्प्ले में 5V का ऑपरेटिंग वोल्टेज है जबकि TM4C केवल 3.6V के साथ काम करता है । हमारे लिए लकी है एलसीडी इंटरफेस आईसी (एचडी 44780 यू) के डेटा पिन में 2.7V से 5.5V का एक विस्तृत ऑपरेटिंग वोल्टेज है। इसलिए हमें केवल एलसीडी के Vdd (पिन 2) के बारे में चिंता करनी होगी जबकि डेटा पिन 3.6 वी के साथ भी काम कर सकते हैं।
डिफ़ॉल्ट रूप से TIVA बोर्ड में + 5V पिन नहीं होता है, इसलिए एलसीडी काम करने के लिए बाहरी बिजली की आपूर्ति का उपयोग किया जाना चाहिए । या तो Arduino बोर्ड से बिजली की आपूर्ति का उपयोग करें या 7805 वोल्टेज नियामक का उपयोग करें। TIVA बोर्ड की जमीन के साथ बिजली की आपूर्ति की जमीन को जोड़ना सुनिश्चित करें।
नीचे दी गई तालिका एलसीडी और TIVA लॉन्चपैड के बीच कनेक्शन दिखा रही है
एलसीडी पिन नाम | TIVA लॉन्चपैड |
वीएसएस | भूमि |
Vdd | + 5 वी बिजली की आपूर्ति |
रुपये | पिन TIVA के PC_6 |
आर / डब्ल्यू | भूमि |
सक्षम | TIVA के पिन PB_7 |
डी 4 | TIVA के पिन PA_2 |
D5 | TIVA का पिन PA_3 |
डी 6 | TIVA का पिन PA_4 |
डी 7 | TIVA के पिन PB_6 |
एलसीडी पर पोटेंशियोमीटर मान प्रदर्शित करने के लिए, पॉट आउटपुट को किसी भी एनालॉग पिन (PE2) से कनेक्ट करें।
एनर्जिया आईडीई का उपयोग करते हुए एलसीडी के लिए प्रोग्रामिंग TIVA TM4C लॉन्चपैड
स्पष्टीकरण के साथ आगे बढ़ने से पहले, इस परियोजना में उपयोग किए जाने वाले पिन का एक नोट बनाएं। ऊपर दिए गए सर्किट आरेख और TIVA पिन-आउट आरेख पर एक नज़र डालें। इस ट्यूटोरियल के अंत में एक कामकाजी वीडियो के साथ पूरा कोड संलग्न है।
एनर्जिया आईडीई, डिफ़ॉल्ट रूप से, 16x2 एलसीडी (लिक्विड क्रिस्टल) के लिए लाइब्रेरी के साथ आता है। यदि इसकी मौजूदगी नहीं है तो इसे इस github लिंक से डाउनलोड करें और इसे Energia IDE के लाइब्रेरी फ़ोल्डर में पेस्ट करें।
फिर एलसीडी के लिए लाइब्रेरी को शामिल करके और इसके लिए पिन को परिभाषित करके कार्यक्रम शुरू करें
#शामिल
अगला चरण उन पिंस का उल्लेख करना है जिनसे एलसीडी जुड़ा हुआ है, जैसा कि हमने पहले ही #Dfine का उपयोग करके इसका नाम दिया है अब हम केवल एलसीडी पिन के नामों का उल्लेख कर सकते हैं। सुनिश्चित करें कि समान आदेश का पालन किया जाता है।
लिक्विड क्रिस्टल एलसीडी (आरएस, एन, डी 4, डी 5, डी 6, डी 7);
आकार और प्रकृति में विभिन्न प्रकार के एलसीडी डिस्प्ले अलग-अलग होते हैं, इसलिए शून्य सेटअप () फ़ंक्शन में, पहले प्रोजेक्ट में आपके द्वारा उपयोग किए जा रहे एलसीडी के प्रकार को निर्दिष्ट करें । यहां हमने 16x2 एलसीडी डिस्प्ले का उपयोग किया है।
lcd.begin (16, 2);
एलसीडी पर कुछ प्रिंट करने के लिए, प्रोग्राम में दो चीजों का उल्लेख करें। एक पाठ की स्थिति है जिसे लाइन lcd.setCursor () का उपयोग करके उल्लेख किया जा सकता है और अन्य प्रिंट करने की सामग्री है जिसका उल्लेख lcd.print () द्वारा किया जा सकता है । यहां हम कर्सर को 1 सेंट पंक्ति और 1 सेंट कॉलम पर सेट कर रहे हैं ।
lcd.setCursor (0,0);
इसी तरह, हम भी कर सकते हैं
lcd.setCursor (0, 1); // 1 कॉलम 2 पंक्ति के कर्सर को सेट करने के लिए
जिस तरह इस पर लिखने के बाद व्हाइटबोर्ड को मिटाया जाता है, उस पर कुछ लिखने के बाद एक एलसीडी को भी मिटा देना चाहिए । यह नीचे की रेखा का उपयोग करके किया जा सकता है
lcd.clear ();
में शून्य पाश () समारोह का उपयोग करते हुए बर्तन मान ले analogRead () समारोह और अन्य चर में इस मूल्य की दुकान और फिर यह मान प्रदर्शित।
SensValue = analogRead (SensPin); lcd.setCursor (0, 0); lcd.print ("ADC मान:"); lcd.setCursor (10, 0); lcd.print (SensValue);
अब, इस ADC मान को केवल 3.3 से गुणा करके वोल्टेज में परिवर्तित करें क्योंकि यह उच्चतम वोल्टेज है जिसे TIVA बोर्ड पिन द्वारा स्वीकार किया जा सकता है। फिर 4096 के साथ गुणा मूल्य को विभाजित करें।
lcd.setCursor (0, 1); lcd.print ("वोल्टेज:"); voltages = (SensValue * 3.3) / 4096; lcd.setCursor (10, 1); lcd.print (voltages);
पूरा कार्यक्रम अंत में पाया जा सकता है।
TIVA लॉन्चपैड के साथ 16x2 एलसीडी डिस्प्ले
एक बार हार्डवेयर और कोड तैयार हो जाने के बाद, बस TIVA बोर्ड को कंप्यूटर से कनेक्ट करें और बोर्ड में कोड अपलोड करें। TIVA लॉन्चपैड में कोड अपलोड करने का तरीका जानने के लिए पिछले ट्यूटोरियल का पालन करें।
एक बार कोड अपलोड हो जाने के बाद आपको डिस्प्ले को निम्नलिखित दिखाना चाहिए।
अब, एडीसी मान को अलग करने के लिए सिर्फ पोटेंशियोमीटर को घुमाएं और आप देखेंगे कि संबंधित वोल्टेज मान भी अलग-अलग होगा, जैसा कि नीचे दी गई तस्वीर में दिखाया गया है।
पूरा कोड और विस्तृत वीडियो के नीचे पाया जा सकता है। आगे बढ़ें और एलसीडी डिस्प्ले पर प्रदर्शित होने वाले पाठ को बदलने का प्रयास करें।