Klawiatura numeryczna pod I2C

Klawiatura numeryczna pod I2C

Witam,
w tym poradniku chciałbym pokazać jak podłączyć klawiaturę membranową 4×4 pod magistralę I2C.
Prosiłbym o wyrozumiałość ze względu na to, że jestem nowy na Majsterkowie.

Klawiatura numeryczna pod I2C

A więc zaczynamy!

Co będzie nam potrzebne:
###############################################

Opublikuj swój projekt i odbierz 50% rabatu do wykorzystania w sklepie Nettigo.pl

Klawiatura numeryczna membranowa 16 klawiszowa(Nie musi być 16, może być 12)

http://botland.com.pl/klawiatury/1680-klawiatura-membranowa-numeryczna-16-klawiszy.html

Arduino (ja użyję leonardo)

http://botland.com.pl/arduino-moduly-glowne/1213-arduino-leonardo.html

Ekspander PCF8574

http://botland.com.pl/uklady-scalone-interfejsy/1210-pcf8574-ekspander-wyprowadze-mikrokontrolera.html

###############################################

Na początku musimy podłączyć naszą klawiaturę, chip i arduino do siebie:

keypad

Jeżeli mamy klawiaturę 16 klawiszową musimy dodać kabel biegnący z ostatniego pinu do pinu P7 ekspandera.

 

Po podłączeniu sprawdzamy adres urządzenia:

Sprawdzamy w Serial Monitorze czy płytka wykrywa nam ekspander.

I2C

U mnie ekspander ma adres 0x20. Będzie on nam potrzebny przy sprawdzaniu czy nasza klawiatura działa.

Do kodu potrzebne są następujące biblioteki:

Keypad

Keypad_I2C

Kod nie jest mojego autorstwa, jest przeze mnie zmodyfikowany.

Jeżeli macie klawiaturę 12 klawiszową usuńcie z kodu elementy klawiszów A, B, C i D, a także zmieńcie liczbe kolumn na 3.

Teraz po wgraniu kodu w Serial Monitorze powinniśmy dostawać informację o wciśniętym klawiszu.

Klawisze

 

Ja posiadam laptopa który nie posiada dodatkowej klawiatury numerycznej, więc wziąłem się za stworzenie takiej.

Takim oto sposobem mamy klawiaturę numeryczną do laptopa.

 

Dziękuję za czytanie!

Ocena: 4.23/5 (głosów: 61)
Nettigo - patron działu Elektronika

Podobne posty

32 komentarzy do “Klawiatura numeryczna pod I2C

  • Wszystko fajnie, pięknie, tylko że w przedostatnim przykładzie oprócz usunięcia abcd powinno się zmienić ilość kolumn na 3

    Odpowiedz
  • No ok. Dodałeś sobie klawiaturę numeryczną do komputera. Ale jak ją użyć np w WORDzie czy przeglądarce. Wydaje mi się, że sam odczyt w serial monitorze to nie wszystko.

    Odpowiedz
  • Pasowałoby jeszcze dorobić jakąś obudowę i będzie ładny dodatek do laptopa. Tylko cenowo niezbyt, bo takie klawiatury kosztują ok 20zł.

    Swoją drogą, czy ten moduł klawiaturki na zdjęciu jest wygodny w obsłudze? Klawisze łatwo dają się wciskać?

    Odpowiedz
  • Przy próbie kompilacji kodu wyskakuje error: fatal error: Keypad_I2C.h: No such file or directory.
    Dodałem plik który pobrałem keypad_i2c do katalogu z bibliotekami. Nie wiem już w czym jest problem. Prosze o pomoc

    Odpowiedz
  • Witam
    Po wgraniu bibliotek i skopiowaniu kodu nr: 2 przy próbie kompilacji wyskakują errory:
    sketch_sep11a:20: error: ‚Keypad_I2C’ does not name a type
    sketch_sep11a.ino: In function ‚void setup()’:
    sketch_sep11a:24: error: ‚kpd’ was not declared in this scope
    sketch_sep11a.ino: In function ‚void loop()’:
    sketch_sep11a:28: error: ‚kpd’ was not declared in this scope

    Proszę o pomoc

    Odpowiedz
  • Witam, ja mam pytanie jak zainstalować ta bibliotekę Keypad_I2C, bo wypakowauje to do pliku a bibliotekami arduino i mam blad kompilacji ze nie widzi tej biblioteki

    Odpowiedz
      • Wlasciwie to problem rozwiazaly inne biblioteki, ktore podeslala mi pewna osoba, ktorej zreszta jeszcze raz dziekuje. Natomiast urodzil sie nowy problem, mianowicie w momencie kiedy do ukladu ktory mamy powyzej chce wpiac wyswietlacz LCD i2c 16×2 to jest problem bo klawiaturka nie dziala jak powinna. A jedyne co robie to podpinam zasilanie na „+” zeby szlo na cala plytke, podobnie z masa, natomiast z SDA i SCL, troszeczke zmieniam, mianowicie przepinam je sprobuje to dobrze napisac: caly schemat podlaczenia ekspander i wszystko jest tak jak na schemacie w toturialu jedynie wyjscia SDA i SCL sa odpowiednio polaczone w H17 i H18 (z mojego screena), dalej moj wyswietlacz podlaczam mase i zasilanie na + i – odpowiednio a SDA i SCL wyswietlacza wpinam w I17 i I18 (z mojego screena) i moje pytanie dlaczego przy taki polaczeniu po pierwsze w momencie gdy sprawdzam na jakich adresach sa urzadzenia to ciagle wyswietla mi tylko 1 adres ten sam caly czas dodatkowo klawiatura przestaje wtedy poprawnie dzialac. Chcialbym zaznaczyc ze jestem dosc poczatkujacy i nie rouzmiem co dokladnie w tym polaczeniu jest nie tak

        Odpowiedz
  • Witam

    Ja rozwiązałem problem bibliotek.

    1) to co jest na stronie jest spakowane – zip nie rozpakuje trzeba rarem
    2) rozpakowane należy zmienić rozszerzenie pliku na *.zip
    3) w arduino dodac bibliotekę z zipa
    4) po tej operacji kompiluje się bezbłędnie

    Odpowiedz
  • Witam. Po wgraniu i połączeniu układu na serial monitorze wyskakuje tylko „1”
    i dalej nic się nie dzieje. Czemu tak się dzieje?
    Proszę o pomoc.

    Odpowiedz
  • Witam, mam pytanie PCF8574 ma 8 wyprowadzeń, przy takiej klawiaturze używa się 7 – w jaki sposób mógłbym sterować 8. pinem? chciałbym do niej podłączyć buzzer.

    Odpowiedz
    • Tak, możesz :
      a) podłączyć kilka ekspanderów (3 piny służą do ustawiania adresu )
      b) zastosować drabinkę rezystorową i na
      podstawie napięcia odczytywać stan przycisków
      c) zastosować lepszy ekspander z większą ilością pinów

      Generalnie za pomocą mikrokontrolera możesz wysterować kilkaset przycisków, zależy od zastosowanego rozwiązania.

      Odpowiedz

Odpowiedz

anuluj

Klawiatura numeryczna pod I2C

Nie przegap nowych projektów!

Zapisując się na nasz Newsletter będziesz miał pewność, że nie przegapisz żadnego nowego projektu opublikowanego w Majsterkowie!

Od teraz nie przegapisz żadnego projektu!

Masz uwagi?