1 Taster 2 Funktionen

Gast #1610623
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
1
// Tasterabfrage Lautsprecher
2
  if(SCHALTER_LS())
3
  {
4
    _delay_ms(100);
5
    if(u8_Taster_betaetigt == 0)
6
    {  
7
      _delay_ms(100);
8
      u8_Taster_betaetigt = 1;
9
      u8_LS_Freigabe = 1;
10
      LED_LS_AN();
11
    }
12
    else
13
    {  
14
      _delay_ms(100);
15
      u8_Taster_betaetigt = 0;
16
      u8_LS_Freigabe = 0;
17
      LED_LS_AUS();
18
    }
19
  }
#1610687
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:
1
if( debounce( PINB, PB1 ) ){
2
  mache_was
3
}


Peter
Gast #1610693
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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren