ATNEL tech-forum https://forum.atnel.pl/ |
|
Obsługa klawiatury 4x4 https://forum.atnel.pl/topic20109.html |
Strona 1 z 1 |
Autor: | piceropc [ 30 sty 2018, o 00:43 ] |
Tytuł: | Obsługa klawiatury 4x4 |
Cześć Dopiero zaczynam działać z AVR'ami i chciałem poddać pod ocenę procedurę obsługi klawiatury matrycowej 4x4. Wiedzę zaczerpnąłem z artykułu dotyczącego obsługi klawiszy: http://mirekk36.blogspot.com/2012/10/ob ... a-cd3.html Wykorzystałem część rozwiązań jak możliwość przekazywania funkcji do procedury bazowanie na timerach programowych oraz nazewnictwo części zmiennych. Całkowicie nowa jest struktura procedury z poniższymi właściwościami: - Eliminacja drgań styków przy naciśnięciu i zwolnieniu klawisza - Nie reagowanie w przypadku wystąpienia szpilkowych zakłóceń na pinach klawiatury - Niezależny przydział każdej linii klawiatury do dowolnego pinu w dowolnym porcie - Auto powtarzanie znaków przy długim naciśnięciu - ustalanie zwłoki do powtarzania oraz okresu pomiędzy powtórzeniami. - Procedura nieblokująca oparta na znaczniku "klock" i poleceniu Switch symulująca automat stanowy. - Przekazywanie znaku do bufora. W przypadku nie odczytania z bufora znaku procedura nie nadpisuje go blokując odczyt kolejnych znaków. - Zabezpieczenie kontrolera przed zwarciem pinów przy jednoczesnym naciśnięciu kilku klawiszy przez odłączanie nieskanowanych kolumn poprzez Hi-Z Wymaga podciągnięcia 4 linii wejściowych do Vcc poprzez rezystory - w moim przypadku 33kOhm do linii PD4-PD7. Wyeksportowana procedura z Eclipsa: Załącznik: KeyPad4x4_MultiPort.zip i listing głównej procedury: |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |