विषयसूची:

Arduino के साथ संख्यात्मक कीपैड का उपयोग करना: 4 कदम
Arduino के साथ संख्यात्मक कीपैड का उपयोग करना: 4 कदम

वीडियो: Arduino के साथ संख्यात्मक कीपैड का उपयोग करना: 4 कदम

वीडियो: Arduino के साथ संख्यात्मक कीपैड का उपयोग करना: 4 कदम
वीडियो: What is Arduino with Full Information? – [Hindi] – Quick Support 2024, नवंबर
Anonim
Arduino के साथ संख्यात्मक कीपैड का उपयोग करना
Arduino के साथ संख्यात्मक कीपैड का उपयोग करना

संख्यात्मक कीपैड आपकी परियोजनाओं के लिए विभिन्न इंटरफेस के लिए एक सरल एंड-यूज़र विकल्प प्रदान कर सकते हैं। या यदि आपको बहुत सारे बटनों की आवश्यकता है, तो वे निर्माण के संबंध में आपका बहुत समय बचा सकते हैं। हम Arduino लाइब्रेरी का उपयोग करके उन्हें जोड़ने के माध्यम से चलेंगे और फिर एक उपयोगी उदाहरण स्केच के साथ समाप्त करेंगे।

चरण 1: आरंभ करना

शुरू करना
शुरू करना

कोई फर्क नहीं पड़ता कि आप अपने कीपैड कहाँ से प्राप्त करते हैं, सुनिश्चित करें कि आप डेटा शीट प्राप्त कर सकते हैं - क्योंकि इससे उन्हें वायर करते समय जीवन आसान हो जाएगा। उदाहरण के लिए - इस चरण में छवि।

डेटा शीट महत्वपूर्ण है क्योंकि यह आपको बताएगी कि कीपैड पर कौन से पिन या कनेक्टर पंक्तियों और स्तंभों के लिए हैं। यदि आपके पास डेटा शीट नहीं है - आपको मैन्युअल रूप से यह निर्धारित करने की आवश्यकता होगी कि कौन से संपर्क पंक्तियों और स्तंभों के लिए हैं।

यह एक मल्टीमीटर (बजर) के निरंतरता फ़ंक्शन का उपयोग करके किया जा सकता है। एक जांच को पिन 1 पर रखकर प्रारंभ करें, दूसरी जांच को पिन 2 पर रखें, और एक-एक करके कुंजियों को दबाएं। नोट करें कि जब कोई बटन सर्किट को पूरा करता है, तो अगले पिन पर जाएँ। जल्द ही आपको पता चल जाएगा कि कौन सा है। उदाहरण के लिए, उदाहरण के लिए कीपैड पिन 1 और 5 बटन "1″, 2 और 5" 4″, आदि के लिए हैं …

इस बिंदु पर कृपया कीपैड Arduino लाइब्रेरी को डाउनलोड और इंस्टॉल करें। अब हम सरल उदाहरणों में प्रदर्शित करेंगे कि दोनों कीपैड का उपयोग कैसे करें।

चरण 2: 12 अंकों की कीपैड का उपयोग करना

हम प्रदर्शन उद्देश्यों के लिए छोटे काले कीपैड, एक Arduino Uno-संगत और एक I2C इंटरफ़ेस के साथ एक LCD का उपयोग करेंगे। यदि आपके पास LCD नहीं है तो आप इसके बजाय हमेशा सीरियल मॉनिटर को टेक्स्ट भेज सकते हैं।

अपने LCD को वायर अप करें फिर कीपैड को Arduino से निम्न तरीके से कनेक्ट करें: कीपैड पंक्ति 1 से Arduino Digital 5Keypad पंक्ति 2 से Arduino Digital 4Keypad पंक्ति 3 से Arduino Digital 3Keypad पंक्ति 4 से Arduino Digital 2Keypad कॉलम 1 से Arduino Digital 8Keypad कॉलम 2 से Arduino digital 7Keypad column 3 to Arduino digital 6 यदि आपका कीपैड हमारे से अलग है, तो स्केच की पंक्तियों पर ध्यान दें:

// कीपैड प्रकार की परिभाषा

जैसा कि आपको सरणियों में संख्याओं को बदलने की आवश्यकता है rowPins[ROWS] और colPins[COLS]। आप क्रमशः कीपैड की पंक्तियों और स्तंभों से जुड़े डिजिटल पिन नंबर दर्ज करते हैं।

इसके अलावा, सरणी कुंजियाँ किसी विशेष बटन को दबाने पर LCD में प्रदर्शित मानों को संग्रहीत करती हैं। आप देख सकते हैं कि हमने इसका उपयोग किए गए भौतिक कीपैड के साथ मिलान किया है, हालाँकि आप इसे अपनी आवश्यकता के अनुसार बदल सकते हैं। लेकिन अभी के लिए, पंक्ति/पिन नंबर आवंटन से संतुष्ट होने के बाद निम्नलिखित स्केच दर्ज करें और अपलोड करें:

/* न्यूमेरिक कीपैड और I2C LCD https://tronixstuff.com Arduino के लिए कीपैड लाइब्रेरी का उपयोग करता है https://www.arduino.cc/playground/Code/Keypad मार्क स्टेनली, अलेक्जेंडर ब्रेविग द्वारा */

#शामिल "कीपैड.एच"

#include "Wire.h" // I2C LCD के लिए #include "LiquidCrystal_I2C.h" // I2C बस LCD मॉड्यूल के लिए // https://www.dfrobot.com/wiki/index.php/I2C/TWI_LCD1602_Module_(SKU: _DFR0063) लिक्विड क्रिस्टल_आई2सी एलसीडी (0x27, 16, 2); // 16 वर्णों और 2 लाइन डिस्प्ले के लिए एलसीडी पते को 0x27 पर सेट करें

// कीपैड प्रकार की परिभाषा

कॉन्स्ट बाइट ROWS = 4; // चार पंक्तियाँ कॉन्स्ट बाइट COLS = 3; // तीन कॉलम चार कुंजियाँ [ROWS] [COLS] = {{'1', '2', '3'}, {'4', '5', '6'}, {'7', '8', '9'}, {'*', '0', '#'}};

बाइट रोपिन [पंक्तियाँ] = {

5, 4, 3, 2}; // कीपैड बाइट colPins[COLS] = {8, 7, 6} के पंक्ति पिनआउट से कनेक्ट करें; // कीपैड के कॉलम पिनआउट से कनेक्ट करें

इंट काउंट = 0;

कीपैड कीपैड = कीपैड (मेककेमैप (कुंजी), पंक्तिपिन, कॉलपिन, पंक्तियाँ, COLS);

व्यर्थ व्यवस्था()

{एलसीडी.इनिट (); // LCD LCD.backlight () को इनिशियलाइज़ करें; // एलसीडी बैकलाइट चालू करें}

शून्य लूप ()

{चार कुंजी = कीपैड.गेटकी (); अगर (कुंजी! = NO_KEY) {एलसीडी.प्रिंट (कुंजी); गिनती++; अगर (गिनती == 17) {lcd.clear (); गिनती = 0; } } }

और स्केच के परिणाम वीडियो में दिखाए गए हैं। तो अब आप देख सकते हैं कि स्केच में उपयोग के लिए बटन प्रेस को डेटा में कैसे अनुवादित किया जा सकता है। अब हम इस प्रदर्शन को बड़े कीपैड के साथ दोहराएंगे।

चरण 3: 16 अंकों की कीपैड का उपयोग करना

हम बड़े 4×4 कीपैड का उपयोग करेंगे, एक Arduino Uno-संगत और प्रदर्शन उद्देश्यों के लिए Akafugu से I2C LCD को बदलने के लिए। दोबारा, यदि आपके पास एलसीडी नहीं है तो आप इसके बजाय सीरियल मॉनीटर पर हमेशा टेक्स्ट भेज सकते हैं। एलसीडी को वायर करें और फिर कीपैड को Arduino से निम्न तरीके से कनेक्ट करें:

  • कीपैड पंक्ति 1 (पिन आठ) से Arduino डिजिटल 5
  • कीपैड पंक्ति २ (पिन १) से अरुडिनो डिजिटल ४
  • कीपैड पंक्ति 3 (पिन 2) से Arduino डिजिटल 3
  • कीपैड पंक्ति 4 (पिन 4) से Arduino डिजिटल 2
  • कीपैड कॉलम 1 (पिन 3) से Arduino डिजिटल 9. तक
  • कीपैड कॉलम 2 (पिन 5) से Arduino डिजिटल 8
  • कीपैड कॉलम 3 (पिन 6) से Arduino डिजिटल 7
  • कीपैड कॉलम 4 (पिन 7) से Arduino डिजिटल 6

अब स्केच के लिए - ध्यान दें कि हमने बड़े संख्यात्मक कीपैड के लिए कैसे समायोजित किया है: सरणी चार कुंजियों में अतिरिक्त कॉलम सरणी colPins में अतिरिक्त पिन और बाइट COLS = 4।

/* न्यूमेरिक कीपैड और I2C LCD https://tronixstuff.com Arduino के लिए कीपैड लाइब्रेरी का उपयोग करता है https://www.arduino.cc/playground/Code/Keypad मार्क स्टेनली, अलेक्जेंडर ब्रेविग द्वारा */

#शामिल "कीपैड.एच"

#include "Wire.h" // I2C LCD के लिए #include "TWILiquidCrystal.h" // https://store.akafugu.jp/products/26 LiquidCrystal LCD(12, 11, 5, 4, 3, 2);

कॉन्स्ट बाइट ROWS = 4; // चार पंक्तियाँ

कॉन्स्ट बाइट COLS = 4; // चार कॉलम चार कुंजियाँ [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'सी'}, {'*', '0', '#', 'डी'}}; बाइट रोपिन [पंक्तियाँ] = {५, ४, ३, २}; // कीपैड बाइट colPins [COLS] = {9, 8, 7, 6} के पंक्ति पिनआउट से कनेक्ट करें; // कीपैड इंट काउंट = 0 के कॉलम पिनआउट से कनेक्ट करें;

कीपैड कीपैड = कीपैड (मेककेमैप (कुंजी), पंक्तिपिन, कॉलपिन, पंक्तियाँ, COLS);

व्यर्थ व्यवस्था()

{ सीरियल.बेगिन (९६००); LCD.begin (16, 2); LCD.print ("कीपैड टेस्ट!"); देरी (1000); एलसीडी.क्लियर (); }

शून्य लूप ()

{चार कुंजी = कीपैड.गेटकी (); अगर (कुंजी! = NO_KEY) {एलसीडी.प्रिंट (कुंजी); सीरियल.प्रिंट (कुंजी); गिनती++; अगर (गिनती == 17) {lcd.clear (); गिनती = 0; } } }

और फिर से आप ऊपर दिए गए स्केच के परिणाम वीडियो में देख सकते हैं।

अब एक उदाहरण परियोजना के लिए, एक जो संभवतः संख्यात्मक कीपैड का सबसे अधिक अनुरोधित उपयोग है…

चरण 4: उदाहरण परियोजना - पिन एक्सेस सिस्टम

संख्यात्मक कीपैड के लिए सबसे अधिक अनुरोधित उपयोग एक "पिन" शैली का अनुप्रयोग प्रतीत होता है, जहां Arduino को कीपैड में दर्ज की गई सही संख्या के आधार पर कुछ करने का निर्देश दिया जाता है। निम्नलिखित स्केच पिछले स्केच के लिए वर्णित हार्डवेयर का उपयोग करता है और छह अंकों की पिन प्रविष्टि प्रणाली को लागू करता है।

होने वाली कार्रवाइयां सहीपिन () और गलत पिन () फ़ंक्शन में डाली जा सकती हैं। और पिन सरणी चार पिन [6] में सेट है। थोड़े से अतिरिक्त काम से आप अपना खुद का पिन-चेंज फंक्शन भी बना सकते हैं।

// 16-अंकीय संख्यात्मक कीपैड के साथ पिन स्विच // https://tronixstuff.com #include "Keypad.h" #include #include LiquidCrystal LCD(12, 11, 5, 4, 3, 2);

कॉन्स्ट बाइट ROWS = 4; // चार पंक्तियाँ

कॉन्स्ट बाइट COLS = 4; // चार कॉलम चार कुंजियाँ [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B' }, {'7', '8', '9', 'सी'}, {'*', '0', '#', 'डी'}}; बाइट रोपिन [पंक्तियाँ] = {५, ४, ३, २}; // कीपैड बाइट colPins[COLS] = {9, 8, 7, 6} के पंक्ति पिनआउट से कनेक्ट करें; // कीपैड के कॉलम पिनआउट से कनेक्ट करें

कीपैड कीपैड = कीपैड (मेककेमैप (कुंजी), पंक्तिपिन, कॉलपिन, पंक्तियाँ, COLS);

चार पिन[6]={

'1', '2', 'ए', 'डी', '5', '6'}; // हमारा सीक्रेट (!) नंबर चार प्रयास[6]={ '0', '0', '0', '0', '0', '0'}; // तुलना के लिए उपयोग किया जाता है int z=0;

व्यर्थ व्यवस्था()

{ सीरियल.बेगिन (९६००); LCD.begin (16, 2); LCD.print ("पिन लॉक"); देरी (1000); एलसीडी.क्लियर (); एलसीडी.प्रिंट ("पिन दर्ज करें …"); }

शून्य सहीपिन () // अगर सही पिन दर्ज किया गया है तो ऐसा करें

{एलसीडी.प्रिंट ("* सही पिन *"); देरी (1000); एलसीडी.क्लियर (); एलसीडी.प्रिंट ("पिन दर्ज करें …"); }

शून्य गलत पिन () // अगर गलत पिन दर्ज किया गया है तो ऐसा करें

{lcd.print ("* पुनः प्रयास करें *"); देरी (1000); एलसीडी.क्लियर (); एलसीडी.प्रिंट ("पिन दर्ज करें …"); }

शून्य चेकपिन ()

{इंट सही = 0; इंट आई; के लिए (i = 0; मैं <6; i++) {

अगर (प्रयास == पिन )

{सही ++; } } अगर (सही == 6) { सही पिन (); } और {गलत पिन (); }

के लिए (int zz=0; zz<6; zz++) {प्रयास [zz]='0'; } }

शून्य रीडकीपैड ()

{चार कुंजी = कीपैड.गेटकी (); अगर (कुंजी! = NO_KEY) {प्रयास [z] = कुंजी; जेड++; स्विच (कुंजी) {केस '*': z = 0; टूटना; केस '#': z=0; देरी (100); // अतिरिक्त बहस के लिए LCD.clear (); चेकपिन (); टूटना; } } }

शून्य लूप ()

{रीडकीपैड (); }

वीडियो में परियोजना का प्रदर्शन किया गया है।

तो अब आपके पास अपने Arduino सिस्टम के साथ बारह और सोलह-बटन कीपैड का उपयोग करने की क्षमता है। मुझे यकीन है कि आप निकट भविष्य में कीपैड का उपयोग करके कुछ उपयोगी और दिलचस्प लेकर आएंगे।

यह पोस्ट आपके लिए pmdway.com द्वारा लाया गया है - निर्माताओं और इलेक्ट्रॉनिक्स के प्रति उत्साही लोगों के लिए, दुनिया भर में मुफ्त डिलीवरी के साथ।

सिफारिश की: