[Arduino] Tastenmatrix simulieren

OP (Firma: Pro-Stoff Textilhandel) #5157929
Lesenswert?

Hi,

ich habe leider derzeit ein Verständnisproblem und hoffe Ihr könnt mir 
helfen.

Ich habe 8 und 18 Anschlüsse die beliebig miteinander verbunden werden 
müssen je nach Anforderung.

Also z.B. 1 und 1 oder 5 und 7 oder 8 und 18 usw.

Ich kann hierbei auch nicht einfach ein High oder Low anlegen sondern es 
müssen immer jeweils zwei (ggf. auch mehrere) Anschlüsse verbunden 
werden.

Ich dachte bereits an einen 74hc4066 um die "Brücke" zwischen jeweils 
zwei Kontakten herzustellen aber dann brauche ich alleine davon 36 Stück 
und zusätzlich würde das viel zu viele Anschlüsse belegen.

Ich könnte zwar noch den 74xx595 verwenden aber ich denke das lässt sich 
eleganter lösen und ohne so viel externe Beschaltung.

Nun ist die Frage ob Ihr eine Idee habt wie man dies bewerkstelligen 
könnte.

THX
#5158035
Lesenswert?

Welche Signale laufen darüber? 3,3V, 5V, höher, digital oder analog? 
Muss die Verbindung bidirektional sein oder gehen die Signale immer in 
dieselbe Richtung? Welche Timinganforderungen gibt es, d.h. wie schnell 
muss ein Ausgang auf die Änderung seines Eingangs reagieren?

Viele Grüße, Stefan
#5158050
Lesenswert?

Ronny L. schrieb:
> Ich kann hierbei auch nicht einfach ein High oder Low anlegen sondern es
> müssen immer jeweils zwei (ggf. auch mehrere) Anschlüsse verbunden
> werden.

Ich denke so könnte es schon gehen. Der Tastatur-IC scannt ja die 
Tastatur indem er der Reihe nach Zeile für Zeile* auf ein definiertes 
Logic-Level legt und dann die anliegenden Logic Werte auf den einzelne 
Spalten einliest. Ich denke es sollte nicht so schwer sein, den Moment 
zu erkennen in dem die Zeile das Logic Level wechselt und dann 
entsprechend High / Low auf der Spalte auszugeben und so den Tastendruck 
zu simulieren.


* Ggf. Zeile und Spalte vertauschen, je nach konkreter Umsetzung / 
Benennung
#5158198
Lesenswert?

Michael E. schrieb:
> Wie würde das konkret gehen?

Beispiel für einen high-aktiven Zeileninput:

Der mc schaltet im Ruhezustand sowohl die Zeilen-Eingänge als auch die 
Spalten-Ausgänge auf low.
Soll eine Taste simuliert werden, z.B. in Zeile 2, Spalte 3, dann 
schaltet der mc seinen Zeileneingang 2 und seinen Spaltenausgang 3 auf 
High-Z. Damit wird beim aktiven (High) Zeile 2 Puls der Spaltenausgang 3 
ebenfalls ein High liefern.

Bei low-aktiven Signalen müssen die Dioden umgekehrt verwendet werden 
und der Ruhezustand an den mc-Pins ist High.

Die Logik kann natürlich statt mit Dioden und Widerständen auch mit 
Gattern realisiert werden. Die Skizze habe ich mal mit 4/4 Matrix 
gemalt, sie kann natürlich beliebig erweitert werden.

Diese Schaltung funktioniert nicht, falls Mehrfachtastendrücke simuliert 
werden sollen. Die meisten Tastaturen sind aber dafür auch garnicht 
ausgelegt (dafür muss jede einzelne Taste mit einer Diode entkoppelt 
werden).

Viele Grüße Stefan
Angehängte Dateien:
OP (Firma: Pro-Stoff Textilhandel) #5158558
Lesenswert?

Teo D. schrieb:
> Analog Multiplexer.
> ZB: 74HC(x)4067/4051

Das sieht fast exakt nach dem aus was ich brauche. Die Frage ist jetzt 
noch ob die kaskadierbar sind, soweit ich das jetzt herauslesen konnte 
nicht aber mein Englisch ist auch nicht gerade "the yellow from the egg" 
und mein Hauptgeschäft sind Textilien ;)

Wenn ich das richtig verstehe müsste ich mit maximal 4 Stück davon 
auskommen.
Gast #5158686
Lesenswert?

Ronny L. schrieb:
> Ich habe 8 und 18 Anschlüsse die beliebig miteinander verbunden werden
> müssen je nach Anforderung.

Bist du sicher, dass du an dieser Stelle mit deiner Mimik eingreifen 
möchtest? Genauso könntest du vielleicht nach einer kleinen 
Robotersteuerung fragen, der es ermöglicht, die Tasten direkt zu 
drücken.

Was ist die Aufgabe, die dahinter steht.
#5158765
Lesenswert?

EPROM(s)

Die Abfrageleitungen (Ausgang) mit den Adressleitungen verbinden, die 
Datenleitungen mit den Abfrageleitungen (Eingang) verbinden. Mit den 
verbleibenden Adressleitungen die gewünschte 'Taste' einstellen.
OE und CE des/der EPROMs auf GND.
Entsprechendes Muster in das/die EPROM(s) brennen.


Gruß
Jobst

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