Mein Tastaturmatrix Einlese- und Entprell-PAP

OP #4857573
Lesenswert?
• ▲
▼
Hallo!

Hier für Interessierte:
Ein Programmablaufplan zu einer Entprellten Tastaturmatrix-Abfrage in 
einem Interrupt-Unterprogramm (UP) das alle 50ms aufgerufen wird.

Es gibt diverse Zähler und Flags die im 8051-RAM untergebracht sind.
Die "Schiebe"-UPs schieben über IO-Expander-Schieberegister die Matrix 
an und lesen auch seriell ein.

Edit:
Es gibt wohl das Problem dass eine Taste prellt und offen ist während 
die Spalten abgefragt werden im "UP ErmittleTastencode". Doch das wird 
wohl bei der Abfrage "2x gleiche Taste gedrückt" aufgefangen, das eben 
nur wahr ist wenn die Taste eine Weile ruhig anliegt.

Das "UP Pieps" hat seinen eigenen Pieps-Zähler den es jeden Interrupt 
runterzählt und den Piezo-Piepser piepsen lässt solange der Zähler 
größer Null ist.

Edit 2:
Es scheint es gibt auch ein Problem mit der Benennung des Zählers 
"Gleiche-Taste-gedrückt". Es geht vielmehr um das Zählen wie oft 
hintereinander ununterbrochen gedrückt war - nicht so sehr ob es immer 
die gleiche Taste war. Aber vielleicht ist das ja auch nützlich, wenn 
man sichergeht dass es dieselbe Taste war  :-)

Edit 3:
Mir war eine Vermeidung von Doppelerkennungen wichtig, daher habe ich 
nicht vorgesehen dass eine ständig gedrückte Taste erkannt wird (zB. für 
Bildlauf). Das kann man aber vielleicht noch reinbauen zB. indem man im 
Hauptprogramm das Flag für "Keine-Taste-10x-gedrückt" auf 1 setzt bevor 
man das Tasten-Queu-Flag löscht - damit könnte man evtl. eine 
festgehaltene Taste erkennen.
Angehängte Dateien:

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.