Hola... Estoy haciendo un proyecto de un dado que se encienda unos LEDs para representar los números son 7 LEDs, pero me encontré con un problema. Cuando presionó el botón programa para que se apaguen los LEDs y que se escoja un numero aleatorio, pero se demoran en encenderse los LEDs, calcule como 10 segundos en que se encendieran, funciona bien todo, solo es que se demora mucho en encenderse los LEDs, les dejo aquí el código
int Dado = 0;
void setup() {
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
pinMode(10,OUTPUT);
pinMode(9,OUTPUT);
pinMode(8,OUTPUT);
pinMode(7,OUTPUT);
pinMode(6,OUTPUT);
pinMode(2, INPUT);
digitalWrite(12, LOW);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(9, LOW);
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
}
void loop() {
if(digitalRead(2)==HIGH){
digitalWrite(12, LOW);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(9, LOW);
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
do {
Dado = random(1,6);
delay(1000);
}while(Dado == 0);
}
if(Dado == 1){
digitalWrite(9,1);
}else{
if(Dado == 2){
digitalWrite(6,1);
digitalWrite(12,1);
}else{
if(Dado == 3){
digitalWrite(6,1);
digitalWrite(9,1);
digitalWrite(12,1);
}else{
if(Dado == 4){
digitalWrite(6,1);
digitalWrite(8,1);
digitalWrite(10,1);
digitalWrite(12,1);
}else{
if(Dado == 5){
digitalWrite(6,1);
digitalWrite(8,1);
digitalWrite(10,1);
digitalWrite(12,1);
digitalWrite(9,1);
}else{
if(Dado == 6){
digitalWrite(6,1);
digitalWrite(7,1);
digitalWrite(8,1);
digitalWrite(10,1);
digitalWrite(11,1);
digitalWrite(12,1);
}
}}}}}
}
Disculpen si esta desordenado recien estoy empezando a programar asi, espero que puedan ayudarme.