Albo Bounce, albo debounce – czyli współczesna mitologia …

avr_27

Tak tak… każdy pin bouce czasem belonce .. niczym ćma wokół lampy … i jest tyle sposobów na bounce, że urosła do rangi mitu i co gorsza mitologia ta ów przysparza masę kłopotów i zakrawa wręcz na fanatyzm udowadniania swoich racji i swoich sposobów na drgające styki ….  jak jest z tym naprawdę ??  ….

hm…..   miałem napisać tu coś mądrego i pouczającego wykorzystać wysoko budżetowy sprzęt i dokonać pomiarów na poziomie molekularnym rozbijając cząsteczki na atomy byle by udowodnić, że to ja mam rację ….   tak jak działają niektórzy …. tymczasem na postawione pytanie:

Jak jest z tym naprawdę ??  — odpowiem wam wprost …   NIE MAM POJĘCIA :)

Tak , tak …  nie mam, nie chcę mieć i nie zamierzam wdawać się w żadne dywagacje dotyczące tego zjawiska :) , które  wszyscy obrazują np tak:

SW-PullUp

<to jest ta chwila, w której powiało grozą>

Poco więc ten cały wpis ?? to proste …

Podczas gdy reszta świata trwoni czas na kłótnie kto ma więcej racji  (albo większy oscyloskop gdzie większe bounce widać) ja postanowiłem przedstawić rozwiązanie stricte sprzętowe :) ale w dwóch aktach  …..


 

..::  AKT – I  ::..


 

Tu najprostsze rozwiązanie problemu czyli układ RC , Jak wiadomo takie rozwiązanie jest proste w realizacji i poza zwiększeniem ilości elementów na płytce nie komplikuje nam układu specjalnie, a jednocześnie oszczędzamy zasoby naszego mikrokontrolera nie trwoniąc linijek kodu :)

04

Prawda, że proste i banalne ??  nie wymaga tłumaczenia i co ciekawsze dobrze sobie radzi z naszym problemem drgających styków. Jednak układ ten ma swoją wadę i wnosi dodatkową zwłokę w zadziałaniu przycisku, ponadto nie zawsze mamy miejsce na układ RC, który nam pomoże zniwelować horror styków drgających…  i w tym oto momencie przychodzi nam z pomocą …

 


 

..::  AKT – II  ::..


MAX6818EAP

Rozwiązaniem naszego problemu są może i trochę drogie , ale za to niezawodne produkty firmy MAXIM, dokładnie chodzi o rodzinę  MAX68xx.    Układ występuje w konfiguracji  1 / 2 / 8  kanałów i stanowi sprzętowe kompleksowe rozwiązanie problemu drgających styków, które osobiście chętnie stosuję.

 Najczęściej używam MAX6816 , to niewielki układzik w obudowie SOT23-6 o następującym pinoucie:

MAX6817-pinout

schemat blokowy debouncera przedstawia się następująco:

www.mikrokontroler

a jego stosowanie jest banalnie proste …

287Fig05

To tylko przykład z noty gzie znajdziecie wszystko co trzeba wiedzieć na temat tego układu i jego braci, ale najważniejsze jest to że doskonale pozbywa się efektu drgania styków i ponadto posiada  zabezpieczenie ESD ± 15kV oraz tolerancję błędów na poziomie ± 25V.  Jest wykonany w technologio CMOS dzięki czemu zapewnia komfort działania i odpowiednią szybkość reakcji oraz odpowiednią do naszych celów charakterystykę sygnału:

Przechwytywanie

NOTA:  MAX6816-MAX6818.pdf

Drugim chętnie używanym poza pojedynczym  przeze mnie jest MAX6818  który zapewnia 8 debouncerów :)

MAX6818EAP_T_IC_SW_DEBOUNCE_20_SSOP

Występuje on w obudowie SSOP20 o następującym pinoucie:

Przechwytywanie

układ jest zbudowany tak samo jak 6816 ale ma 8 kanałów co pozwala obsłużyć 8 przycisków co jest aż nadto w większości przypadków. Typowy układ połączeń podaje nam Nota  wiec niema kombinowania co z czym :

Przechwytywanie

stosując się do powyższego schematu możemy sobie wykonać płytkę pod klawiaturkę. która będzie pozbawiona horroru jakim jest Stick Bounce oraz  klątwy Debounce. Dzięki tym rozwiązaniom wasze układy będą niezawodne i zawsze będą działać zgodnie z waszymi zasadami.  I to by było na tyle …

Kolejny raz mroki ciemnoty i zabobonów  rozwiewa wiatr  technologi, wiatr przemian, wywiewając z ciemnogrodu klątwę drgających styków …  :)

Na koniec tylko płyteczka …

Przechwytywanie

Miłej zabawy ….

2 thoughts on “Albo Bounce, albo debounce – czyli współczesna mitologia …

  1. Cześć,
    w którym polskim sklepie można kupić te układy MAX68xx ? i jaka jest orientacyjna cena tych układów ?

  2. np w farnelu z tym, że układ tani nie jest :( ale tam gdzie potrzebujesz wysokiej niezawodności i jakości warto stosować, choć ja daję je wszędzie gdzie potrzebuję do 8 przycisków, w innych przypadkach stosuję sterowniki klawiatur matrycowych
    np MAX7370.

Możliwość komentowania jest wyłączona.