// Pin definisi
const int redPin = 2; // Pin untuk LED merah
const int yellowPin = 3; // Pin untuk LED kuning
const int greenPin = 4; // Pin untuk LED hijau
const int bellPin = 5; // Pin untuk buzzer
// Durasi setiap warna (dalam milidetik)
const unsigned long redDuration = 1000; // 1 detik
const unsigned long yellowDuration = 1000; // 1 detik
const unsigned long greenDuration = 1000; // 1 detik
// Durasi jeda sebelum lampu berikutnya (dalam milidetik)
const unsigned long delayDuration = 2000; // 2 detik
void setup() {
// Inisialisasi pin sebagai output
pinMode(redPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bellPin, OUTPUT);
}
void loop() {
// Menyalakan lampu merah
digitalWrite(redPin, HIGH);
tone(bellPin, 1000); // Menghasilkan suara bel pada frekuensi 1000 Hz
delay(redDuration); // Tunggu selama durasi lampu merah
noTone(bellPin); // Matikan suara bel
delay(delayDuration); // Jeda sebelum lampu berikutnya
digitalWrite(redPin, LOW);
// Menyalakan lampu kuning
digitalWrite(yellowPin, HIGH);
tone (bellPin, 1000);
delay (yellowDuration); // Tunggu selama durasi lampu kuning
noTone (bellPin);
delay(delayDuration); // Jeda sebelum lampu berikutnya
digitalWrite(yellowPin, LOW);
// Menyalakan lampu hijau
digitalWrite(greenPin, HIGH);
tone (bellPin, 1000);
delay(greenDuration); // Tunggu selama durasi lampu hijau
noTone (bellPin);
delay(delayDuration); // Jeda sebelum lampu berikutnya
digitalWrite(greenPin, LOW);
}