jak dziala klawiatura...i inne takie

Oct 19, 2004 5 Replies

Witam. Zastanawiam sie nad rozwiazaniem pewnego problemu i jednym z elementow jest wiedza jak dziala klawiatura. Pewna wiedze juz posiadam, aczkolwiek sa jeszcze luki. Po nacisnieciu klawisza w paczkach po 11 bitow (szeregowo) jest wysylany kod nacisnietego klawisza (1 bajtowy w przypadku klawiator AT) przez pin nr 3 portu PS/2. To jest jasne. Zastanawia mnie natomiast w jaki sposob elektronika klawiatury wie, ze zostal nacisniety klawisz dajmy na to 'y'. Mam kawalek takiej elektroniki w rece, nic skomplikowanego. Laminat posiada



27 (hmmm) pinow, do ktorych sa doprowadzone obwody z matrycy (taka folia plastikowa ze sciezkami). Domyslam, sie, ze nacisniecie klawisza 'y' powoduje, ze dostaje jakis kilkunastobitowy kod tego klawisza (no z pewnoscia jednym z tych 27 pinow jest zasilanie i masa). No wlasnie to jest ten element ukladanki, ktorego jeszcze nie znam.

A teraz wyjasnie do czego mi to jest. Krotko mowiac, chce zrobic odtwarzac DivX na bazie PC i MoviXa. Wypadaloby zrobic jakies przyciski na front panelu. Ale zamist robic samemu jakis interface moznaby skozystac z elektroniki jakiejs starej klawiatury (btw, byl ten pomysl tez na tej grupie).



z gory dzieki za pomoc Pytajnik



U¿ytkownik "pytajnik" snipped-for-privacy@goto.hell napisa³ w wiadomo¶ci news:cl3fva$cu3$ snipped-for-privacy@news.dialog.net.pl

formatting link

Ja szukalem "kody+klawiszy+klawiatura". Znalazlem np. to:

formatting link
Czyli scan codes tak ? Hmm...mi sie wydawalo, ze taki kod jest wysylany z kontrolera klawiatury do portu PS. Czegos tu nie rozumiem, jezeli wiesz, bylbym wdzieczny za objasnienia. Po co w takim razie 27 pinow na tej plytce ? Wszak kod klawiatury to tylko 1 bajt.

Pytajnik

..

Wydaje Ci się że folia wysyła kod klawisza do kontrolera klawiatury ? Nie ma tak dobrze :-) Troszku teorii:

27 pinów -2(zasilanie)-3(transmisja) zostają 24 / 2= 12 rzędów i 12 kolumn więc 144 możliwe kombinację ich połaczenia. Teraz jak wciśniesz klawisz np."y" to "zwierasz" ze sobą powiedzmy 7 pin rzędów i 3 pin kolumn i właśnie kontroler klawiatóry wykrywa które piny są zwarta(połączone) ze sobą i na tej podstawie wie który klawisz jest wciśnięty.A folia "robi" za włączniki mechaniczne. Tak wygląda w uproszczeniu działanie klawiatóry PC-ta ,która to jest też swojego rodzaju wyspecjalizowanym komputerem :-)

Pzdr. Piotrek Sz.

Skaz ze znowu ! Wiem, ze stan matrycy jest sprawdzany co jakis interwal czasowy.

O dzieki serdecznie, wlasnie takie info mi bylo potrzebne. Ta transmisja to do czego ?

Czyli jezeli mamy dwa rejestry 12bitowe to wg twojego przykladu otrzymujemy:

000001000000 i 000000000100 ?!

Oczywiscie, mikrokontroler 8048, 8049 lub jakis inny podobny.

Pozdrawiam Pytajnik

pytajnik snipped-for-privacy@goto.hell napisał(a):

A jak klawiatura ma się porozumiewać z np. PC-tem ? Na migi ? :-)

Raczej nie o to chodzi.Procek wymusza(ustawia)na jednej z kolumn powiedzmy stan "0" (101111111111)na pozostałych kolumnach stan "1" i sprawdza czy w rejestrze rzędów wszystkie bity są "1" i jeśli tak jest to znaczy że żaden z klawiszy przyporzadkowanych do tej kolumny nie został wciśnięty,natomiast gdy w rejestrze rzędów jakiś bit jest = "0" np.(11111111110) tzn. że jeden klawisz przyporzadkowanych do tej kolumny jest wciśnięty i na tej podstawie potrafi zinterpretować który to dokładnie klawisz.Ufff..... To tak mniejwięcej wygląda.

Bywają różne .

Pozdrawiam. Piotrek Sz.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required