En el Tinkercad ni un número, y en la realidad me detecta 2 de 3 pero se salta alguna pregunta, o incluso 2...
//PROGRAMA DEFINITIVO!!
//Pines con PWM:3,5,6,9,10,11
int i;
int a;
const int PWM1 = 3;
const int PWM2 = 5;
const int PWM3 = 6;
const int PWM4 = 9;
const int PWM5 = 10;
const int PWM6 = 11;
unsigned long tanterior = 0;
const long intervalo = 100;
int BRILLO = 0;
int fadeAmount = 5;
int hora;
int minutos;
int segundos;
String msg1 = "El sistema de iluminación necesita 2 horas.";
String msg2 = "Una, que será la actual.";
String msg3 = "Y otra, que será la deseada para que se ilumine el acuario";
String msg4 = "Empecemos con la actual.";
String msg5 = "Introduzca la hora (solo 2 cifras).";
String msg6 = "Ahora escriba los minutos.";
String msg7 = "Por último, escriba los segundos.";
String msg8 = "Hora exacta elegida:";
void setup(){
tanterior = millis();
for(i = 1; i<= 13; i++){
pinMode(i, OUTPUT);
}
Serial.begin(9600);
}
void loop(){
Serial.println(msg1);
delay(1500);
Serial.println(msg2);
delay(1500);
Serial.println(msg3);
delay(1500);
Serial.println(msg4);
delay(1500);
Serial.println(msg5);
while(Serial.available() == 0){
}
hora = Serial.parseInt();
Serial.println(msg6);
while(Serial.available() == 0){
}
minutos = Serial.parseInt();
Serial.println(msg7);
while(Serial.available() == 0){
}
segundos = Serial.parseInt();
Serial.println(msg8);
Serial.println(hora);
Serial.println(minutos);
Serial.println(segundos);
}
Hago una pregunta, pongo para que espere y hasta que no se conteste no pasa a la siguiente. Pues a veces funciona y otras veces no, se salta 2 o 1 pregunta y deja la variable como 0. Por cierto, pensaba que si escribía 0 por lo de while no me dejaría saltar a la pregunta siguiente, pero sí me deja (así que genial, por lo menos no tenemos problemas con la medianoche...)
Por cierto, tengo 4000 variables pero es porque me queda rato con el programa y los problemas que surjan. Los imposibles los comento por aquí, pero los tontos después de 30 años los soluciono xd.
PD: Estoy viendo que la primera vez siempre se salta la segunda pregunta, y la siguiente ejecución del programa se salta las otras 2 preguntas
