So the red led is supposed to turn on when i push the button once but it's always on and wont stay off even if i tell it to stay off
Pushcounter =
1 - Red on
2 - Blue on
3- Red on
4 - Blue on
// C++ code
//
const byte buttonPin = 2;
const byte ledRed = 13;
const byte ledBlue = 12;
int buttonPushCounter = 0;
boolean buttonState = 0;
boolean lastButtonState = 0;
void setup()
{
pinMode(buttonPin, INPUT_PULLUP);
pinMode(ledRed, OUTPUT);
pinMode(ledBlue, OUTPUT);
Serial.begin(9600);
}
void loop()
{
static unsigned long timer = 0;
unsigned long interval = 20;
if (millis() - timer >= interval)
{
timer = millis();
buttonState = digitalRead(buttonPin);
if (buttonState != lastButtonState)
{
if (buttonState == LOW)
{
buttonPushCounter++;
Serial.println("on");
Serial.print("button pushes: ");
Serial.println(buttonPushCounter);
}
else
{
Serial.println("off");
}
lastButtonState = buttonState;
}
}
if (buttonPushCounter == 1);
{
digitalWrite(ledBlue, LOW);
digitalWrite(ledRed, HIGH);
}
if (buttonPushCounter == 2)
{
digitalWrite(ledBlue, HIGH);
digitalWrite(ledRed, LOW);
}
if (buttonPushCounter == 3)
{
digitalWrite(ledRed, HIGH);
}
if (buttonPushCounter == 4)
{
digitalWrite(ledBlue, HIGH);
digitalWrite(ledRed, LOW);
}
if (buttonPushCounter == 0);
{
digitalWrite(ledRed, LOW);
digitalWrite(ledBlue, LOW);
}
}
