I'm working on a project to help me learn how to use arduino. My project is 'supposed to' remember when I push a button, how long said button is pushed, and the length between button presses; then it is supposed to replay the eight button push sequence.
summarized... it doesn't work.
could someone please explain to me what's wrong with my code:
int ledPin = 13;
int buttonPin = 2;
int buttonState = 0;
int Presses[] = {0, 0, 0, 0, 0, 0, 0, 0};
int Delays[] = {0, 0, 0, 0, 0, 0, 0, 0};
void setup(){
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
Serial.begin(9600);
}
void loop(){
buttonState = digitalRead(buttonPin);
if(buttonState == HIGH){
for(; buttonState == LOW; Presses[1]++){
delay(1);
}
Serial.println(Presses[1]);
for(; buttonState == HIGH; Delays[1]++){
delay(1);
}
for(; buttonState == LOW; Presses[2]++){
delay(1);
}
for(; buttonState == HIGH; Delays[2]++){
delay(1);
}
for(; buttonState == LOW; Presses[3]++){
delay(1);
}
for(; buttonState == HIGH; Delays[3]++){
delay(1);
}
for(; buttonState == LOW; Presses[4]++){
delay(1);
}
for(; buttonState == HIGH; Delays[4]++){
delay(1);
}
for(; buttonState == LOW; Presses[5]++){
delay(1);
}
for(; buttonState == HIGH; Delays[5]++){
delay(1);
}
for(; buttonState == LOW; Presses[6]++){
delay(1);
}
for(; buttonState == HIGH; Delays[6]++){
delay(1);
}
for(; buttonState == LOW; Presses[7]++){
delay(1);
}
for(; buttonState == HIGH; Delays[7]++){
delay(1);
}
for(;buttonState == LOW; Presses[8]++){
delay(1);
}
for(; buttonState == HIGH; Delays[8]++){
delay(1);
}
digitalWrite(ledPin, HIGH);
delay(Presses[1]);
digitalWrite(ledPin, LOW);
delay(Delays[1]);
digitalWrite(ledPin, HIGH);
delay(Presses[2]);
digitalWrite(ledPin, LOW);
delay(Delays[2]);
digitalWrite(ledPin, HIGH);
delay(Presses[3]);
digitalWrite(ledPin, LOW);
delay(Delays[3]);
digitalWrite(ledPin, HIGH);
delay(Presses[4]);
digitalWrite(ledPin, LOW);
delay(Delays[4]);
digitalWrite(ledPin, HIGH);
delay(Presses[5]);
digitalWrite(ledPin, LOW);
delay(Delays[5]);
digitalWrite(ledPin, HIGH);
delay(Presses[6]);
digitalWrite(ledPin, LOW);
delay(Delays[6]);
digitalWrite(ledPin, HIGH);
delay(Presses[7]);
digitalWrite(ledPin, LOW);
delay(Delays[7]);
digitalWrite(ledPin, HIGH);
delay(Presses[8]);
digitalWrite(ledPin, LOW);
delay(Delays[8]);
Presses[1, 2, 3, 4, 5, 6, 7, 8] = 0, 0, 0, 0, 0, 0, 0, 0;
Delays[1, 2, 3, 4, 5, 6, 7, 8] = 0, 0, 0, 0, 0, 0, 0, 0;
}
}