mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik "Elektronisches" Tastenaggregat mit Druckschaltern möglich?


Autor: Ralf Stroop (stroop)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: putziger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1 aus 4  Schaltung

widerstandsdekade am ADC - ein Port

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dezimal zu BCD-Decoder

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Ralf Stroop (stroop)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ralf Stroop wrote:

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

Wie wärs mit Einsparung von 3 Porteingängen ?

Kostet allerdings 3 Widerstände:

Beitrag "Tastenmatrix auslesen über nur 2 Leitungen"


Peter

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.