www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 1 Taster 2 Funktionen


Autor: Tina (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo ersteinmal =)
Ich habe hier im forum schon öfters Dinge gefunden die mir 
weitergeholfen haben, aber diesmal brauch ich möglichst schnell Hilfe.
Und zwar hab ich einen einfachen Taster, dieser soll bei der ersten 
Betätigung eine LEd anmachen und die Freigabe für einen Lautsprecher 
erteilen und bei der zweiten Betätigung beides wieder ausmachen, bzw die 
Freigabe zurück nehmen.
Ich habe die Entprellung über eine delay funktion vorgenommen und wollte 
wissen ob dies so genügt und ob das Programm so funktionieren würde.

vielen Dank an alle die Antworten
Liebe Grüße
Tina
// Tasterabfrage Lautsprecher
  if(SCHALTER_LS())
  {
    _delay_ms(100);
    if(u8_Taster_betaetigt == 0)
    {  
      _delay_ms(100);
      u8_Taster_betaetigt = 1;
      u8_LS_Freigabe = 1;
      LED_LS_AN();
    }
    else
    {  
      _delay_ms(100);
      u8_Taster_betaetigt = 0;
      u8_LS_Freigabe = 0;
      LED_LS_AUS();
    }
  }


Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Tina (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank nur verstehe ich das ganze nicht ganz, ich teile dem 
Programm dort mit, welcher meiner Ports ausgelesen werden soll und 
weiter?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tina schrieb:
> Vielen Dank nur verstehe ich das ganze nicht ganz, ich teile dem
> Programm dort mit, welcher meiner Ports ausgelesen werden soll und
> weiter?

Der Returnwert ist 1, wenn ein Wechsel von Losgelassen nach Gedrückt 
erkannt wird, sonst ist er 0.

Daher einfach nur:
if( debounce( PINB, PB1 ) ){
  mache_was
}


Peter

Autor: Tina (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ah okay wenn ich das nun richtig verstanden habe dann setze ich meinen 
port dort ein und dann wird die funktion aufgerufen in welcher ich dann 
nen zähler die anzahl der drücke zählen lasse und danach meine 
funktionen fest mache richtig?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.