Advertisement
florin88

sketch arduino: controllo led con pulsante V2

Feb 16th, 2014
7,204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.73 KB | None | 0 0
  1.     // sketch arduino: far lampeggiare un Led con un Pulsante v2
  2.     // questo secondo programma ha lo scopo di accendere il led una volta premuto il pulsante e lo mantiene acceso  
  3.     // premendo una seconda volta sul nostro pulsante il led si spegne
  4.      
  5.     #define LED 13       // indichiamo al programma, dove abbiamo collegato il LED. cioè sul pin digitale 13  
  6.     #define BUTTON 7     // indichiamo al programma, dove abbiamo collegato il pulsante. cioè sul pin di input sulla porta 7
  7.     int val = 0;                  // anche in questo secondo programma, si inizierà con un val (valore) per conservare lo stato del pin di input su 0
  8.     int vecchio_status = 0;
  9.     int stato = 0;                // ricorda lo stato in cui si trova il led, stato = 0 led spento, stato = 1 led acceso  
  10.      
  11.     void setup() {  
  12.       pinMode(LED, OUTPUT);       // questo comando imposta il pin digitale come output
  13.       pinMode(BUTTON, INPUT);     // questo comando imposta il pin digitale come input  
  14.     }  
  15.      
  16.     void loop() {  
  17.       val = digitalRead(BUTTON);  // questo comando, non fa altro che leggere il valore dell'input e lo conserva
  18.      
  19.       // questa parte del programma controlla che l'input dal pulsante sia HIGH, cioè se il pulsante è stato premuto  
  20.       // e cambia lo stato del led se il pulsante è stato premuto una seconda volta
  21.        if ((val == HIGH) && (vecchio_status == LOW)) {  
  22.         stato = 1 - stato;  
  23.         delay(20);
  24.       }  
  25.      
  26.       vecchio_status = val;
  27.      
  28.       if (stato == 1) {  
  29.         digitalWrite(LED, HIGH);   // se premuto accende il led
  30.       }  
  31.       else {  
  32.         digitalWrite(LED, LOW);    // se premuto nuovamente spegne il led
  33.       }  
  34.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement