Hello!
i'm getting an issue where my setup code is running twice then going to the loop. If I seperate out the Setup only and delete the Loop void then it runs correctly once?? Any one know what this could be?? And I'm tweaking the code so all the notes aren't up to date at the moment. Thank you!!
#define button 3
int state = 0;
int old = 0;
int buttonPoll = 0;
int eye = 5;
bool doneFlag = 0;
void setup() {
// put your setup code here, to run once:
pinMode (eye, OUTPUT);delay (50);
pinMode (button, INPUT);
delay (750);
analogWrite (eye, 100); //turn eyes to 100 brightness
delay (50);
analogWrite (eye, 0); //turn eyes to off
delay (30);
analogWrite (eye, 100); //turn eyes to 100 brightness
delay (50);
analogWrite (eye, 0); //turn eyes to off
delay (30);
analogWrite (eye, 100); //turn eyes to 100 brightness
delay (150);
analogWrite (eye, 0); //turn eyes to off
delay (30);
analogWrite (eye, 125); //turn eyes to 125 brightness
delay (175);
analogWrite (eye, 0); //turn eyes to off
delay (10);
analogWrite (eye, 25);
delay (20);
analogWrite (eye, 30);
delay (20);
analogWrite (eye, 35);
delay (20);
analogWrite (eye, 40);
delay (20);
analogWrite (eye, 45);
delay (20);
analogWrite (eye, 50);
delay (20);
analogWrite (eye, 55);
delay (20);
analogWrite (eye, 60);
delay (20);
analogWrite (eye, 65);
delay (20);
analogWrite (eye, 70);
delay (20);
analogWrite (eye, 75);
delay (20);
analogWrite (eye, 80);
delay (20);
analogWrite (eye, 85);
delay (20);
analogWrite (eye, 90);
delay (20);
analogWrite (eye, 95);
delay (20);
analogWrite (eye, 100);
delay (20);
analogWrite (eye, 105);
delay (20);
analogWrite (eye, 110);
delay (20);
analogWrite (eye, 115);
delay (20);
analogWrite (eye, 120);
delay (20);
analogWrite (eye, 125);
delay (20);
analogWrite (eye, 130);
delay (20);
analogWrite (eye, 135);
delay (20);
analogWrite (eye, 140);
delay (20);
analogWrite (eye, 145);
delay (20);
analogWrite (eye, 150);
delay (20);
analogWrite (eye, 155);
delay (20);
analogWrite (eye, 160);
delay (20);
analogWrite (eye, 165);
delay (20);
analogWrite (eye, 170);
delay (20);
analogWrite (eye, 175);
delay (20);
analogWrite (eye, 180);
delay (20);
analogWrite (eye, 185);
delay (20);
analogWrite (eye, 190);
delay (20);
analogWrite (eye, 195);
delay (20);
analogWrite (eye, 200);
delay (20);
analogWrite (eye, 205);
delay (20);
analogWrite (eye, 210);
delay (20);
analogWrite (eye, 215);
delay (20);
analogWrite (eye, 220);
delay (20);
analogWrite (eye, 225);
delay (20);
analogWrite (eye, 230);
delay (20);
analogWrite (eye, 235);
delay (20);
analogWrite (eye, 240);
delay (20);
analogWrite (eye, 245);
delay (20);
analogWrite (eye, 250);
delay (20);
analogWrite (eye, 255);
}
void loop() {
buttonPoll = digitalRead(button);
if(buttonPoll == 1) {
delay(50);
buttonPoll = digitalRead(button);
if(buttonPoll == false) {
state = old + 1;
}}
else{
delay(100);
}
switch (state) {
case 1: //if state is 2
doneFlag = false;
analogWrite(eye, 48); //eyes at 37%
old = state; //set old stste as current state 2
break;
case 2: //if state is 3
analogWrite(eye, 24); //eyes at 18%
old = state; //set old state as current state 3
break;
case 3: //if state is 4
analogWrite(eye, 8); //eyes at 6%
old = state; //set old state as current state 4
break;
case 4: //if state is 4
analogWrite(eye, 0); //eyes at 6%
old = state; //set old state as current state 4
break;
default: //if state is not 1,2,3,4
if (doneFlag == false) {
delay (750);
analogWrite (eye, 100); //turn eyes to 100 brightness
delay (50);
analogWrite (eye, 0); //turn eyes to off
delay (30);
analogWrite (eye, 100); //turn eyes to 100 brightness
delay (50);
analogWrite (eye, 0); //turn eyes to off
delay (30);
analogWrite (eye, 100); //turn eyes to 100 brightness
delay (150);
analogWrite (eye, 0); //turn eyes to off
delay (30);
analogWrite (eye, 125); //turn eyes to 125 brightness
delay (175);
analogWrite (eye, 0); //turn eyes to off
delay (10);
analogWrite (eye, 25);
delay (20);
analogWrite (eye, 30);
delay (20);
analogWrite (eye, 35);
delay (20);
analogWrite (eye, 40);
delay (20);
analogWrite (eye, 45);
delay (20);
analogWrite (eye, 50);
delay (20);
analogWrite (eye, 55);
delay (20);
analogWrite (eye, 60);
delay (20);
analogWrite (eye, 65);
delay (20);
analogWrite (eye, 70);
delay (20);
analogWrite (eye, 75);
delay (20);
analogWrite (eye, 80);
delay (20);
analogWrite (eye, 85);
delay (20);
analogWrite (eye, 90);
delay (20);
analogWrite (eye, 95);
delay (20);
analogWrite (eye, 100);
delay (20);
analogWrite (eye, 105);
delay (20);
analogWrite (eye, 110);
delay (20);
analogWrite (eye, 115);
delay (20);
analogWrite (eye, 120);
delay (20);
analogWrite (eye, 125);
delay (20);
analogWrite (eye, 130);
delay (20);
analogWrite (eye, 135);
delay (20);
analogWrite (eye, 140);
delay (20);
analogWrite (eye, 145);
delay (20);
analogWrite (eye, 150);
delay (20);
analogWrite (eye, 155);
delay (20);
analogWrite (eye, 160);
delay (20);
analogWrite (eye, 165);
delay (20);
analogWrite (eye, 170);
delay (20);
analogWrite (eye, 175);
delay (20);
analogWrite (eye, 180);
delay (20);
analogWrite (eye, 185);
delay (20);
analogWrite (eye, 190);
delay (20);
analogWrite (eye, 195);
delay (20);
analogWrite (eye, 200);
delay (20);
analogWrite (eye, 205);
delay (20);
analogWrite (eye, 210);
delay (20);
analogWrite (eye, 215);
delay (20);
analogWrite (eye, 220);
delay (20);
analogWrite (eye, 225);
delay (20);
analogWrite (eye, 230);
delay (20);
analogWrite (eye, 235);
delay (20);
analogWrite (eye, 240);
delay (20);
analogWrite (eye, 245);
delay (20);
analogWrite (eye, 250);
delay (20);
analogWrite (eye, 255);
doneFlag = true;
}
old = 0;
break;
}
}