Table of Contents
Debouncing एक ऐसी तकनीक है जिसका उपयोग माइक्रोकंट्रोलर प्रोग्रामिंग में बटन इनपुट के विश्वसनीय रीडिंग को सुनिश्चित करने के लिए किया जाता है। जब एक बटन दबाया जाता है या जारी किया जाता है, तो यह यांत्रिक कंपन के कारण कई सिग्नल उत्पन्न कर सकता है, जिससे झूठे ट्रिगर हो जाते हैं। debouncing को कार्यान्वित करने से इन अवांछित संकेतों को फ़िल्टर करने में मदद मिलती है और बटन प्रेस का सटीक पता लगाना सुनिश्चित होता है।
Debouncing क्या है?
Debouncing एक बटन के भौतिक संपर्क उछाल के कारण शोर को नष्ट करने की प्रक्रिया है। जब एक बटन दबाया जाता है, तो संपर्क तेजी से कनेक्ट हो सकता है और अलग होने से पहले कई बार डिस्कनेक्ट हो सकता है। debouncing के बिना, इन रैपिड संकेतों को कई प्रेस के रूप में गलत व्याख्या किया जा सकता है।
Debouncing के तरीके
वहाँ दो सामान्य तरीकों से बाहर निकलने के लिए Arduino में लागू कर रहे हैं:
- सॉफ्टवेयर डिबॉन्सिंग: एक स्थिर संकेत की पुष्टि करने के लिए समय के साथ एक देरी या बटन स्टेट की जांच करने में शामिल हैं।
- ]हार्डवेयर डिबॉंसिंग: सिग्नल को चिकना करने के लिए आरसी फिल्टर या शमिट ट्रिगर जैसे इलेक्ट्रॉनिक घटकों का उपयोग करता है।
सॉफ्टवेयर डिबॉंसिंग कार्यान्वित करना
सॉफ्टवेयर debouncing आमतौर पर Arduino परियोजनाओं में प्रयोग किया जाता है। इसमें बटन स्टेट को पढ़ना शामिल है, जो एक छोटी अवधि के लिए इंतजार कर रहा है, और फिर यह सत्यापित करना कि क्या राज्य अपरिवर्तित है। यह प्रक्रिया बाउंसिंग के कारण होने वाले झूठे ट्रिगर को कम करती है।
उदाहरण कोड स्निपेट:
]]const int buttonPin = 2;
int buttonState = 0; ]
]]]]]]
]]]]
void loop() {]
]] int reading = DigitalRead(buttonPin);
] अगर (reading != buttonState) {]]
]] FinalDebounceTime = मिली (); ]
]}
] अगर (मिलिस () - LastDebounceTime) > debounceDelay] {]
] बटनस्टेट = रीडिंग;
A
A