logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak obsłużyć przerwanie zewnętrzne w 8051 dla klawiatury matrycowej?

furia824 05 Kwi 2020 11:23 987 1
REKLAMA
  • #1 18590434
    furia824
    Poziom 2  
    Witam. Korzystam z MCU 8051 IDE. Mam zrobić program, który wykrywa i identyfikuje naciśnięty przycisk na klawiaturze matrycowej. Program powinien reagować na wciśnięcie przycisku - zwarcie łącznika. Klawiatura matrycowa jest podłączona do portu P1: wiersze - bity od 0 do 3 i kolumny - bity od 4 do 7. Co zrobić, żeby uzyskać przerwanie zewnętrzne podczas wciskania przycisku? Szukałem na internecie i ludzie w jakiś sposób odbierali takie wciśnięcie na wejściu INT0, ale nie było podane jak coś takiego zrobić, a moje różne próby również nie przyniosły skutku. Proszę o pomoc.
  • REKLAMA
  • #2 18590998
    n6210
    Poziom 29  
    https://circuitdigest.com/microcontroller-pro.../keypad-interfacing-with-8051-microcontroller
    Tu masz gotowca ale nie rozumiem po co ci przerwania? Chyba, że od timera, którym co jakiś czas będziesz przemiatał matrycę sprawdzając czy klawisz jest wciśnięty.

    Dodano po 29 [minuty]:

    Jak obsłużyć przerwanie zewnętrzne w 8051 dla klawiatury matrycowej?
    Jak ci bardzo zależy to:
    - ustawiasz na C1-4 stan niski na R1-4 wysoki
    - dodajesz 4 diody (Schotky-ego) pomiędzy R1-R4 i pinem INT0 (katody do Rx, anody do INT0)
    - po naciśnieciu dowolnego przycisku dostaniesz niski na INT0
    - w obsłudze INT0 już normalnie skanujesz klawiaturę
REKLAMA