Tastatur mit Interrupt

#1810778
Lesenswert?

Ich möchte bei meinem AVR-Projekt eine Tastatur bauen, bei der bei jedem 
Tastendruck (also egal welche Taste) zusätzlich ein Hardwareinterrupt 
ausgelöst wird. Die Interruptroutine soll dann nachschauen, welcher Pin 
auf LO gesetzt wurde und entsprechend reagieren.
Dazu habe ich folgende Schaltung entwickelt - das Problem, sie 
funktioniert leider nicht so wie sie soll. Taste 1 (ganz links 
funktioniert aber bei allen anderen werden entweder alle oder 
irgendwelche Pins ausgelöst und ich verstehe nicht so richtig warum.
Man könnte das Problem natürlich umgehen, indem man den Interrupt-Pin 
durch Optokoppler galvanisch trennt. Das geht auch - habs ausprobiert, 
mir wäre allerdings eine einfachere Lösung mit Dioden lieber.
Kann mir jemand helfen?
Angehängte Dateien:
#1810785
Lesenswert?

Wird P3 gedrückt, werden über die Dioden auch P2 und P1 low gezogen. 
Ähnlich mit P2 und P1.

Spar' Dir die vertikalen Dioden und mache je eine Diode vom 
Interrupt-Eingang zu jedem der Taster (also Anode aller Dioden gemeinsam 
an Interrupt, Kathoden an den jeweiligen Taster).

Bei einigermaßen aktuellen AVRs kann übrigens jeder Eingangspin einen 
Interrupt auslösen (PCINT).  Deine Mimik wäre dort überflüssig.  Also 
wenn's ein ATmega8 ist, einfach die Altlast entsorgen, auf den ATmega88 
umsteigen und die Dioden sparen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren