Hola soy nuevo en esto y tal vez les parezca muy simple pero necesito ayuda. =(
Necesito hacer como una serie de navidad la cual va a tener 6 modos de operación y esos modos van a ser controlados por un solo botón, lo que necesito es que cuando lo conecte se encienda el primer modo y que cuando presione el botón pase al solo al segundo modo y cuando vuelva presionar el botón al tercero y asi hasta llegar al ultimo modo, una vez en el ultimo modo de operacion al volver a presionar el boton regrese al primero
Este es mi código: p1, p2, p3, p4, p5 y p6 son mis funciones de los modos de operacion
int led = 11; //10
int led1 = 10; //9
int led2 = 9; //8
int led3 = 8; //7
int led4 = 7; //6
int led5 = 6; //5
int led6 = 5; //4
int led7 = 4; //3
int led8 = 3; //2
int led9 = 2; //1
int boton = 12;
int value = 0;
void setup() {
pinMode(led, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(led7, OUTPUT);
pinMode(led8, OUTPUT);
pinMode(led9, OUTPUT);
pinMode(boton, INPUT);
}
void p1(){
for(int i=0; i<10; i++){
digitalWrite(led, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
digitalWrite(led6, HIGH);
digitalWrite(led7, HIGH);
digitalWrite(led8, HIGH);
digitalWrite(led9, HIGH);
delay(500);
}
}
void p2(){
digitalWrite(led9, HIGH);
digitalWrite(led8, HIGH);
digitalWrite(led7, HIGH);
digitalWrite(led6, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led, HIGH);
delay(100);
digitalWrite(led9, LOW);
digitalWrite(led8, LOW);
digitalWrite(led7, LOW);
digitalWrite(led6, LOW);
digitalWrite(led2, LOW);
digitalWrite(led4, LOW);
digitalWrite(led3, LOW);
digitalWrite(led2, LOW);
digitalWrite(led1, LOW);
digitalWrite(led, LOW);
delay(625);
}
void p3(){
for(int i=0; i<10; i++){
digitalWrite(led, HIGH);
delay(50);
digitalWrite(led1, HIGH);
delay(50);
digitalWrite(led2, HIGH);
delay(50);
digitalWrite(led3, HIGH);
delay(50);
digitalWrite(led5, HIGH);
delay(50);
digitalWrite(led6, HIGH);
delay(50);
digitalWrite(led7, HIGH);
delay(50);
digitalWrite(led8, HIGH);
delay(50);
digitalWrite(led9, HIGH);
delay(50);
digitalWrite(led9, LOW);
delay(50);
digitalWrite(led8, LOW);
delay(50);
digitalWrite(led7, LOW);
delay(50);
digitalWrite(led6, LOW);
delay(50);
digitalWrite(led5, LOW);
delay(50);
digitalWrite(led4, LOW);
delay(50);
digitalWrite(led3, LOW);
delay(50);
digitalWrite(led2, LOW);
delay(50);
digitalWrite(led1, LOW);
delay(50);
digitalWrite(led, LOW);
delay(50);
}
}
void p4(){
for(int i=0; i<10; i++){
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
delay(50);
digitalWrite(led3, HIGH);
digitalWrite(led6, HIGH);
delay(50);
digitalWrite(led2, HIGH);
digitalWrite(led7, HIGH);
delay(50);
digitalWrite(led1, HIGH);
digitalWrite(led8, HIGH);
delay(50);
digitalWrite(led, HIGH);
digitalWrite(led9, HIGH);
delay(50);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
delay(50);
digitalWrite(led3, LOW);
digitalWrite(led6, LOW);
delay(50);
digitalWrite(led2, LOW);
digitalWrite(led7, LOW);
delay(50);
digitalWrite(led1, LOW);
digitalWrite(led8, LOW);
delay(50);
digitalWrite(led, LOW);
digitalWrite(led9, LOW);
delay(50);
digitalWrite(led, HIGH);
digitalWrite(led9, HIGH);
delay(50);
digitalWrite(led1, HIGH);
digitalWrite(led8, HIGH);
delay(50);
digitalWrite(led2, HIGH);
digitalWrite(led7, HIGH);
delay(50);
digitalWrite(led3, HIGH);
digitalWrite(led6, HIGH);
delay(50);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
delay(50);
digitalWrite(led, LOW);
digitalWrite(led9, LOW);
delay(50);
digitalWrite(led1, LOW);
digitalWrite(led8, LOW);
delay(50);
digitalWrite(led2, LOW);
digitalWrite(led7, LOW);
delay(50);
digitalWrite(led3, LOW);
digitalWrite(led6, LOW);
delay(50);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
delay(50);
}
}
void p5(){
for(int i=0; i<10; i++){
digitalWrite(led,HIGH);
delay(60);
digitalWrite(led,LOW);
digitalWrite(led3,HIGH);
delay(60);
digitalWrite(led3, LOW);
digitalWrite(led2,HIGH);
delay(60);
digitalWrite(led2,LOW);
digitalWrite(led4,HIGH);
delay(60);
digitalWrite(led4, LOW);
digitalWrite(led1,HIGH);
delay(60);
digitalWrite(led1,LOW);
digitalWrite(led6,HIGH);
delay(60);
digitalWrite(led6,LOW);
digitalWrite(led8,HIGH);
delay(60);
digitalWrite(led8,LOW);
digitalWrite(led2,HIGH);
delay(60);
digitalWrite(led2, LOW);
digitalWrite(led8,HIGH);
delay(60);
digitalWrite(led8,LOW);
digitalWrite(led6,HIGH);
delay(60);
digitalWrite(led6,LOW);
digitalWrite(led3,HIGH);
delay(60);
digitalWrite(led3, LOW);
digitalWrite(led,HIGH);
delay(60);
digitalWrite(led9,HIGH);
delay(60);
digitalWrite(led9,LOW);
digitalWrite(led,LOW);
digitalWrite(led4,HIGH);
delay(60);
digitalWrite(led4,LOW);
digitalWrite(led7,HIGH);
delay(60);
digitalWrite(led7,LOW);
}
}
void p6(){
for(int i=0; i<10; i++){
digitalWrite(led, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
delay(20);
digitalWrite(led, LOW);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
delay(100);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
delay(100);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
digitalWrite(led6, HIGH);
delay(100);
digitalWrite(led3, LOW);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
digitalWrite(led6, HIGH);
digitalWrite(led7, HIGH);
delay(100);
digitalWrite(led4, LOW);
digitalWrite(led5, HIGH);
digitalWrite(led6, HIGH);
digitalWrite(led7, HIGH);
digitalWrite(led8, HIGH);
delay(100);
digitalWrite(led5, LOW);
digitalWrite(led6, HIGH);
digitalWrite(led7, HIGH);
digitalWrite(led8, HIGH);
digitalWrite(led9, HIGH);
delay(100);
digitalWrite(led6, LOW);
digitalWrite(led7, HIGH);
digitalWrite(led8, HIGH);
digitalWrite(led9, HIGH);
digitalWrite(led1, HIGH);
delay(100);
digitalWrite(led7, LOW);
digitalWrite(led8, HIGH);
digitalWrite(led9, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
delay(100);
digitalWrite(led8, LOW);
digitalWrite(led9, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
delay(100);
digitalWrite(led9, LOW);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
delay(20);
}
}
void loop(){
}