Tag: keypad

Obsługa klawiatury matrycowej w Arduino

Często zdarza się, że w projekcie nad którym pracujemy musimy mieć do dyspozycji sporo przycisków. Już przy zwykłej klawiaturze numerycznej podłączając każdy przycisk pod osobny pin zużyjemy 12 pinów I/O (cyfry 0-9 oraz # i *). W dzisiejszym artykule dowiemy się jak podłączyć takie klawiatury używając jak najmniej pinów.

Czytaj dalej...

Attiny2313 jako mini klawiatura

Na rynku istnieje sporo gotowych interfejsów wejściowych. Różnego rodzaju klawiatury numeryczne można kupić za kilkanaście złotych. Bardziej wybredni mogą skusić się na klawiaturę pojemnościową z interfejsem I2C. Jeśli ktoś woli formę Joysticka, to przykład Joystick Shield będzie doskonałym rozwiązaniem. Ostatnio pojawiła się także miniaturowa klawiaturka, którą łatwiej można wpasować do budowanego projektu, ma też interfejs I2C, co dodatkowo przemawia na jej korzyść. Są to doskonałe rozwiązania, ale co zrobić, jeśli chcemy ustawić guziki w jakiś nietypowy, „fikuśny” kształt? Na przykład dookoła wyświetlacza. Albo obudowa projektu, który konstruujemy wyklucza użycie gotowej klawiatury. Najprostszym rozwiązaniem jest użycie pinów cyfrowych Arduino, do których podłączamy

Czytaj dalej...

Debouncing klawiszy w Nettigo Keypad (i nie tylko)

Biblioteka do Nettigo Keypada została uaktualniona o domyślne wsparcie dla debouncingu. O co chodzi? Jeżeli naciskasz klawisz, może pojawić się zjawisko migotania podczas włączania i wyłączania przycisku. Wynika to właściwości styku mikroprzełącznika – jest to mechaniczne zetknięcie/rozłączenie styków, więc może być tak że pojawi się szereg impulsów podczas jednego przełączenia. Gdy Arduino często sprawdza stan klawisza takie migotanie może zostać odczytane jako wielokrotne naciśnięcia i zwolnienia danego przycisku, mimo że został naciśnięty tylko raz. Jak temu zapobiegać? Potrzebny jest tak zwany debouncing. Można po odczycie stanu klawisza poczekać chwilę używając delay. Proste i skuteczne. Pseudokod realizujący to wygląda tak: obecny_stan_klawisza

Czytaj dalej...

Kręć, się kręć czyli serwo HXT900 z continuous rotation

Serwomechanizmy takie jak mały HXT 900 są sterowane szerokością impulsu PWM. Czyli podłączamy zasilanie, masę i wyjście cyfrowe PWM do serwa i jeżeli skorzystamy z biblioteki Servo wchodzącej w skład Arduino IDE wystarczy napisać do serwa wartość od 0 do 180 określającą jak daleko ma się wychylić. Dzięki niewielkiej przeróbce HXT900 można zmienić w silniczek którego prędkość obrotową można regulować w prosty sposób przez bibliotekę Servo, bez konieczności korzystania z układów elektronicznych do zasilania i sterowania silnikiem. Nazywane to jest continuous rotation. Zacznijmy od demontażu serwa, przy okazji zobaczymy jak serwo działa. Najpierw – co będzie potrzebne do tej operacji?

Czytaj dalej...

Nettigo keypad – jak podłączyć prostą klawiaturkę do Arduino

Nettigo Keypad jest prostą klawiaturą złożoną z pięciu klawiszy. Pomyślana została ona jako część interfejsu do Twojego urządzenia – pięć klawiszy jest ułożonych tak, że można je wykorzystać jako cztery klawisze kierunku i jeden wyboru. Całość jest odczytywana przez jeden pin – aby odczytać, który klawisz został naciśnięty trzeba zarezerwować jedno wejście analogowe. Keypad powstał jako uzupełnienie LCD Kitu, tak aby razem można było zbudować jakiś prosty interfejs do Arduino. LCD Kit razem z keypadem ma funkcjonalność zbliżoną do LCD Shielda. Jaka jest różnica? Dzięki LCD kitowi (albo innemu wyświetlaczowi – nie 2×16 a np. 4×20) i keypadowi, Arduino może

Czytaj dalej...