#define buttonPin 10
#define ledPin 11
bool idk=0;
bool ledState=0;
bool buttonState=0;
bool lastButtonState=0;
unsigned long lastDebounceTime=0;
unsigned long BeforeTime=0;
int debounceDelay=50;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
Serial.begin(9600);
}
void loop() {
bool reading = digitalRead(buttonPin);
if (reading != lastButtonState)
{
lastDebounceTime = millis();
}
if ((millis() - lastDebounceTime) > debounceDelay)
{
if (reading != buttonState)
{
buttonState = reading;
if (buttonState == HIGH)
{
idk=!idk;
}
}
}
if(idk==1)
{
if(millis()-BeforeTime>=500)
{
BeforeTime=millis();
ledState=!ledState;
digitalWrite(ledPin,ledState);
}
}
else
digitalWrite(ledPin,0);
lastButtonState = reading;
}