Étape 3: programmation
C’est le code que j’ai utilisé :
int switchPin = 8; / / il s’agit de la tige de l’interrupteur est relié à
int ledPina = 7; //These sont les broches, les LEDs sont connectés à
int ledPinb = 6 ;
int ledPinc = 5 ;
int ledPind = 4 ;
int ledPine = 3 ;
lastButton booléen = bas; / / assure le suivi de la valeur du bouton dans la boucle précédente
ledOn booléen = false; / / conserve une trace de l’état actuel de la LED
currentButton booléen = bas; / / assure le suivi de la valeur actuelle de la touche (utilisée avec fonction debounce)
installation Sub ()
{
pinMode (switchPin, entrée) ;
pinMode (ledPina, sortie) ;
pinMode(ledPinb,OUTPUT) ;
pinMode(ledPinc,OUTPUT) ;
pinMode (ledPind, sortie) ;
pinMode (ledPine, sortie) ;
}
Boolean debounce (dernier booléenne) / / crée une fonction appelée en dernier debounce avec entrée
{
courant booléen = digitalRead (switchPin);// détermine la valeur actuelle de l’interrupteur
Si (dernier! = courant) / /
{
Delay(5); / / donne passer assez de temps pour terminer debouncing
Current=digitalRead(switchPin); / / ici c’est lire encore une fois, en supposant que c’est à une valeur constante
}
retour actuel ; //This retourne la valeur constante
}
void loop()
{
currentButton=debounce(lastButton); / /
Si (lastButton == LOW & & currentButton == HIGH)
{
ledOn =! ledOn ; inverse la valeur de LED de ce qu’il était précédemment
}
{
lastButton = currentButton; / / obtient la valeur actuelle touche
digitalWrite(ledPina,ledOn) ;
digitalWrite(ledPinb,ledOn) ;
digitalWrite(ledPinc,ledOn) ;
digitalWrite(ledPind,ledOn) ;
digitalWrite(ledPine,ledOn) ;
}
}