int LED1 = 13;//We rename pin 13 to “ledPin”
int LED2 = 12;//We rename pin 12 to “ledPin”
int LED3 = 11;//We rename pin 11 to “ledPin”
int LED4 = 10;//We rename pin 10 to “ledPin”
int LED5 = 9;//We rename pin 9 to “ledPin”
int buttonPin = 3;
void setup() {
pinMode(LED1, OUTPUT);//set the ledPin as output
pinMode(LED2, OUTPUT);//set the ledPin as output
pinMode(LED3, OUTPUT);//set the ledPin as output
pinMode(LED4, OUTPUT);//set the ledPin as output
pinMode(LED5, OUTPUT);//set the ledPin as output
pinMode(buttonPin, INPUT);//set the buttonPin as input
randomSeed(analogRead(0)); // Generate random seed based on analog reading of pin 0
Serial.begin(9600); // for debugging purposes
}
void loop() {
if (digitalRead(buttonPin) == HIGH) { // wait for button to be pressed
int roll = random(1, 7); // generate random number between 1 and 6 (inclusive)
Serial.print("Roll: ");
Serial.println(roll); // for debugging purposes affiche nombre roll de 1 a 6
digitalWrite(LED1, roll == 1 || roll == 3 || roll == 5); // turn on appropriate LEDs for dice display
digitalWrite(LED2, roll > 1 && roll < 6);
digitalWrite(LED3, roll > 3);
digitalWrite(LED4, roll == 4 || roll == 5 || roll == 6);
digitalWrite(LED5, roll == 6);
delay(1000); // wait for button to be released
}
}
/*
Ce code contrôle l'affichage d'un dé électronique à l'aide de 5 LED connectées à une carte Arduino.
Lorsque le bouton est pressé, un nombre aléatoire entre 1 et 6 est généré et les LED appropriées sont
allumées pour afficher le chiffre correspondant. Le code utilise également la fonction "randomSeed"
pour générer une graine aléatoire à partir de la lecture analogique de la broche 0.
*/