Table of Contents
Mekaanisia kytkimiä käytetään yleisesti elektronisissa projekteissa käyttäjän syötteiden havaitsemiseksi. Ne kuitenkin usein tuottavat meluisia signaaleja, jotka voivat johtaa useisiin ei-toivottuihin signaaleja. Debouncing on prosessi, jolla suodatetaan nämä väärät signaalit tarkasti havaitsemisen varmistamiseksi. Mikroohjaimet voivat toteuttaa erilaisia debouncing tekniikoita kytkimen luotettavuuden parantamiseksi.
Laitteiston poistotekniikat
Laitteiston poisto edellyttää ulkoisten komponenttien lisäämistä kytkinsignaalin vakauttamiseksi. Yhteisiin menetelmiin kuuluu RC-pienipäästösuodattimien tai Schmittin laukaisimien käyttö. RC-suodatin, joka koostuu vastuksesta ja kondensaattorista, tasoittaa pomppimisen aiheuttamia nopeita signaalimuutoksia. Schmittin laukaisimet tarjoavat hysteriaa, mikä varmistaa puhtaat siirrokset myös meluisilla syöteillä.
Ohjelmistojen poistomenetelmät
Ohjelmistojen poisto perustuu ohjelmointilogiikkaan mikroohjaimen sisällä. Yksinkertaisin lähestymistapa on ottaa näyte kytkintilasta säännöllisin väliajoin ja vahvistaa vakaus tietyn ajan kuluessa. Tämä estää pomppia aiheuttamat väärät laukaisimet. Viiveen käyttöönotto tai ajastimien käyttö voi auttaa varmistamaan johdonmukaisen kytkintilan ennen kuin rekisteröit lehdistön tai julkaisun.
Esimerkki debouncing-algoritmista
Yksi yhteinen ohjelmistomenetelmä on "state change detection" -algoritmi. Siihen kuuluu kytkinsyötteen lukeminen ajoittain ja päivityksen päivittäminen, kun vakaa tila jatkuu. Kun syöte pysyy muuttumattomana ennalta määritellyn ajan, muutos hyväksytään voimassa.
- Näytekytkin syöttää muutaman millisekunnin välein
- Tarkista, että syöte pysyy samana useissa näytteissä
- Rekisteröi muutos vasta yhdenmukaisten lukemien jälkeen
- Jätä huomiotta nopeat vaihtelut poistojakson aikana