4x4 Keypad Matrix Frage, wie verstehe ich die Schaltung?

OP #1631242
Lesenswert?

Hallo,

zum lern zwecke (Tasten Eingabe, Codeschloss etc.)  möchte ich dieses 
4x4 Keyboard Matrix kaufen nun die Schaltung verstehe ich aber nicht 
ganz da PIN1 bis PIN4 Eingänge und PIN5 bis PIN8 Ausgänge sind.

Frage, warum Ausgänge?
Frage, wenn ich Taste 1 drucke wird PIN8 Aktiv und „fahre“ über 1x10K 
Widerstand, wenn ich die Taste 2 drucke ist genau so PIN8 -->1x10K oder? 
Wie kann ich dann unterscheiden ob Taste 1 oder 2 gedruckt würde?

Kann mich jemand helfen?
Gruß
Alejo
Angehängte Dateien:
#1631452
Lesenswert?

Also,

die Widerstände und die eingezeichnete Spannungsversorgung kannst du 
eigentlich weglassen wenn du das ganze mit einem µc betreiben möchtest.

Alle 8 Pins schließt du an einen Port des µc an, Pin1 bis 4 werden am µc 
als Ausgänge definiert und Pin 5 bis 8 werden als Eingänge definiert ( 
mit internen Pullups angeschaltet ).

Du kannst das ganze ganze auch ohne die internen Pullups betreiben, dann 
brauchst du allerdings auch wieder die 4 Wiederstände ( Externe Pullups 
).

Pin1 bis 4 werden gemultiplext, d.h. zuerst alle auf high seten und dann 
abwechelnd einen nach dem anderen auf low ziehen. ( Z.B. im 20ms Takt )

In dem Moment wo einer der Pins1 bis 4 auf low ist schaust du was sich 
am Eingang der Pins5 bis 8 tut ( ist eine Taste gedrückt wird der 
korrespondierenede Eingangspin auf low gezogen und du bekommst du das 
entsprechende Bitmuster an diesem Nibble zu sehen )

In der Praxis: Pin 3 ist gerade auf low, du hast Taste A betätigt, dann 
wird Pin 6 auf low gezogen.

( 1011 1011 )

So bekommst du immer ein anderes Bitmuster je nach dem welche Taste 
betätigt ist.

Gruss Marc
Gast #1631563
Lesenswert?

> Pin1 bis 4 werden gemultiplext, d.h. zuerst alle auf high seten und
> dann abwechelnd einen nach dem anderen auf low ziehen.

Was passiert bei Betätigung von 2 Tastern? Richtig, Kurzschluss zwischen 
high und low.
#1632006
Lesenswert?

Hallo,

> Was passiert bei Betätigung von 2 Tastern? Richtig, Kurzschluss zwischen
> high und low.

Also ich arbeite mit AVR Controllern, die haben da keine Probleme mit.
Habe schon viele Male so eine 4x4 oder 4x3 Tastatur in Projekte 
eingebunden ohne Probleme.

Du kannst sogar mit der ganzen Handfläche von mir aus auf die Tastatur 
drücken, da passiert nix.

Du wirst immer nur ein Bitmuster bekommen. Dieses vareiert natürluch 
jenachdem welche tasten du gleichzeitig drückst.

Betätigst du zb 9,0,A,B gleichzeitig bekommst du ein Bitmuster immer 
gleichbleibend. Egal welcher Pin auf low ist.

Betätigst du zb 3,7,A,E gleichzeitig bekommst du bei jedem low ziehen 
eines Pin immer ein anderes Bitmuster an Pin5 bis 8 zurück.

---> Ausserdem welcher Idiot drückt schon 2 Tasten, welchen Sinn macht 
das, das passiert doch höchstens unabsichtlich und warscheinlich sehr 
selten !!!!

Gruss Marc
Gast #2921932
Lesenswert?

Hallo,

ich habe zu diesem Thema noch ein paar kurze Fragen:

1: Sind die Eingänge 5-8 (wenn keine Taste gedrückt wird) prinzipiell 
HIGH?
Da diese ja laut Erklärung nicht beschaltet sind, solang keine Taste 
gedrückt wird und sie dann über die Pull-Up-Widerstände auf LOW gezogen 
werden.

Vielen Dank im Vorraus
Moderator (Firma: Titel) Persönliche Seite #2922059
Lesenswert?

Marc B. schrieb:
>> Kurzschluss zwischen high und low.
> Also ich arbeite mit AVR Controllern, die haben da keine Probleme mit.
Es gibt auch noch andere uCs...

> Du kannst sogar mit der ganzen Handfläche von mir aus auf die Tastatur
> drücken, da passiert nix.
Nur weil der uC nicht kaputtgeht, bedeutet das noch lange nicht, dass 
es ihm gut gefällt...
Richtigerweise schaltet man nur 1 Ausgang mit aktivem Pegel (hier 
sinnvollerweise mit einem aktiven Low-Pegel wegen der Pullups), und den 
Rest der uC-Pins auf hochohmig.

Und jetzt zur Funktion: an den Pins 5-8 hängen uC-Eingänge mit 
aktivierten Pullups.
Jetzt wird der Pin 1 auf Low gelegt, die Pins 2-4 werden auf Eingang mit 
Pullup geschaltet. Jetzt können die Tasten 1,5,9 und C eingelesen 
werden: je nach dem, welcher vom Pin 5-8 Low ist, wurde die 
entsprechende Taste betätigt.
Danach wird der Pin 2 auf Low gelegt, die Pins 1,3 und 4 auf 
Pullup-Eingang geschaltet. An den Pin 5-8 können jetzt die Tasten 2,6,0 
und D eingelesen werden.
Dann kommt der Pin 3 und danach noch der Pin 4.

Gleichzeitig sollte jedesmal an den Pins 1-4 kontrolliert werden, ob 
tatsächlich nur 1 Leitung auf Low ist (nämlich die, die gerade Ausgang 
sein darf). Sind nämlich 2 Leitungen auf Low, dann hast du (mindestens) 
eine Doppelbetätigung, evtl. sogar mehrere...

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