Tastenfeld Abfrage mit IC?

F

Frank Greisel

Guest
Hallo!

Ich habe ein Problem (nicht anders zu erwarten ;) ). In einer Maschine
sollen verschiedene interne Funktionen geschalten werden. Dazu habe ich
mir von Farnell ein Tastenfeld bestellt, das 16 Tasten hat. Hersteller ist
Keymat, Typ ist Storm700.

Mit den Tasten möchte ich direkt einzelne Funktionen ohne ľC oder
ähnlichen ansprechen (Aufwand also so gering wie möglich). Das Tastenfeld
ist in eine Art Matrix unterteilt. X-Achse von 1 bis 4, Y-Achse von A bis
D. Aus dem Tastenfeld kommen also nur 8 Anschlußkontakte.

Nun meine Frage :D Gibts einen IC, der mir aus diesen 8 Leitungen quasi
die 16 echten Schaltmöglichkeiten heraus filtert (demultiplext?) ? Von
Keymat selbst gibt es eine (recht teuere) Schaltung, die daraus einen
seriellen Datenstrom macht. Das ist aber viel zu aufwändig.

Danke schonmal!

Tschüß Frank
 
In article <opsd0w65m27wdwp8@news.individual.de>,
"Frank Greisel" <frassl@cad.de> writes:
Mit den Tasten möchte ich direkt einzelne Funktionen ohne ľC oder
ähnlichen ansprechen (Aufwand also so gering wie möglich).
Schließe die 1-4 an Eingänge deines uC's imd A-D an Ausgänge.
Dann aktivierst du immer ein Pin von den Ausgängen und guckst
ob irgendwo bei 1-4 was ankommt. Wenn ja weist du welche Taste
gedrückt wurde.
Wenn du nicht so viele Pins übrig hast könnte man die Ausgänge
durch ein Schieberegister ersetzen. Dann brauchst du nur
noch die 4 Eingänge und 2 Ausgänge.

Wenn du eine Interruptsteuerung brauchst könntest du alle
Ausgänge (vom Chip) auf high legen und alle Eingänge (also
Ausgänge von der Tastatur, Eingänge in den uC) mit Dioden
auf einen Interruptpin.

Tschüss
Martin L.
 
Frank Greisel schrieb:

Nun meine Frage :D Gibts einen IC, der mir aus diesen 8 Leitungen quasi
die 16 echten Schaltmöglichkeiten heraus filtert (demultiplext?) ?
Nö. Man kann das natürlich mit einem kleinern TTL-Grab lösen, aber ein
uC ist eindeutig die einfachste Möglichkeit.


Gruß Dieter
 
Ähmm... ich habe keinen ľC. Ich suche eigentlich einen Schaltkreis, der
mir diesen Code direkt auf 16 Schaltfunktionen decodiert.
 
Am Wed, 08 Sep 2004 21:46:07 +0200, schrieb "Frank Greisel"
<frassl@cad.de>:


Nun meine Frage :D Gibts einen IC, der mir aus diesen 8 Leitungen quasi
die 16 echten Schaltmöglichkeiten heraus filtert (demultiplext?) ? Von
Keymat selbst gibt es eine (recht teuere) Schaltung, die daraus einen
seriellen Datenstrom macht. Das ist aber viel zu aufwändig.
Du suchst einen 74C922/923.
Den wird man unterdessen schwer finden, es sollte aber machbar sein.

http://membres.lycos.fr/ybdesign/Images/74C922.gif

http://cals.ae.thit.edu.tw/lecture/resource/up/MM74C922.pdf

MfG

Frank
 
"Frank Greisel" schrieb:

[....] (Fertiges 4x4 Tastenfeld gekauft)

Mit den Tasten möchte ich direkt einzelne Funktionen ohne ľC oder
ähnlichen ansprechen (Aufwand also so gering wie möglich).
[...]
Gibts einen IC, der mir aus diesen 8 Leitungen quasi die 16 echten
Schaltmöglichkeiten heraus filtert (demultiplext?)
Wenn ich dich richtig verstanden habe, benötigst du ein Tastenfeld mit
16 getrennt herausgeführten Tasten, hast aber eine 4x4-Matrix gekauft
(die sinnvollerweise in Verbindung mit einem ľC eingesetzt wird, was
du aber gerade vermeiden willst).

Was spricht eigentlich gegen die Herstellung eines Tastenfelds aus
einzelnen Print-Tastern, wo du einfach Drähte anlötest? Das kann man
ja auch auf einer simplen Lochrasterplatte aufbauen. Für sowas gibt's
anreihbare quadratische Print-Taster.

MFG, Andy
 
In article <opsd0xxexb7wdwp8@news.individual.de>,
"Frank Greisel" <frassl@cad.de> writes:
Ähmm... ich habe keinen ľC. Ich suche eigentlich einen Schaltkreis, der
mir diesen Code direkt auf 16 Schaltfunktionen decodiert.
Mist ... ich dachte uC gelesen zu haben .. aber .. benutz doch
einfach einen :)

Tschüss
Martin L.
 
In article <opsd0xxexb7wdwp8@news.individual.de>,
"Frank Greisel" <frassl@cad.de> writes:
Ähmm... ich habe keinen ľC. Ich suche eigentlich einen Schaltkreis, der
mir diesen Code direkt auf 16 Schaltfunktionen decodiert.
Hab mir das OP nochmal durchgelesen und weis warum ich von einem
uC ausging ... wofür braucht man ein Tastenfeld wenn man keinen
uC hat? Oder anders: wird die gesammte Aufgabe nich besser mit einem
uC oder FPGA (oder Co) gelöst?

Tschüss
Martin L.
 
Frank Scheffski schrieb:

Du suchst einen 74C922/923.
Den wird man unterdessen schwer finden, es sollte aber machbar sein.
Naja, Farnell 6,45+MWst, Segor 9,90. Und einen Decoder braucht er dann
auch noch, z.B. 74LS154.


Gruß Dieter
 
"Frank Greisel" <frassl@cad.de> schrieb im Newsbeitrag
news:eek:psd0w65m27wdwp8@news.individual.de...
Ich habe ein Problem (nicht anders zu erwarten ;) ). In einer Maschine sollen
verschiedene interne Funktionen geschalten werden. Dazu habe ich mir von
Farnell ein Tastenfeld bestellt, das 16 Tasten hat. Hersteller ist Keymat,
Typ ist Storm700.

Mit den Tasten möchte ich direkt einzelne Funktionen ohne ľC oder ähnlichen
ansprechen (Aufwand also so gering wie möglich). Das Tastenfeld ist in eine
Art Matrix unterteilt. X-Achse von 1 bis 4, Y-Achse von A bis D. Aus dem
Tastenfeld kommen also nur 8 Anschlußkontakte.

Nun meine Frage :D Gibts einen IC, der mir aus diesen 8 Leitungen quasi die
16 echten Schaltmöglichkeiten heraus filtert (demultiplext?) ? Von Keymat
selbst gibt es eine (recht teuere) Schaltung, die daraus einen seriellen
Datenstrom macht. Das ist aber viel zu aufwändig.
Du wirst wohl 2 ICs brauchen, einen Tastaturencoder wie MM74C923
und einen Decoder wie 74154. Allerdings sind beide Teile veraltet
und damit teuer und schwer beschaffbar. Ein passende programmierter
uC wie COP840CJ (www.nsc.com) waere wohl die bessere Wahl.
--
Manfred Winterhoff, reply-to invalid, use mawin at despammed.com
homepage: http://www.geocities.com/mwinterhoff/
de.sci.electronics FAQ: http://dse-faq.elektronik-kompendium.de/
Read 'Art of Electronics' Horowitz/Hill before you ask.
Lese 'Hohe Schule der Elektronik 1+2' bevor du fragst.
 
Das Problem am ľC ist, daß ich keine Ahnung von der Programmierung solcher
habe. Außerdem ist das nur ein klitzekleines Teilstück eines Gesamtwerks,
daß ich so schnell wie möglich fertig bekommen möchte. Und dabei ist es
sicher aus meiner Sicht günstiger Mittel zu wählen, die ich im Griff
habe... :)

Danke trotzdem. Der genannte IC is genau das, was ich suche.

Frank
 
Frank Greisel wrote:


[...]>
Nun meine Frage :D Gibts einen IC, der mir aus diesen 8 Leitungen quasi
die 16 echten Schaltmöglichkeiten heraus filtert (demultiplext?) ? Von
Keymat selbst gibt es eine (recht teuere) Schaltung, die daraus einen
seriellen Datenstrom macht. Das ist aber viel zu aufwändig.
Das einfachste ist ein EPROM. Verwende ein 16-Bit Daten speicchernden CChip
und nimm die Ausgänge der Matrix als Adressen. Den Chip richtig
programmieren, fertig. Eventuell brauchst du noch ein Latch um die Ausgänge
für eine gewisse Zeit konstant zu halten.

Robert
 
Keymat, Typ ist Storm700.
Wenns vandalismussichers Blechteil sein soll, wird man die
direkte Lösung mit Einzeltasten nicht nehmen können.

Eine exotische Variante wäre noch a la Telefon:
DTMF-Sender und DTMF-Empfänger.
Hat was für sich, wenn sich die Elektronik nicht
direkt hinter Tastatur befindet, sondern über
längeres Kabel verbunden wird ( wie bei der Post eben ).

DTMF-Empfänger wäre typisch MT8870.
DTMF-Sender-ICs sind nicht so handelsüblich. Wenn man
allerdings ein Telefon schlachtet ...
Bleibt dann aber das Problem, das die typisch nur 12
Tasten machen.

MfG JRD
 
R.Freitag schrieb:
Das einfachste ist ein EPROM. Verwende ein 16-Bit Daten speicchernden CChip
und nimm die Ausgänge der Matrix als Adressen. Den Chip richtig
programmieren, fertig. Eventuell brauchst du noch ein Latch um die Ausgänge
für eine gewisse Zeit konstant zu halten.
Verstehe ich ehrlich gesagt nicht. Wie soll ein EPROM allein ausreichend
sein?

Markus.
 
Danke, Dein Tipp war Gold wert. Genau so etwas habe ich gesucht. Und beide
ICs sind bei uns in der Hochschule vorrätig gewesen. Also 0 Kosten :)
Jetzt noch ne Platine machen und alles wird (hoffentlich) gut.

Frank
 
Frank Greisel schrieb:

Nun meine Frage :D Gibts einen IC, der mir aus diesen 8 Leitungen quasi
die 16 echten Schaltmöglichkeiten heraus filtert (demultiplext?) ? Von
Keymat selbst gibt es eine (recht teuere) Schaltung, die daraus einen
seriellen Datenstrom macht. Das ist aber viel zu aufwändig.
Semtech?
 
Markus Koechy wrote:

R.Freitag schrieb:

Das einfachste ist ein EPROM. Verwende ein 16-Bit Daten speicchernden
CChip und nimm die Ausgänge der Matrix als Adressen. Den Chip richtig
programmieren, fertig. Eventuell brauchst du noch ein Latch um die
Ausgänge für eine gewisse Zeit konstant zu halten.

Verstehe ich ehrlich gesagt nicht. Wie soll ein EPROM allein ausreichend
sein?

Du nimmst ein EPROM mit 16 Bit Daten. Die Adresseingänge verbindest du mit
deiner Matrix und die Programmierung wird so vorgenommen, dass jeder
Adresse, die von der Matrix eingegeben werden kann, genau ein 16-bit
Datenwert zugeordnet wird, der genau ein Bit gesetzt hat.

Fertich.

Robert
 
Du nimmst ein EPROM ...
Fertich.
Man müsste es wohl mindestens mit 74HC-Latches zur
Zustandsmaschine aufblasen ( die dann wohl besser ein
dickes GAL wäre ).
Wenn man eine Taste drückt kriegt man ein Aktiv-Signal
an z.B. einer der Spalten. Dann muß man aber die 4 Zeilen
durchprobieren um die genaue Zeilen-Position der Taste
festzustellen.

MfG JRD
 
Rafael Deliano wrote:

Du nimmst ein EPROM ...
Fertich.
Man müsste es wohl mindestens mit 74HC-Latches zur
Zustandsmaschine aufblasen ( die dann wohl besser ein
dickes GAL wäre ).
Wenn man eine Taste drückt kriegt man ein Aktiv-Signal
an z.B. einer der Spalten. Dann muß man aber die 4 Zeilen
durchprobieren um die genaue Zeilen-Position der Taste
festzustellen.

MfG JRD
Wenn die tastatur rein passiv ist, geht es nicht. Gefragt war aber ein
Demuxer, der auch ein aktives Eingangssignal braucht.

Robert
 
In article <chq4c2$gmr$1@newsreader2.netcologne.de>,
"R.Freitag" <rfr-mailbox@gmx.de> writes:
Rafael Deliano wrote:

Du nimmst ein EPROM ...
Fertich.
Man müsste es wohl mindestens mit 74HC-Latches zur
Zustandsmaschine aufblasen ( die dann wohl besser ein
dickes GAL wäre ).
Wenn man eine Taste drückt kriegt man ein Aktiv-Signal
an z.B. einer der Spalten. Dann muß man aber die 4 Zeilen
durchprobieren um die genaue Zeilen-Position der Taste
festzustellen.

MfG JRD
Wenn die tastatur rein passiv ist, geht es nicht. Gefragt war aber ein
Demuxer, der auch ein aktives Eingangssignal braucht.

Robert
Ich habe sowas mal vor Urzeiten an einen Z80 genagelt, ein Zähler mit
Decoder klapperte die Spalten durch und wurde angehalten wenn an einer
der Zeilen Etwas herauskam, die Spalten gingen an einige Adreßeingänge
eines Eproms, die Zeilen auch.
Wenn eine Taste gedrückt wurde, startete ein Monoflop, daß das Pulsen
eines Strobeimpulsgenerators freigab, damit repetierte die Taste.
Logischerweise war da aber nix mit Rollover.

Der Eprom enthielt den Tasten entsprechende ASCII Codes, CTRL und SHIFT
waren extra Adreßleitungen.

Gruß,

Holm
--
L&P::Kommunikation GbR Holm Tiffe * Administration, Development
FreibergNet.de Internet Systems phone +49 3731 41930
Bereich Server & Technik fax +49 3731 4196026
D-09599 Freiberg * Nonnengasse 31a http://www.freibergnet.de
 

Welcome to EDABoard.com

Sponsor

Back
Top