int ledBrightness = 3;
int buttonState = 0;
int lastButtonState = 0;
int pin = 9;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50; // 50 ms debounce time
void setup() {
// put your setup code here, to run once:
pinMode(pin, OUTPUT);
pinMode(11, INPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
int buttonState = digitalRead(11);
if (lastButtonState == HIGH && buttonState == LOW) {
ledBrightness--;
if(ledBrightness < 0){
ledBrightness = 3;
}
}
if (ledBrightness == 3) {
analogWrite(pin, 255);
}
else if (ledBrightness == 2) {
analogWrite(pin, 175);
}
else if (ledBrightness == 1) {
analogWrite(pin, 85);
}
else if (ledBrightness == 0) {
analogWrite(pin, 0);
}
delay(50); // Debounce delay
lastButtonState = buttonState;
}