I am new to Arduino programming and I would like to ask a question.
Firstly apologies if this has been answered before and I understand if it gets locked if this has been answered elsewhere.
I am trying to get three LED's (red, amber, green) to loop 5 times (in a do loop).
for this I have created a integer variable (x) and initialised the variable to 0.
I then increase x by 1 each time.
However I cannot get them to stop looping when x is greater than 5. The program does work as expected for everything else (green LED lit, wait 1 sec, Yellow LED lit, wait 1 sec, red LED lit and then loop).
//set LED pins
int greenPin = 13;
int yellowPin = 12;
int redPin = 11;
void setup()
{
pinMode(greenPin, OUTPUT); // sets the digital pin as output
pinMode(yellowPin, OUTPUT);
pinMode(redPin, OUTPUT);
}
void loop(){
int x = 0;
do {
digitalWrite(greenPin, HIGH); // sets the LED on
delay(1000); // waits for a second
digitalWrite(greenPin, LOW);
digitalWrite(yellowPin, HIGH); // sets the LED off
delay(1000);
digitalWrite(yellowPin, LOW);// waits for a second
digitalWrite(redPin, HIGH); // sets the LED off
delay(1000);
digitalWrite(redPin, LOW);
}
while(x<=5); {
x = x + 1;
}
}