"Elektronisches" Tastenaggregat mit Druckschaltern möglich?

OP #535186
Lesenswert?
• ▲
▼
Hallo,

ich möchte mit 4 mechanischen Schalter (oder Taster), über die eine 
Funktionsauswahl getroffen werden soll, folgende alternative Zustände 
realisieren können:
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

die ich dann folgendermaßen kodieren möchte:
1 0 0 0 -> 0 0
0 1 0 0 -> 0 1
0 0 1 0 -> 1 0
0 0 0 1 -> 1 1

Die möglichen Zustände
0 0
0 1
1 0
1 1
sollen dann als Input auf den Mikrokontroller geführt werden.

Ziel der Übung: die Einsparung von 2 Porteingängen.

Nicht eindeutige Zustände wie
0 1 0 1
müssen aber verhindert werden.

Als mechanische Ausführung würde man das wohl als Tastenaggregat mit 
Druckschaltern bezeichen.

Das sollte sich aber auch elektronisch realisieren lassen, ggf. mit 
FlipFlops ?
Habe aber keine Idee, mit welchem Stichwort ich da suchen muß!

Danke,


Ralf.
Gast #535234
Lesenswert?
• ▲
▼
Nachtrag:

Mit 2 Leitungen ist zwar die Dekodierung der Tasten möglich. Aber
du hast noch keine Rückmeldung ob überhaubt eine Taste gedrückt
wird. Das bedarf in deinem Fall einer dritten Leitung. Bei vier
Tasten/Schalter ist die Einsparung nicht sehr groß. Als Tipp:
74xx148 (s.o.).

MfG Spess
OP #535239
Lesenswert?
• ▲
▼
Hallo,

danke für die prompten Antworten:
ich weiß aber nicht, ob ich die beiden Vorschläge nur noch nicht richtig 
verstanden habe, oder ob es mir nicht gelungen ist, mein Frage präzise 
zu formulieren.

Mit dem 1-aus-4-Dekoder könnte ich zwar mit 2 Schalter die Zustände
0 0
0 1
1 0
1 1
realisieren, die dann mit dem erwähnten Dekoder
in
0 0 0 1
0 0 1 0
0 1 0 0
1 0 0 0
überführt werden, und dann in der Tat gut mit der Widerstandsdekade und 
ADC-Port ausgelesen werden könnten.

Was ich anstrebe, ist folgendes:
* 4 Taster am Gehäuse
* Betätigen von Taster A aktiviert diesen Zustand auf 1 0 0 0 und löscht 
den Vorherigen, z.B. Zustand B:  0 1 0 0
* die gleichzeitige Betätigung von A und B muß also verhindert werden.

Die Dezimal-zu-BCD kann zwar die Schalterstellung 1 1 0 0 nicht 
auswerten, aber auch nicht verhindern, oder?

Danke,

Ralf.
Gast #535254
Lesenswert?
• ▲
▼
Hi

Der 74xx148 ist ein sog. Prioritätsdecoder.

Beispiel:

1000 ->00
0100 ->01
1100 ->01
0010 ->10
1010 ->10
0110 ->10
1110 ->10
...

d.h. am Ausgang erscheint nur der 'höherwertigste' Eingang

MfG Spess

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