Forum: Mikrocontroller und Digitale Elektronik Tastermatrix mit Schieberegistern


von Gizmo (Gast)


Lesenswert?

Hallo

ich habe vor einen MIDI Controller zu konstruieren, der aus einer
Matrix
aus 8x8 Tstern besteht.

mein Problem ist, dass mir noch nicht ganz klar ist, wie man eine
Taster matrix aufbauen muss um jeden Taster einzeln abfragen zu können.


im Endeffekt ist die Matrix ja erst mal ein Gitter, an den
Schnittpunkte der Gitterlinien muss meines wissens ja immer eine Diode
zwischen X und  Y Leitung löten um Kurzschlüsse zu vermeiden.

kann mir da vielleicht jemand mit nem Taster Matrix Schaltplan weiter
helfen ?

meine Zweite Frage betrifft die Schiebe Register

ich habe ja durch die Taster Matrix eine X und Y Leitungen nun kann ich
doch vom µC aus die Tastenmatrix über Schiebe Register abfragen

hat jemand ne Ahnung wie das geht und was man da für Schiebe register
benötigt ?

danke schon mal für eure Hilfe

µC mit dem alles laufen soll ist ein ATMEAGA16

von The Daz (Gast)


Lesenswert?

Gizmo,
ich mach sowas ohne Dioden. Verbinde jeweils den ersten Kontakt von
acht Tastern in X-Richtung miteinander so dass du acht Zeilen bekommst.
Dann verbindest du den anderen Kontakt von acht Tastern in Y-Richtung um
auf 8 Spalten zu kommen. Die Matrix hat jetzt 8+8 Kontakte. Die
Anschluesse in X-Richtung klemmst du an ein 8-bit Schieberegister mit
parallelem Ausgang (74HCT164), die Y-Richtung an ein 8-bit
Schieberegister mit parallelem Eingang. Der uC schiebt jetzt immer ein
Bit in X-Richtung weiter und fragt nach jedem mal X-Schieben die
Y-Richtung komplett (8-Bit) ab.

Aber mal ne Frage : Bist du sicher, dass du 64 Tasten brauchst ? Das
wird ja ein Monster auf der Buehne.

   Daz

von The Daz (Gast)


Lesenswert?

Statt des 74HCT164 kann man auch nen 3zu8 Dekoder (74HCT138) benutzen,
der braucht 3 Pins vom uC aber man spart sich dort dann die
Bitschieberei. Die Y-Richtung kann man auch direkt an den uC anklemmen,
sofern du genuegend I/O Pins am uC uebrig hast.

von TravelRec. (Gast)


Lesenswert?

Wenn genügend Platz auf der Platine ist, kannst Du auch 8x 8-Bit
Schieberegister hintereinanderhängen, immer eine einzelne 1 durchlaufen
lassen, an jeden Registerausgang einen Taster hängen, alle 2. Tasterpins
auf eine "Rückleitung" klemmen, diese mit einem Pull-Down an den
Prozessor. Macht insgesamt 4 belegte Prozessorpins, 3 für´s Register
(Clock, Data, Strobe) und 1 für die Rückleitung. Das Ganze läßt sich
dann sehr übersichtlich aufbauen und man hat dan nicht so einen
Leitungssalat um die Taster drumherum.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.