Entprellen von Taste die Interrupt auslöst.

Gast #2432454
Lesenswert?
• ▲
▼
Hi an alle,

ich muss für ein labor; 7-Segment anzeigen zum Darstellen von "muster" 
benutzen. 7-Segment Anzeige
(http://www.gymnasium-sulingen.de/faecher/informatik/salcd.gif)

Also das "a" (horizontale oberste) Segment der 1 Anzeige, muss nach 
einem Tastendruck in das "a" Segment der nebenliegenden 7-Segmentanzeige 
laufen.
Nach erreichen der 4ten 7-Segment Anzeige wird das muster geändert.

Das ganze wird über eine Taste gesteuert die an dem Port0.0 (Interrupt 
0) anliegt. Was ich habe ist Ein Board an dem Tasten, LED's u.s.w. und 
der Micocontroller C8051F340 (von silicon labs.) sitzt.

Mit der eigentlichen Programierung des weiterlaufen des "strichchens" 
funktioniert soweit alles. Mein problem natürlich ist das das Strichchen 
von der 1ten z.b direkt in die 4,5 oder6 Anzeige spring, wegen der 
Tasteprellung.

Ich hab gelesen das Ich durch einen vergleich vom jetzigen wert am Port 
mit dem anfangs wert am Port das problem lösen kann wie genau aber weis 
ich nicht, hab schon vieles versucht aber immer fehler.

Ich hab mein programm ausschnitt beigefügt. Was ich lediglich brauche 
ist eine möglichkeit das nach tastendruck (interrupt 0) nur einmal die 
anweisung im interrupt durchgeführt wird.


Mein Code:
http://codepaste.net/5fuz2x

mfg, Matt.
#2432505
Lesenswert?
• ▲
▼
Timer und Pollen .. geht super und kannste mit einem Timer nahezu 
beliebig Taster auslesen.

Lesen, speichern
Lesen, wenn vorher bereits gedrückt betätigen
Lesen, wenn öfter als 2mal bereits gedrückt nichts machen
Lesen, wenn nichtmehr gedrückt merken
Lesen, wenn wieder nciht gedrückt wieder zum drücken freigeben.

So mach ichs und funktioniert super!

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.