Table of Contents
Avbouncing er en teknikk som brukes i digital elektronikk for å sikre at bare et enkelt signal er registrert når en bryter eller knapp trykkes. Mekaniske brytere genererer ofte flere signaler på grunn av kontakt studs, noe som kan forårsake feil i digitale systemer. Gjennomføring avbouncing bidrar til å forbedre påliteligheten til inngangsavlesninger.
Forståelsesbryter Bounce
Når en mekanisk bryter presses eller frigjøres, endres kontaktene ikke tilstand rent. I stedet gjør de raskt og bryter kontakt flere ganger før avregning. Dette fenomenet, kjent som studs, kan vare fra noen få mikrosekunder til millisekunder, noe som fører til flere uønskede signaler.
Praktiske avbouncing teknikker
Flere metoder brukes til å avverge digitale innganger, inkludert maskinvare og programvaretilnærminger. Maskinvareavbouncing involverer ofte RC-filtre eller Schmitt-utløsere, mens programvareutebøyning bruker timing algoritmer for å ignorere raske tilstandsendringer.
Utvikling av programvare
Programvareavbouning innebærer typisk sampling av inngangen med jevne mellomrom og bekrefter tilstandsendringen bare hvis den forblir stabil over en spesifisert varighet. Denne metoden er fleksibel og enkel å implementere i mikrocontrollerkode.
Hvis for eksempel en knappinngang leses hver 10 millisekund, kan systemet bekrefte at inngangen forblir i den nye tilstanden i minst 50 millisekunder før du registrerer endringen. Dette reduserer falske utløsere forårsaket av hopping.
Beregner debuttid
Avvikstiden avhenger av bryterens egenskaper og systemkrav. En felles tilnærming er å velge et avvik mellom 5 og 20 millisekunder. Beregningen innebærer å måle maksimal sprøyte varighet og legge til en sikkerhetsmargin.
Hvis bryteren f.eks. sprøyter i opptil 10 millisekunder, sikrer en utstøtt tid på 20 millisekunder pålitelig deteksjon uten betydelig forsinkelse.
- Identifiser maksimal sprøytetid
- Velg et avbudsintervall litt lengre enn studstid
- Implementer periodisk prøvetaking i kode
- Bekreft stabil tilstand før du registrerer inngang