pos. Flanke von Taster finden.

Gast #6496267
Lesenswert?
• ▲
▼
1
   lastkeystate = getkeystate();
2
   .
3
   .
4
   while(dorun) {
5
     dosomething();
6
     actkeystate = getkeystate();
7
     if (actkeystate != lastkeystate) {
8
       if (actkeystate == PRESSED) {
9
         dokeyaction();
10
       }
11
     }
12
     lastkeystate = actkeystate;
13
   }
Moderator (Firma: Titel) Persönliche Seite #6496287
Lesenswert?
• ▲
▼
Tobias K. schrieb:
> besser gesagt die positive Flanke eines Taster. Wie kann ich dies
> umsetzen? Programmiersprache: C
Du merkst dir den "alten Pegel" des Eingangs und vergleichst den mit dem 
"aktuellen Pegel" des Eingangs. Wenn der alte Pegel low ist und der 
aktuelle Pegel high, dann hast du eine steigende Flanke. Dann speicherst 
du dir den "aktuellen Pegel" als "alten Pegel" für den nächsten 
Vergleich.

Dazu musst du den Eingang natürlich laufen abtasten, z.B. in der 
Mainloop oder in einem Timerinterrupt.
Gast #6496296
Lesenswert?
• ▲
▼
[ironie]

Leider kenne ich mich mit C nicht so aus, aber in meiner kleinen Arduino 
Welt würde das irgendwie so aussehen:
1
void loop()
2
{
3
 counter  = flankenerkennung = entprellen = taster;
4
}
Wobei der Counter dann Ereignisse wirft, welche man vorher z.B per 
counter.onCount(...) etablieren könnte.


[/ironie]

:-)

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.