Hey
I want to use this code as a basis but I do not want to use the mode function on button 12
I want to make 8 LEDs on pin 1 to 8
and I want pin 9 to 13 or the analog pins as a input
to select
mode 1 left to right
mode 2 center out
mode 3 right to left
mode 4 random
mode 5 all off
but i am a new at arduino so all the help is welcome
#define A 1 //LED1
#define B 2 //LED2
#define C 3 //LED3
#define D 4 //LED4
#define E 5 //LED5
#define F 6 //LED6
#define G 7 //LED7
#define H 8 //LED8
#define I 9 //LED9
#define J 10 //LED10
int button = 12;//button
int val; //button read status
int state; //hold
int presses= 0;//# of presses on button
int mode = 0; //current mode
void setup(){
pinMode(A,OUTPUT);
pinMode(B,OUTPUT);
pinMode(C,OUTPUT);
pinMode(D,OUTPUT);
pinMode(E,OUTPUT);
pinMode(F,OUTPUT);
pinMode(G,OUTPUT);
pinMode(H,OUTPUT);
pinMode(I,OUTPUT);
pinMode(J,OUTPUT);
pinMode(button,INPUT);
state = digitalRead(button);
}
void loop(){
val = digitalRead(button); //sets val to the state of the button press
delay(15); //debounce multiple button presses
if (val != state){ //compares button press to current state
if (val == LOW){
if (mode == 0){ //if mode is zero and button was pressed, set mode to 1
mode = 1;
} else {
if (mode == 1){ //increment mode to 2
mode = 2;
} else {
if (mode == 2){ //increment mode to 3
mode = 3;
} else {
}if (mode == 3){ //increment mode to 4
mode = 4;
} else {
if (mode == 4){ //increment mode to 5
mode = 5;
} else {
if (mode == 5){ //increment mode to 0
mode = 0;
}
}
}
}
}
}
}
state = val;
if (mode == 0){ //ALL OFF//mode 0 turns all LEDs off
digitalWrite(A,LOW); //LED
digitalWrite(B,LOW); //LED
digitalWrite(C,LOW); //LED
digitalWrite(D,LOW); //LED
digitalWrite(E,LOW); //LED
digitalWrite(F,LOW); //LED
digitalWrite(G,LOW); //LED
digitalWrite(H,LOW); //LED
digitalWrite(I,LOW); //LED
digitalWrite(J,LOW); //LED
}
if (mode == 1){ // |* * * * * |~| * * * * *|R
byte count = 0; //set counter
byte number = 0; while (count < 3){ //count loop 1
digitalWrite(A,HIGH);
digitalWrite(C,HIGH);
digitalWrite(E,HIGH);
digitalWrite(G,HIGH);
digitalWrite(I,HIGH);
delay(70);
digitalWrite(A,LOW);
digitalWrite(C,LOW);
digitalWrite(E,LOW);
digitalWrite(G,LOW);
digitalWrite(I,LOW);
delay(70); count++;
}
while (number < 3){ //count loop 2
digitalWrite(B,HIGH);
digitalWrite(D,HIGH);
digitalWrite(F,HIGH);
digitalWrite(H,HIGH);
digitalWrite(J,HIGH);
delay(70);
digitalWrite(B,LOW);
digitalWrite(D,LOW);
digitalWrite(F,LOW);
digitalWrite(H,LOW);
digitalWrite(J,LOW);
delay(70); number++;
}
}
if (mode == 2){ // |*** |~| *****|R
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,HIGH);
digitalWrite(E,HIGH);
delay(150);
digitalWrite(A,LOW);
digitalWrite(B,LOW);
digitalWrite(C,LOW);
digitalWrite(D,LOW);
digitalWrite(E,LOW);
digitalWrite(F,HIGH);
digitalWrite(G,HIGH);
digitalWrite(H,HIGH);
digitalWrite(I,HIGH);
digitalWrite(J,HIGH);
delay(150);
digitalWrite(F,LOW);
digitalWrite(G,LOW);
digitalWrite(H,LOW);
digitalWrite(I,LOW);
digitalWrite(J,LOW);
}
if (mode == 3){ // |<--------*|R
digitalWrite(J,HIGH);
delay(150);
digitalWrite(J,LOW);
digitalWrite(I,HIGH);
delay(150);
digitalWrite(I,LOW);
digitalWrite(H,HIGH);
delay(150);
digitalWrite(H,LOW);
digitalWrite(G,HIGH);
delay(150);
digitalWrite(G,LOW);
digitalWrite(F,HIGH);
delay(150);
digitalWrite(F,LOW);
digitalWrite(E,HIGH);
delay(150);
digitalWrite(E,LOW);
digitalWrite(D,HIGH);
delay(150);
digitalWrite(D,LOW);
digitalWrite(C,HIGH);
delay(150);
digitalWrite(C,LOW);
digitalWrite(B,HIGH);
delay(150);
digitalWrite(B,LOW);
digitalWrite(A,HIGH);
delay(150);
digitalWrite(A,LOW);
}
if (mode == 4){ // |<---**--->|
digitalWrite(E,HIGH);
digitalWrite(F,HIGH);
delay(150);
digitalWrite(E,LOW);
digitalWrite(F,LOW);
digitalWrite(D,HIGH);
digitalWrite(G,HIGH);
delay(150);
digitalWrite(D,LOW);
digitalWrite(G,LOW);
digitalWrite(C,HIGH);
digitalWrite(H,HIGH);
delay(150);
digitalWrite(C,LOW);
digitalWrite(H,LOW);
digitalWrite(B,HIGH);
digitalWrite(I,HIGH);
delay(150);
digitalWrite(B,LOW);
digitalWrite(I,LOW);
digitalWrite(A,HIGH);
digitalWrite(J,HIGH);
delay(150);
digitalWrite(A,LOW);
digitalWrite(J,LOW);
}
if (mode == 5){ // |*-------->|R
digitalWrite(A,HIGH);
delay(150);
digitalWrite(A,LOW);
digitalWrite(B,HIGH);
delay(150);
digitalWrite(B,LOW);
digitalWrite(C,HIGH);
delay(150);
digitalWrite(C,LOW);
digitalWrite(D,HIGH);
delay(150);
digitalWrite(D,LOW);
digitalWrite(E,HIGH);
delay(150);
digitalWrite(E,LOW);
digitalWrite(F,HIGH);
delay(150);
digitalWrite(F,LOW);
digitalWrite(G,HIGH);
delay(150);
digitalWrite(G,LOW);
digitalWrite(H,HIGH);
delay(150);
digitalWrite(H,LOW);
digitalWrite(I,HIGH);
delay(150);
digitalWrite(I,LOW);
digitalWrite(J,HIGH);
delay(150);
digitalWrite(J,LOW);
}
}
