PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tastaturpuffer???



Finor
30.07.2006, 16:03
Tastaturpuffer???

Hallo alle,

als Anfänger in Sachen Bascom möchte ich mich in die Thematik der Abfrage von Tasten und Drehgebern einarbeiten. "Einfache" Tastenabfragen von einzelnen Tasten mit Debounce funktionieren recht ordentlich. Für komplexere Abfragen von mehreren Tasten habe ich von "Tastaturpuffern" gehört. Leider habe ich in der Bascomhilfe und hier im Forum nicht gefunden, wie man so einen Tastaturpuffer programmieren kann. Es kann ja vorkommen, dass während der Abarbeitung der Tastenabfrage und Ausführung der Tastenfunktion schon weitere Tastenbetätigungen (derselben oder anderer Tasten) erfolgen.
Ich stelle mir das so vor, daß alle Tasten über eine einfache Logikschaltung ein Hardware-Interruptsignal erzeugen. Als Reaktion darauf werden m.H. einer Interruptroutine die Tastenports abgefragt und die Werte in einen Tastaturpuffer geschrieben.
Das Hauptpogramm holt sich ständig die Werte aus dem Tastaturpuffer ab und führt die entsprechenden Tastenfunktionen aus.

Sind diese Vorstellungen so richtig?
Wie könnte man so etwas praktisch umsetzen?

Vielen Dank für Eure Tips und viele Grüße
Finor

user529
30.07.2006, 18:30
wenn du viele taster verwenden willst, kannst du auch auf den chip in der tastertur zurückgreifen, dieser ist bei alten tasterturen sehr leicht anzuschreiben, da er die tasten entprellt und mit der PS2 (http://de.wikipedia.org/wiki/PS/2-Schnittstelle) übertragung wartet bis der IC zeit hat, allerdings muss der ic überzeugt werden unter dem clk signal der tastertur als slave zu arbeiten.

wenn du lust und zeit hast kannst du die matrix der tastertur selbst entschlüsseln, aber auch die vorgefertigten nehmen

das bild zeit eine mitsumi kpq-e99zc-13 mit dem chip E117202
http://www.bilder-speicher.de/vollbild.php?Benedicta816036
sorry dass ich euch das seitenlayout so verschandle.

auf dem bild kannst du die anschlüsse erkennen, die in der tastertur mit dem chip verbunden sind, an diese eingänge lötest du platienenseitig dein e matrixtastertur, wobei du auf die belegung aufpassen musst:
zzzzzzzzzzzzz__zzzzz12345678

die entschlüsselung kommt später, i muss raus, mir is total schlecht, schönen rest vom we

Finor
01.08.2006, 08:37
Hallo user529,

vielen Dank für die Antwort.
Klingt interessant, hatte aber eher in Richtung Software gedacht. Ich stelle mir den Tastaturbuffer als Softwarefunktion vor. Die Hardware drum herum ist kein Problem, die würde sich in diesem Fall nach der Art und Weise der Software-Implementierung richten. Es sind derzeit nur drei Taster und ein Drehimpulsgeber (beide Richtungen) mit Taster.

Viele Grüße
Finor

P.S.: Ich hoffe Dir geht's inzwischen wieder besser.

Hanni
01.08.2006, 15:16
Hallo, es trifft vielleicht nicht ganz dein Problem und deine favorisierte Programmiersprache, aber vielleicht liefert es dir ein paar Denkansätze.

(Linkls verweisen zu Mikrocontroller.net)

Universelle Tastenabfrage (http://www.mikrocontroller.net/forum/read-4-310276.html#new)
Tasten entprellen - Bulletproof (http://www.mikrocontroller.net/forum/read-4-20549.html#new)

Grüße,

da Hanni.