//Rangga A D
//4T-JTD
//244101067012
const int redLED = 4; // nomor pin led merah
const int yellowLED = 2; // nomor pin led kuning
const int greenLED = 15; // nomor pin led hijau
const int buzzer = 23; // nomor pin buzzer
const int buttonPin = 33; // nomor pin push button
bool buttonPressed = false; //kondisi boolean button
void setup() {
pinMode(redLED, OUTPUT); // led dan buzzer sbg output
pinMode(yellowLED, OUTPUT);
pinMode(greenLED, OUTPUT);
pinMode(buzzer, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP); // push button sebagai input
Serial.begin(115200); // baud rate
}
void loop() {
digitalWrite(redLED, HIGH);// led merah menyala
digitalWrite(greenLED, LOW); // led hijau mati
Serial.println("Dilarang Menyebrang Jalan"); // menampilkan tulisan di serial monitor
// led kuning blinking setiap 1 detik sampai push button ditekan
while (!buttonPressed) {
digitalWrite(yellowLED, HIGH);
delay(1000);
digitalWrite(yellowLED, LOW);
delay(1000);
// memastikan tombol ditekan
if (digitalRead(buttonPin) == LOW) {
buttonPressed = true;
}
}
Serial.println("Silahkan Menyebrang Jalan"); // menampilkan tulisan di serial monitor
// Phase 2: Green ON, Others OFF
digitalWrite(redLED, LOW);
digitalWrite(yellowLED, LOW);
digitalWrite(greenLED, HIGH);
// tombol ditekan, buzzer menyala
tone(buzzer, 500); // suara 500Hz
delay(4000);
noTone(buzzer); // Stop
// Reset button state
buttonPressed = false;
}
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
led1:A
led1:C
led2:A
led2:C
led3:A
led3:C
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
bz1:1
bz1:2
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2
hold button