Hola buenas, soy nuevo en el foro y queria saber si me podeis ayudar? Tengo que imprimir un mensaje en la pantalla pulsando un pulsador, pero solo quiero que lo haga una vez. Porque ese mismo pulsador me sirve para controlar unos leds. Seria, tu le das al pulsador y te sale en la pantalla que has entrado en el "EJ 2" que es subir y bajar leds controlando el pulsador 2. Aqui os dejo el programa para que lo veais y me digais algo.
Un saludo.
int leds[9]= {B00000000, B10000000, B11000000, B11100000, B11110000, B11111000, B11111100, B11111110, B11111111};
long Tinicial[6];
int buena[6], interpretado[6], contreb[6];
int pulsador(int n){
if (!digitalRead(n+2)){
if(buena[n]){
if(interpretado[n]){
if(millis()-Tinicial[n]>1000){
Tinicial[n]=millis()-700;
return 2;
}
return 0;
}
else{
interpretado[n]=1;
Tinicial[n]=millis();
return 1;
}
}
else{
if(contreb[n]++>500)buena[n]=1;
return 0;
}
}
else {
interpretado[n]=0;
contreb[n]= 0;
buena[n] =0;
return 0;
}
}
void loop(){
if(pulsadores(0))while(1){
// aquí ejercicio 1
JuegoLEDS();
}
if(pulsadores(1))while(1){
// aquí ejercicio 2
}
if(pulsadores(2))while(1){
// aquí ejercicio 3
}
if(pulsadores(3))while(1){
// aquí ejercicio 4
}
if(pulsadores(4))while(1){
// aquí ejercicio 5
}
if(pulsadores(5))while(1){
// aquí ejercicio 6
}
LEDS.txt (1.57 KB)