Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //const int LED_BUILTIN = 2;
- const int merah1 = 2;
- const int kuning1 = 4;
- const int hijau1 = 19;
- const int merah2 = 21;
- const int kuning2 = 22;
- const int hijau2 = 23;
- const int trigPin = 18;
- const int echoPin = 5;
- void setup() {
- // put your setup code here, to run once:
- // pinMode(LED_BUILTIN, OUTPUT);
- Serial.begin(9600);
- pinMode(merah1, OUTPUT);
- pinMode(kuning1, OUTPUT);
- pinMode(hijau1, OUTPUT);
- pinMode(trigPin, OUTPUT);
- pinMode(echoPin, OUTPUT);
- pinMode(merah2, OUTPUT);
- pinMode(kuning2, OUTPUT);
- pinMode(hijau2, OUTPUT);
- }
- void loop() {
- // put your main code here, to run repeatedly:
- // digitalWrite(LED_BUILTIN, HIGH);
- digitalWrite(merah1, HIGH);
- digitalWrite(kuning1, LOW);
- digitalWrite(hijau2, HIGH);
- digitalWrite(merah2, LOW);
- delay(5000);
- if (detectMove()){
- digitalWrite(hijau2, LOW);
- dimKuning2();
- digitalWrite(merah2, HIGH);
- delay(500);
- digitalWrite(hijau1, HIGH);
- } else{
- digitalWrite(hijau2, LOW);
- dimKuning2();
- digitalWrite(kuning2, LOW);
- digitalWrite(merah2, HIGH);
- digitalWrite(merah1, LOW);
- digitalWrite(hijau1, HIGH);
- }
- delay(5000);
- if (detectMove()){
- digitalWrite(hijau1, LOW);
- dimKuning1();
- digitalWrite(merah1, HIGH);
- delay(500);
- digitalWrite(hijau2, HIGH);
- }
- delay(5000);
- digitalWrite(hijau1, LOW);
- dimKuning1();
- }
- void dimKuning1(){
- for(int i=0; i<3; i++){
- digitalWrite(kuning1, HIGH);
- delay(500);
- digitalWrite(kuning1, LOW);
- delay(500);
- }
- }
- void dimKuning2(){
- for(int i=0; i<3; i++){
- digitalWrite(kuning2, HIGH);
- delay(500);
- digitalWrite(kuning2, LOW);
- delay(500);
- }
- }
- bool detectMove(){
- long duration, distance;
- digitalWrite(trigPin, LOW);
- delayMicroseconds(2);
- digitalWrite(trigPin, HIGH);
- delayMicroseconds(10);
- digitalWrite(trigPin, LOW);
- duration = pulseIn(echoPin, HIGH);
- distance = (duration/2) / 29.1;
- Serial.println(distance);
- if (distance <= 30){
- // if (traffic == 1){
- //// digitalWrite(hijau2, LOW);
- //// dimKuning();
- //// digitalWrite(merah2, HIGH);
- //// delay(500);
- //// digitalWrite(hijau1, HIGH);
- // }
- return true;
- }
- else{
- return false;
- }
- // delay(1000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement