const int buttonPin = 7; // Buton pin numarası
const int redPin = 9; // Kırmızı LED pin numarası
const int greenPin = 10; // Yeşil LED pin numarası
const int bluePin = 11; // Mavi LED pin numarası
int buttonState = 0; // Buton durumu
int lastButtonState = 0; // Son buton durumu
int colorState = 0; // Renk durumu
void setup() {
pinMode(buttonPin, INPUT);
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
// Başlangıç durumu: Kapalı
analogWrite(redPin, 0);
analogWrite(greenPin, 0);
analogWrite(bluePin, 0);
Serial.begin(9600); // Seri haberleşme başlatılır
}
void loop() {
// Buton durumunu oku
buttonState = digitalRead(buttonPin);
// Butona basıldı mı?
if (buttonState != lastButtonState) {
if (buttonState == HIGH) {
// Renk durumunu değiştir
colorState = (colorState + 1) % 5; // 0-4 arası döngü
switch (colorState) {
case 0: // Sarı
analogWrite(redPin, 255);
analogWrite(greenPin, 255);
analogWrite(bluePin, 0);
Serial.println("Sarı");
break;
case 1: // Kırmızı
analogWrite(redPin, 255);
analogWrite(greenPin, 0);
analogWrite(bluePin, 0);
Serial.println("Kırmızı");
break;
case 2: // Mavi
analogWrite(redPin, 0);
analogWrite(greenPin, 0);
analogWrite(bluePin, 255);
Serial.println("Mavi");
break;
case 3: // Yeşil
analogWrite(redPin, 0);
analogWrite(greenPin, 255);
analogWrite(bluePin, 0);
Serial.println("Yeşil");
break;
case 4: // Kapalı
analogWrite(redPin, 0);
analogWrite(greenPin, 0);
analogWrite(bluePin, 0);
Serial.println("Kapalı");
break;
}
}
delay(50); // Debounce için küçük bir gecikme
}
// Son buton durumunu güncelle
lastButtonState = buttonState;
}