पुशबट्टन: अरडिनोसह हा सोपा घटक कसा वापरायचा

बटण

Un पुश बटण एक असे बटण आहे जे आपणास व्यत्यय आणण्याची किंवा इलेक्ट्रॉनिक सिग्नल पाठविण्याची परवानगी देते. इतर घटकांसह एकत्रित या सोप्या घटकासह आपण बर्‍याच अनुप्रयोगांसाठी प्रकल्प तयार करू शकता. जेव्हा आर्डूनो सह प्रकल्पांचा विचार केला जातो तेव्हा या प्रकारच्या पुशबट्टनचा वापर खूप सामान्य आहे. आणि यापैकी अनेक बटणे एकत्रित करून आपण यापेक्षा अधिक जटिल कीबोर्ड तयार करू शकता, जरी या वापरासाठी आधीपासूनच प्रोग्राम करण्यायोग्य कीबोर्ड आहेत ...

तसे, आपण स्विचसह पुशबट्टनला गोंधळ करू नये. त्या पूर्णपणे भिन्न गोष्टी आहेत. फरक हा आहे की त्यावरील प्रत्येक प्रेससह स्विच किंवा स्विच सक्रिय किंवा निष्क्रिय केला जातो. पुश बटण केवळ एका राज्यातच राहील तर त्यावर दबाव आणला जात आहे. मी टिप्पणी दिली आहे की ती पाठवू किंवा व्यत्यय आणू शकते, कारण दोन मूलभूत प्रकारची बटणे आहेत.

पुश बटण चिन्ह

आहेत नाही किंवा साधारणपणे ओपन पुशबट्टन आणि एनसी किंवा सामान्यपणे बंद पुशबट्टन. हे रिलेमधून आपल्यालाही आवाज येईल. आणि हो, अगदी त्याच ऑपरेशन आहे. जेव्हा आपल्याकडे एनसी असेल, तेव्हा ते विद्यमान टर्मिनलमधून जाऊ देईल आणि आपण ते दाबत असतानाच ते व्यत्यय आणेल. दुसरीकडे, दबाव दबाव आणला जात नाही तेव्हा एनए चालू करण्यास परवानगी देत ​​नाही आणि आपण त्यास दाबल्यावरच ते होऊ देईल.

हे जाणून घेऊन, आपल्याला पुश बटणाबद्दल माहित असणे आवश्यक असलेली प्रत्येक गोष्ट आहे आरडिनो वापरून आपले कनेक्शन आणि प्रोग्रामिंग प्रारंभ करण्यासाठी. सत्य हे आहे की हे इतके सोपे घटक आहे की या प्रकारच्या पुशबट्टन्सबद्दल बरेच काही सांगण्यासारखे नाही.

अर्डिनोसह बटण एकत्रीकरण पुश करा

अर्दूनो सह सर्किट

La पुशबट्टनला जोडत आहे हे Ardino सह संवाद साधणे सोपे असू शकत नाही. आपण या ओळींवर पाहू शकता की आकृती एक उदाहरण आहे. प्रयोग सुरू करण्यासाठी फक्त एवढेच लागेल. परंतु नक्कीच, त्या योजनेसह आपण थोडेसे करू शकता. ते बटण काय नियंत्रित करणार आहे हे ठरवण्यासाठी आपण थोडी कल्पनाशक्ती ठेवणे आवश्यक आहे. खरं तर, आपण वारंवार hwlibre.es वाचल्यास आपण आधीच काही लेख पाहिले असतील ज्यात आम्ही पुश बटणे वापरली आहेत ...

ते कनेक्ट करण्याचे मार्ग

पुल-अप आणि पुल-डाऊन

आपल्याला माहित असले पाहिजे अशी एक गोष्ट म्हणजे अँटी-बाऊन्स आणि हे पुशबट्टन कसे जोडावेत. प्रथम आम्ही त्यांना कनेक्ट करण्याच्या मार्गावर जाऊ, जे आपल्याला आधीपासूनच माहित आहे की पुल-अप आणि पुल-डाउन प्रतिरोधकांसह असू शकते:

  • पुल-अप- या प्रतिरोधक सेटिंगसह, जेव्हा पुशबट्टन दाबले जाते तेव्हा मायक्रोकंट्रोलर किंवा अर्दूनो त्या पिनवर शून्य पाहू किंवा वाचू शकतात. म्हणजेच ते LOW सिग्नल म्हणून भाषांतरित करते.
  • खाली खेचा: या प्रकरणात हे अगदी उलट आहे, आपण कनेक्ट केलेल्या पिनद्वारे 1 किंवा उच्च सिग्नल वाचू किंवा प्राप्त करू शकता.

त्याला एनसी किंवा एनए मध्ये गोंधळ करू नका. आम्ही यापूर्वी पाहिलेले काहीतरी वेगळेच आहे. हे इतरांपेक्षा स्वतंत्र आहे ...

अँटी बाउन्स

पुशबट्टन ए बाउन्स प्रभाव दाबले तेव्हा. म्हणजेच जेव्हा ते दाबले किंवा सोडले जाते तेव्हा सिग्नलमध्ये त्याचे उतार-चढ़ाव उद्भवतात जे त्याच्या संपर्कांमधून जात असतात आणि यामुळे ते घडू नये म्हणून एचआयजीटी राज्यातून कमी किंवा त्याउलट होऊ शकते. हे आर्दूनोवर अवांछित प्रभाव आणू शकतो आणि विचित्र गोष्टी करु शकतो, जसे की एखादा घटक सक्रिय करायचा जेव्हा आम्हाला खरोखर पुश बटणाने ते बंद करायचे होते इ. कारण अर्डिनो बाऊन्सचे भाषांतर करतात जसे की एकापेक्षा जास्त वेळा दाबले गेले असेल ...

तो नकारात्मक प्रभाव तो एक उपाय आहे. यासाठी, एक पुल-अप किंवा पुल-डाऊन कॉन्फिगरेशन वापरली गेली असेल किंवा ती एनसी किंवा नाही असल्यास, एंटी-बाऊंस सर्किट (हार्डवेअर पद्धत) किंवा सॉफ्टवेअर (स्त्रोत कोड सुधारित करणे) मध्ये एक लहान कॅपेसिटर लागू करणे आवश्यक आहे. या सर्व प्रकरणांमध्ये, या प्रतिकृती टाळण्यासाठी उपाय लागू करणे आवश्यक आहे.

उदाहरणार्थ, सह पुल-अप आणि पुल-डाउन सर्किट्स अँटी बाउन्स कॅपेसिटर त्यांना यासारखे काहीतरी दिसेल:

रीबाउंडर

करताना सॉफ्टवेअर पद्धत या कोड स्निपेटमध्ये हे पाहिले जाऊ शकते:

if (डिजिटलरिड (बटण) == लो) // बटण दाबले आहे का ते तपासा
{
दाबले = 1; // चल बदलते मूल्य
}
if (डिजिटल रीड (बटण) == उच्च && दाबा == 1)
{
// इच्छित क्रिया करा
दाबले = 0; // व्हेरिएबल त्याच्या मूळ मूल्याकडे परत येईल
}

साधे प्रकल्प उदाहरण

पुश बटण आणि एर्डिनो सह अँटी-बाऊन्स

एकदा आपण आमच्या पुशबट्टन आणि अँटी-रिबाउंड सर्किटशी कनेक्ट होण्याच्या मार्गांचा विषय शिकल्यानंतर आपण यावर व्यावहारिक उदाहरण पाहू. पुशबट्टनसह एलईडी नियंत्रित करा. आपण पाहू शकता त्याप्रमाणे ही योजना तितकीच सोपी आहे.

एकदा योग्यरित्या कनेक्ट झाल्यावर पुढील गोष्ट लिहायची आहे अर्दूनो आयडीई मधील कोड आपल्या पॅनेलला प्रोग्राम करण्यासाठी आणि बटणे प्रयोग करण्यास प्रारंभ करा. आमच्या सर्किटवर नियंत्रण ठेवण्यासाठी साधे कोड उदाहरण खालीलप्रमाणे आहेः

// बटणावर नियंत्रण ठेवण्यासाठी स्केचचे उदाहरण
इंट पिन = 2;
इंट स्टेट;
पल्सटिंग इंट = 0;
शून्य सेटअप ()

{
पिनमोड (2, इनपुट); // तो पिन इनपुट करुन नाडी वाचण्यासाठी

पिनमोड (13, OUTPUT); // एलईडी साठी

सीरियल.बेगिन (9600);
}
शून्य पळवाट ()

{
जर (डिजिटलरेड (2) == उच्च)

{

पिन = 2;

अँटीबॉन्स (); // अँटी-बाउन्स फंक्शनला कॉल करा

}
}
// सॉफ्टवेअर अँटी बाउन्स फंक्शन
शून्य अँटी बाउन्स ()

{
असताना (डिजिटलरेड (पिन) == LOW);
राज्य = डिजिटलरेड (13);
डिजिटलराइट (13,! राज्य);
असताना (डिजिटलरेड (पिन) == उच्च);

}


5 टिप्पण्या, आपल्या सोडा

आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.

  1.   मार्सेलो कॅस्टेलो प्लेसहोल्डर प्रतिमा म्हणाले

    मस्त !!! धन्यवाद, मी सीएनसी तयार करीत आहे आणि विरोधाभास म्हणजे बटणे माझ्यासाठी सर्वात कठीण काम करणे आहे.

  2.   लिलियाना म्हणाले

    हाय! मी जी.एन.डी. च्या संबंधात नवशिक्या म्हणून सल्लामसलत करतो… .. आरेख २ मध्ये दाखविलेल्या शृंखलाच्या वर स्थित असलेल्या नकारात्मक रेषेत काळा वायर बाहेर पडू नये.

  3.   जियोव्हानी म्हणाले

    उत्कृष्ट स्पष्टीकरण .. दोन वर्षांपूर्वी मी कार इग्निशन प्रोजेक्ट केले आणि सत्य हे आहे की मी कधीही योग्य कीस्ट्रोक करू शकत नाही इग्निशनसाठी .. मी ही पद्धत वापरुन पाहत आहे. या महान मदतीबद्दल मी तुमचे आभारी आहे

  4.   उमर रोमरो रिंकन म्हणाले

    नमस्कार, मी खालील क्रमासह तीन बटणे आणि 5 लीड्ससह एक प्रकल्प करत आहे.
    1 पुश बटण 2 leds ला सिग्नल पाठवते, ज्याला मी 1 आणि 2 म्हटले आहे.
    दुसरे पुशबटण 3 आणि 2,3 नावाच्या 4 leds ला सिग्नल पाठवते.
    माझे तिसरे पुशबटन 3 आणि 3,4 नावाच्या दुसर्‍या 5 leds ला सिग्नल पाठवते.

    मी तो क्रम करणे व्यवस्थापित केले आहे, मला फक्त एक समस्या आहे, जेव्हा 2 बटणे दाबली जातात, तेव्हा ते एलईडीला चुकीचे सिग्नल पाठवते जे चालू असले पाहिजे, ज्यामुळे ते मधूनमधून ब्लिंक होते, मी विलंब सेट करून (2 सेकंदांचा) नियंत्रित केला आहे , जे मला हवे आहे जेणेकरून leds चालू राहतील आणि नंतर बंद होतील. तर माझा प्रश्न असा आहे की मी माझ्या प्रोग्राममध्ये मिलिस फंक्शन कसे ठेवू शकतो, मिलिस कसे कार्य करते हे मला समजत नाही, तुम्ही मला मदत करू शकता का हे मला जाणून घ्यायचे आहे. प्रत्येकामध्ये मिलिसचा वापर करून 3 बटणांसाठी उदाहरण बनवून, मला arduino ला विलंब न करता कधीही बटणे दाबता येण्यासाठी मिलिसची आवश्यकता आहे.

    1.    इसहाक म्हणाले

      नमस्कार उमर,
      मी तुम्हाला आमचे Arduino ट्यूटोरियल पाहण्याची शिफारस करतो:
      https://www.hwlibre.com/programacion-en-arduino/
      आणि तुम्ही आमचा मिलिस () वरील लेख देखील पाहू शकता:
      https://www.hwlibre.com/millis-arduino/
      ग्रीटिंग्ज