Gast
#127489
wie entwerfe ich am einfachsten eine hextastatur mit 4-bit ausgang 0000 bis 1111 gruß patrick p.
|
Anzeige
|
Hextastatur
Gast
#127489
wie entwerfe ich am einfachsten eine hextastatur mit 4-bit ausgang 0000 bis 1111 gruß patrick p.
Gast
#127490
Wenn Du mir sagts, was eine Hextastatur ist, kann ich Dir vieleicht helfen! MFG
Gast
#127491
Meinst du eine 4 x 4 Matrix ?
Gast
#127492
ja josef mein ich!
Gast
#127493
Stell dir vor, Y1 bis Y4 sind (AVR) Eingänge mit aktiviertem Pull Up. X1 bis X4 sind Ausgänge. Schalte X1 auf low und scanne Y1 bis 4. Wenn ein Eingang low ist(PIN-register), ist entsprechende Taste gedrückt.Usw. mit X2 bis 4. Michael
Gast
#127494
In die Leitungen X1 bis X4 müssen noch 4 Dioden, Katode zum Controller. Michael
Gast
#127495
Hmm, gefordert war ja ein 4-Bit-Ausgang. Da trifft die Matrixansteuerung natürlich nicht so ganz. Die hat zwar vier Bit Ausgang, benötigt aber auch noch vier Bit Eingang und ein wenig Code zur Abfrage. Echte vier Bit reichen allerdings nicht ganz: Damit kannst Du so gerade codieren, welche Taste gedrückt ist, aber nicht, ob sie gedrückt ist oder nicht. Oder anders: Du hast insgesamt 17 Zustände: jede Taste einzeln gedrückt und keine Taste gedrückt. Du könntest einen vier Bit-Port mit Pullup benutzen, und über Dioden mit jeder Taste ein bestimmtes Muster an diesem Port auf Null ziehen.(Kathode zum Taster, Anode zum µC, anderer Pin vom Taster gegen Masse). Dann benötigst Du noch von jedem Taster, ebenfalls über eine Diode, eine Leitung an z.B. einen IRQ Pin. Sobald jetzt eine Taste gedrückt wird, wird ein IRQ ausgelöst und Du kannst den vier-Bit-Port abfragen, welche Taste gedrückt wurde. (klappt auch hervorragen, wenn der µC im Sleep-Mode ist). Gruß, Markus_8051
Gast
#127496
hat zufällig auch jemand den code dafür wie man so eine matrix abfragen kann?? mit einem Atmelcontroller
Gast
#127497
Code? Wäre eine Idee nicht viel sinnvoller, damit du es verstehst und später selbst umsetzen kannst?
Gast
#127498
Antwort schreiben |
Anzeige
|