Forum: Mikrocontroller und Digitale Elektronik Taster-Matrix mit AD-Wandler


von Björn (Gast)


Angehängte Dateien:

Lesenswert?

Moin,

bin gerade dabei eine 4x3 Taster Matrix zu realisieren. Diese soll
durch verschiedene Spannungen über einen AD-Wandler funzen.

Den Schaltplan hab ich mal angehängt.

Nun zu meinem Problem. Was passiert wenn ich zwei Taster gleichzeitig
drücke? Dann müssten sich doch die Spannungen addieren und es gibt nen
falschen Wert. Ist das so? Wenn ja, wie kann ich das beheben?

von inoffizieller WM-Rahul (Gast)


Lesenswert?

>Nun zu meinem Problem. Was passiert wenn ich zwei Taster gleichzeitig
>drücke?

Du solltest dir das Ding auf Papier aufmalen und dann solche
Problemfälle "durchspielen". Dann weisst du, was passiert...

von Pete Nerlinger (Gast)


Lesenswert?

toller tipp.die spannungen addieren sich nicht. geht nur auf 0V

von Björn (Gast)


Angehängte Dateien:

Lesenswert?

Gut, hab ich verstanden.

Hab mir gerade mal den Schaltplan aufgezeichnet und ne kleine
Testplatine gelötet. Aber nur mit 10 Tastern, mehr hatte ich nicht.

Leider funktioniert es nicht. Sobald Taster 1 gedrückt wird, fällt die
Spannung am Widerstand R4 auf 0V. Das kann doch irgendwie nicht sein.

Der Schaltplan befindet sich im Anhang. Wäre supi wenn mir einer nen
Tip geben könnte, was ich verkehrt gemacht habe.

von Sonic (Gast)


Angehängte Dateien:

Lesenswert?

Wieso machst du dir denn das Leben so schwer? Eine Matrixtastatur (auch
mehrere Tasten) abfragen geht doch digital viel einfacher. Hab' dir
das Beispiel (Appnote240) von Atmel drangehängt.

von Sonic (Gast)


Angehängte Dateien:

Lesenswert?

Hab' meine alte Abfrage und Ausgabe über USART gefunden, hier in C,
vielleicht kann's jemand gebrauchen.

von Björn (Gast)


Lesenswert?

Hey Sonic,

mit der Appnote würd ich es ja machen, hab nur nicht mehr genung Pins
frei. Genauer gesagt nur noch den einen AD/Wandler.....

Da wollte ich halt mal schauen, ob es auch anders geht. Da bin ich auf
die Sache mit dem A/D wandler gestoßen. Keine schlechte Idee wie ich
finde. Nur leider klappt das noch nicht......

von A.K. (Gast)


Lesenswert?

Wenn Tastenmatrix dran ist, dann wahrscheinlich auch ein LCD-Display.
Mehrfachverwendung von Pins:
http://www.sprut.de/electronic/pic/programm/tastlcd/tastlcd.html

von Karl heinz B. (kbucheg)


Lesenswert?

Wenn du Taste 1 drückst, bildest
du einen Spannungsteiler ( R1 + R2 + R3 + R4 ) zu ( R5 + R6 + R7 ).
Bei deinen Werten sind das 19,1k zu 2,8k und das sollte so um
die 0.6 Volt ergeben.

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Ne Überlegung:
Wenn man die Widerstände nicht in Reihe schaltet, sondern jeder Spalte
und Zeile jeweils einen Widerstand verpasst, die unterschiedliche Werte
haben (1,2,4...)
z.B. Spalten 1k, 2k, 4k (Ohm) gegen Vcc
Zeilen 100, 200, 400 und 800 Ohm über 100Ohm an Masse.
Am "zweiten Ende" des 100ohmers wird dann der ADC angeschlossen.
Dadurch hätte man dann veränderliche Spannungsteiler.
Müsste man ausprobieren (oder drüber diskuttieren)...

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Übrigens hat die erste C-Control auch die Tasten über einen ADC-Pin
ausgewertet. Das waren soweit ich mich erinnere nur acht Tasten, die
Widerstände in einer Reihehschaltung gebrückt haben.
Mit einer Matrix-Schaltung geht das vermutlich nicht bzw. nur so, wie
ich es eben beschrieben habe.

von Klaus (Gast)


Lesenswert?

Die Lösung steht mit Widerstandswerten und Berechnungen in "EDN
magazine"  17.8.2006 , Artikel  "Two-wire, four-by-four-key keyboard
interface saves power".

http://www.edn.com/contents/images/6360317.pdf

von Karl heinz B. (kbucheg)


Lesenswert?

> Übrigens hat die erste C-Control auch die Tasten über einen ADC-Pin
> ausgewertet. Das waren soweit ich mich erinnere nur acht Tasten, die
> Widerstände in einer Reihehschaltung gebrückt haben.

Der Asuro machts genauso.

> Müsste man ausprobieren (oder drüber diskuttieren)...
... oder nachrechnen

von Winne (Gast)


Lesenswert?


von Björn (Gast)


Lesenswert?

Hey,

hab den Fehler gefunden. Hab vergessen die Leiterbahn beim Kondensator
zu unterbrechen. ;-)

Daher gabs ne Verbindung zwischen ADC und GND. nun klappts super....

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.