erst mal klick???

Hallo ich habe mich mal drangemacht ein paar Anfänger Tutorials im netz zu finden und bin auf http://mr.intermediadesign.de/2012/07/30/kapitel-3-2-einfache-interaktionselemente/ gestossen.

Nur das ich es gern so hätte, das die Bounce Bibliothek mit eingebunden ist.

Das hab ich soweit auch hinbekommen (ohne das IDE 1.0.2 rumzickt). Habe also keinerlei fehlermeldungen.

Nur erschliesst es sich mir nicht so ganz als ehrlicher Anfänger wie ich das hinbekomme das ich das auch funktionierend hinbekomme.

Das ist der Code den ich benutze:

#include <Bounce.h>

int buttonPin = 2;
int ledPin = 13;

int ledState = 0;

Bounce bouncer = Bounce( buttonPin, 5);

int led_Feld [] = {11,10};
int button_Feld [] ={4,5};

void setup()
{
  pinMode(ledPin,OUTPUT);
  
  for(int i=0;i<4;i++)
    pinMode(led_Feld[i],OUTPUT);
  for(int i=1;i<4;i++)
    digitalWrite(button_Feld[i],HIGH);
}
void loop()
{
  for(int i=0;i<4;i++)
    checkButton(button_Feld[i],led_Feld[i]);
}
void checkButton(int buttonPin, int ledPin)
{
  int value = digitalRead(buttonPin);
  if(value == HIGH)
    digitalWrite(ledPin,HIGH);
  else
    digitalWrite(ledPin,LOW);

  if (bouncer.update())
  {
    if ( bouncer.read() == HIGH)
    {
       ledState = !ledState;
       digitalWrite(ledPin,ledState);
    }
  }
}

kann mir mal jemand auf die Sprünge helfen?

Du hast 2 Tasten aber nur auf eine wendest Du die Bibiothek an.
Grüße Uwe

uwefed:
Du hast 2 Tasten aber nur auf eine wendest Du die Bibiothek an.
Grüße Uwe

Also müsste ich Bounce bouncer = Bounce (buttonPin, 5,6); abändern?
ja ich habe zwei Taster und zwei Schalter.

hm schlüssig ist mir nicht wie ich die bounce funktionen der Bounce Library in diesen Code integrieren soll, damit ich damit lediglich die Taster steuern kann.
Das ist der Code ohne Bounce:

/*Titel: Kapitel 3.2.1 - Erstmal Klick! Autor: Julian Steffen Datum: 10.08.2012*/

//Felder für die digitalen Pins
int led_Feld [] = {13,12,11,10};
int button_Feld [] ={2,3,4,5};

void setup()
{
  //Pins die mit der LED verbunden sind als Output deklarieren
  for(int i=0;i<4;i++)
    pinMode(led_Feld[i],OUTPUT);
  //Bei den (Button) Pins 3,4,5 den interen Pullup Widerstand (20k Ohm) aktivieren 
  for(int i=1;i<4;i++)
    digitalWrite(button_Feld[i],HIGH);
}
void loop()
{
  for(int i=0;i<4;i++)
    checkButton(button_Feld[i],led_Feld[i]);
}
void checkButton(int buttonPin, int ledPin)
{
  //Den Zustand des Schalters/Tasters abfragen
  int value = digitalRead(buttonPin);
  if(value == HIGH)
    digitalWrite(ledPin,HIGH);
  else
    digitalWrite(ledPin,LOW);
}

[EDIT] habs code Tags hinzugefügt Grüße Uwe[/EDIT]

[ i ] (ohne Leerzeichen) wird als Kursiv interpretiert, wenn du es nicht als [ code ] markierst.
So ist dein Sketch schwer verständlich.

Aber generell brauchst du für jeden Schalter / Taster ein Bounce Objekt. ( Oder ein Array von Bounce Objekten )
z.B.

Bounce taster[4] = {Bounce(2,5),Bounce(3,5),Bounce(4,5, Bounce(5,5)};

Was in deinem Beispiel bouncer war, ist dann taster [ i ].

Übrigens, einfacher als Bounce geht natürlich ein delay(10); am Ende von loop(), wenn sonst nichts dagegen spricht.
Nur um mit Tastern LED an/aus zu schalten, ist ein 10 msec Zyklus bei weitem schnell genug, und alles Entprellen hat sich erledigt :wink:

Hm okay werd ich am Dienstag mal probieren. Heute leider keine Zeit die Schaltung nochmals aufzubauen. Werde das aber mit bounce probieren da ich aus den Tastern ja Schalter machen möchte.
Aber das mit dem delay werd ich auch mal ausprobieren.

Sag mal wo gibt's eigentlich gute "Deutsche" Erklärungen zu den ganzen befehlen? Weiss das jemand hier?

Mist hab das mal Probiert (kanns ja nicht lassenXD). Des dingen will net so wie ich will, entweder mit delay (hab ich nur 10ms Unterbrechung bevor ledstatus on).

Aber die Bounce Funktion mit einfügen erweist sich mir auch mehr als frickelig.

Könntet ihr mir vielleicht mal ein Beispiel liefern?