//Interruptor amb polsador: Encén un led connectat al pin 13 polsant un moment el polsador connectat al pin 2 i l'apaga tornant a polsar momentàneament

// A quins pins connectem les coses

const int buttonPin = 2;
const int ledPin = 13;

// Variables globals
int ledState = HIGH;
int buttonState;
int lastButtonState = LOW;
long lastDebounceTime = 0;
long debounceDelay = 50;

// Quan comenci
void setup() {

// Assigno pins
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);

// Fixo estat inicial del led
digitalWrite(ledPin, ledState);
}

// Repetir
void loop() {

// Deso l'estat del led a una variable reading
int reading = digitalRead(buttonPin);

// Si el botó canvia d'estat
if (reading != lastButtonState) {

// Reinicialitzo timer
lastDebounceTime = millis();
}

// Si el canvi d'estat està prou separat en el temps
if ((millis() - lastDebounceTime) > debounceDelay) {

// Si l'estat del botó ha canviat
if (reading != buttonState) {

buttonState = reading;

// Si l'estat és alt
if (buttonState == HIGH) {


// Canvia estat led
ledState = !ledState;
}
}
}

// Envia estat led
digitalWrite(ledPin, ledState);

// Desa darrer estat led
lastButtonState = reading;
}

Darrera modificació: dijous, 21 de maig 2015, 17:12