Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int led = 13;
- int presenza = 8;
- int presenzastate = 0;
- bool fallingEdge = false;
- unsigned long signalTime;
- void setup () {
- pinMode (led, OUTPUT);
- pinMode (presenza, INPUT_PULLUP); // Abilito il pullup per testare con un pulsante
- delay(3000); // Altrimenti appena acceso l'uscita viene attivata
- }
- void loop () {
- presenzastate = digitalRead(presenza);
- if (presenzastate == LOW && !fallingEdge) {
- fallingEdge = true;
- delay(100); // Giusto un semplice antirimbalzo del contatto
- signalTime = millis();
- }
- if ( millis() - signalTime < 3000) {
- digitalWrite (led, HIGH);
- }
- else {
- digitalWrite(led, LOW);
- }
- if (presenzastate) {
- delay(100); // Un po' di antirimbalzo non fa male nemmeno qui
- fallingEdge = false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement