विषयसूची:

सर्किटपायथन के साथ 4x4 कीपैड का उपयोग करना: 4 कदम
सर्किटपायथन के साथ 4x4 कीपैड का उपयोग करना: 4 कदम

वीडियो: सर्किटपायथन के साथ 4x4 कीपैड का उपयोग करना: 4 कदम

वीडियो: सर्किटपायथन के साथ 4x4 कीपैड का उपयोग करना: 4 कदम
वीडियो: Normal People VS Programmers #coding #python #programming #easy #funny #short 2024, नवंबर
Anonim
सर्किटपायथन के साथ 4x4 कीपैड का उपयोग करना
सर्किटपायथन के साथ 4x4 कीपैड का उपयोग करना

यह सस्ता कीपैड आपके सर्किटपाइथन प्रोजेक्ट्स में संख्यात्मक इनपुट की एक सरल विधि प्रदान करता है। मैं इसे Adafruit ItsyBitsy M0 एक्सप्रेस के साथ उपयोग करने जा रहा हूं।

आपको चाहिये होगा:

  • कीपैड - मेरा 4x4. है
  • इट्सीबिट्सी M0 एक्सप्रेस या इसी तरह का बोर्ड
  • म्यू संपादक आपके कंप्यूटर पर स्थापित है
  • कोड फ्लैश करने के लिए यूएसबी केबल

चरण 1: कीपैड कैसे काम करता है

कीपैड कैसे काम करता है
कीपैड कैसे काम करता है

वे कीपैड में 16 सरल, धीमी गति से काम करने वाले बबल स्विच हैं जो 4 बाय ग्रिड में नीचे 8 कनेक्शन के साथ व्यवस्थित हैं। यदि हम बाईं ओर से 0 से 7 तक संख्या देते हैं, तो 0 से 3 के कनेक्शन प्रत्येक पंक्ति से जुड़े होते हैं। कनेक्शन 0 शीर्ष पंक्ति से और कनेक्शन 3 नीचे की पंक्ति से। कनेक्शन 4 से 7 बाएं कॉलम पर कनेक्शन 4 के साथ कॉलम से जुड़े हैं और कनेक्शन 7 दाएं कॉलम से जुड़े हैं। 16 स्विच में से प्रत्येक एक अलग पंक्ति/स्तंभ संयोजन के बीच जुड़ता है। यदि हम key7 दबाते हैं तो तीसरी पंक्ति बाएं कॉलम से जुड़ जाती है। हम समझ सकते हैं कि अगर 5 कुंजी को दबाया जा रहा है तो उसकी पंक्ति को ऊंचा किया जाता है और हम इसके कॉलम पर एक उच्च पढ़ सकते हैं। ऐसा करने के लिए हम पंक्तियों को OUTPUT और कॉलम से INPUT करते हैं।

हमें बारी-बारी से प्रत्येक पंक्ति को उच्च सेट करने की आवश्यकता है, जबकि अन्य पंक्तियाँ कम हैं, प्रत्येक कॉलम को बारी-बारी से तब तक पढ़ें जब तक हमें एक उच्च इनपुट न मिल जाए। इसे नेस्टेड फॉर लूप्स के साथ आसानी से प्रबंधित किया जाता है।

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

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

चरण 2: शारीरिक संबंध

शारीरिक संबंध
शारीरिक संबंध

KeyPad0 1 2 3 4 5 6 7. पर बाएँ से दाएँ कनेक्शन

D7 D9 D10 D11 A5 A4 A3 A2 ItsyBitsy. पर

D7 से D11 को OUTPUTs के रूप में सेट किया गया है जबकि A5 से A2 को PULLDOWN के साथ INPUTs के रूप में सेट किया गया है।

कोड में बहुत सारी टिप्पणियां हैं और इसका पालन करना काफी आसान होना चाहिए।

चरण 3: गेटकी () कैसे काम करता है

गेटकी () कैसे काम करता है
गेटकी () कैसे काम करता है

यह फ़ंक्शन सिंगल की प्रेस के लिए कीपैड को स्कैन करता है। यह देखने के लिए कि कुंजी स्विच बंद है या नहीं, यह प्रत्येक कुंजी को बारी-बारी से अधिकतम 10 बार जांचता है। यदि कोई कुंजी दबाया जाता है तो यह कुंजी मान देता है, ऊपर से नीचे तक बाएं से दाएं की गिनती (0 …15) नीचे की पंक्ति के लिए मान नोट करें: 14, 0, 15, 13 (हेक्स ई, 0, एफ, डी)। यदि कोई कुंजी दबाया नहीं गया था तो यह -999 एक त्रुटि कोड के रूप में वापस आ जाता है जिसे मुख्य कार्यक्रम में आसानी से उठाया जा सकता है। यदि उपयोगकर्ता प्रतिक्रिया के रूप में एक कुंजी प्रेस को उठाया जाता है तो अंतर्निर्मित एलईडी चमकती है। यह बहुत तेज़ी से चलता है और 0.2 सेकंड के डी-बाउंस प्रतीक्षा का उपयोग केवल तब किया जाता है जब कोई कुंजी दबाया जाता है।

चरण 4: गेटवैल्यू (अंक)

गेटवैल्यू (अंक)
गेटवैल्यू (अंक)

यह रूटीन संख्यात्मक कुंजियों से n अंकों का मान प्रदान करता है। यह लाल कुंजियों को अनदेखा करता है।

इस पायथन कोड को किसी अन्य डिवाइस पर चलाने के लिए आसानी से परिवर्तित किया जा सकता है, जैसे कि रास्पबेरी पाई, आपको शायद केवल स्क्रिप्ट के शीर्ष पर पिन सेटअप लाइनों को बदलने की आवश्यकता है।

अगर आपको कोड उपयोगी लगता है तो कृपया मुझे बताएं।

सुरक्षित रहें और मज़े करें!

सिफारिश की: