//******************************************************
// Created by : Muhammad Salman Al Farisi
// School: MAS Husnul Khotimah
//******************************************************
//********************SIMPANG A*************************
//led trafficlight simpang A
int ledmerahA = 5;
int ledkuningA = 4;
int ledhijauA = 3;
//infrared simpang A
int ir1A = 2;
int ir2A = 22;
int ir3A = 23;
// Pin untuk LED 7-segment simpang A
int segAA = 6;
int segBA = 7;
int segCA = 9;
int segDA = 10;
int segEA = 11;
int segFA = 13;
int segGA = 12;
int segDPA = 8;
//********************SIMPANG B*************************
//led trafficlight simpang B
int ledmerahB = 32;
int ledkuningB = 33;
int ledhijauB = 34;
//infrared simpang B
int ir1B = 35;
int ir2B = 36;
int ir3B = 37;
// Pin untuk LED 7-segment simpang B
int segAB = 25;
int segBB = 24;
int segCB = 31;
int segDB = 28;
int segEB = 29;
int segFB = 26;
int segGB = 27;
int segDPB = 30;
//********************SIMPANG C*************************
//led trafficlight simpang C
int ledmerahC = 46;
int ledkuningC = 47;
int ledhijauC = 48;
//infrared simpang C
int ir1C = 49;
int ir2C = 50;
int ir3C = 51;
// Pin untuk LED 7-segment simpang C
int segAC = 39;
int segBC = 38;
int segCC = 44;
int segDC = 43;
int segEC = 42;
int segFC = 40;
int segGC = 41;
int segDPC = 45;
//********************SIMPANG D*************************
//led trafficlight simpang D
int ledmerahD = A9;
int ledkuningD = A8;
int ledhijauD = A7;
//infrared simpang D
int ir1D = A6;
int ir2D = A5;
int ir3D = A4;
// Pin untuk LED 7-segment simpang D
int segAD = 53;
int segBD = 52;
int segCD = A11;
int segDD = A12;
int segED = A13;
int segFD = A15;
int segGD = A14;
int segDPD = A10;
int totalA = 0 ;//variabel untuk total dari perhitungan
int irstA;
int irndA;
int irrdA;
int totalB = 0 ;//variabel untuk total dari perhitungan
int irstB;
int irndB;
int irrdB;
int totalC = 0 ;//variabel untuk total dari perhitungan
int irstC;
int irndC;
int irrdC;
int totalD = 0 ;//variabel untuk total dari perhitungan
int irstD;
int irndD;
int irrdD;
int lampu_jalan = A3;
int ir_jalan = A2;
int ldrVal = 0; // Value of LDR
// LDR Characteristics
const float GAMMA = 0.7;
const float RL10 = 50;
//************************* SETUP ****************
void setup() {
Serial.begin(9600);
//LED traffic Light A
pinMode(ledmerahA, OUTPUT);
pinMode(ledkuningA, OUTPUT);
pinMode(ledhijauA, OUTPUT);
//LED traffic light B
pinMode(ledmerahB, OUTPUT);
pinMode(ledkuningB, OUTPUT);
pinMode(ledhijauB, OUTPUT);
//LED traffic light C
pinMode(ledmerahC, OUTPUT);
pinMode(ledkuningC, OUTPUT);
pinMode(ledhijauC, OUTPUT);
//LED traffic light D
pinMode(ledmerahD, OUTPUT);
pinMode(ledkuningD, OUTPUT);
pinMode(ledhijauD, OUTPUT);
//led 7 segment A
pinMode(segAA, OUTPUT);
pinMode(segBA, OUTPUT);
pinMode(segCA, OUTPUT);
pinMode(segDA, OUTPUT);
pinMode(segEA, OUTPUT);
pinMode(segFA, OUTPUT);
pinMode(segGA, OUTPUT);
pinMode(segDPA, OUTPUT);
//led 7 segment B
pinMode(segAB, OUTPUT);
pinMode(segBB, OUTPUT);
pinMode(segCB, OUTPUT);
pinMode(segDB, OUTPUT);
pinMode(segEB, OUTPUT);
pinMode(segFB, OUTPUT);
pinMode(segGB, OUTPUT);
pinMode(segDPB, OUTPUT);
//led 7 segment C
pinMode(segAC, OUTPUT);
pinMode(segBC, OUTPUT);
pinMode(segCC, OUTPUT);
pinMode(segDC, OUTPUT);
pinMode(segEC, OUTPUT);
pinMode(segFC, OUTPUT);
pinMode(segGC, OUTPUT);
pinMode(segDPC, OUTPUT);
//led 7 segment D
pinMode(segAD, OUTPUT);
pinMode(segBD, OUTPUT);
pinMode(segCD, OUTPUT);
pinMode(segDD, OUTPUT);
pinMode(segED, OUTPUT);
pinMode(segFD, OUTPUT);
pinMode(segGD, OUTPUT);
pinMode(segDPD, OUTPUT);
//ir sensor A
pinMode(ir1A, INPUT);
pinMode(ir2A, INPUT);
pinMode(ir3A, INPUT);
//ir sensor B
pinMode(ir1B, INPUT);
pinMode(ir2B, INPUT);
pinMode(ir3B, INPUT);
//ir sensor C
pinMode(ir1C, INPUT);
pinMode(ir2C, INPUT);
pinMode(ir3C, INPUT);
//ir sensor D
pinMode(ir1D, INPUT);
pinMode(ir2D, INPUT);
pinMode(ir3D, INPUT);
//ir sensor jalan
pinMode(lampu_jalan, OUTPUT);
// digitalWrite(ledmerahA, HIGH);
digitalWrite(ledmerahB, HIGH);
digitalWrite(ledmerahC, HIGH);
digitalWrite(ledmerahD, HIGH);
}
void loop() {
// ============= SIMPANG A ==============================
irstA=digitalRead(ir1A);//perhitungan volume kendaraan
irndA=digitalRead(ir2A);
if(irstA==LOW){
totalA++;
if(irndA==LOW){
totalA++;
}
}
Serial.print("Simpang A: ");//total perhitungan
Serial.println(totalA);//total perhitungan
switch (totalA) { //pemilihan waktu lampu hijau
case 1 :
digitalWrite(ledmerahA, LOW);
digitalWrite(ledhijauA, HIGH);
dtk5A();
totalA=0;
lampukuningA();
break;
case 2 :
digitalWrite(ledmerahA, LOW);
digitalWrite(ledhijauA, HIGH);
dtk9A();
totalA=0;
lampukuningA();
break;
default :
digitalWrite(ledmerahA, HIGH);
digitalWrite(ledhijauA, LOW);
totalA=0;
break;
}
// ============= SIMPANG B ==============================
irstB=digitalRead(ir1B);//perhitungan volume kendaraan
irndB=digitalRead(ir2B);
if(irstB==LOW){
totalB++;
if(irndB==LOW){
totalB++;
}
}
Serial.print("Simpang B: ");//total perhitungan
Serial.println(totalB);//total perhitungan
switch (totalB) { //pemilihan waktu lampu hijau
case 1 :
digitalWrite(ledmerahB, LOW);
digitalWrite(ledhijauB, HIGH);
dtk5B();
totalB=0;
lampukuningB();
break;
case 2 :
digitalWrite(ledmerahB, LOW);
digitalWrite(ledhijauB, HIGH);
dtk9B();
totalB=0;
lampukuningB();
break;
default :
digitalWrite(ledmerahB, HIGH);
digitalWrite(ledhijauB, LOW);
totalB=0;
break;
}
// ============= SIMPANG C ==============================
irstC=digitalRead(ir1C);//perhitungan volume kendaraan
irndC=digitalRead(ir2C);
if(irstC==LOW){
totalC++;
if(irndC==LOW){
totalC++;
}
}
Serial.print("Simpang C: ");//total perhitungan
Serial.println(totalC);//total perhitungan
switch (totalC) { //pemilihan waktu lampu hijau
case 1 :
digitalWrite(ledmerahC, LOW);
digitalWrite(ledhijauC, HIGH);
dtk5C();
totalC=0;
lampukuningC();
break;
case 2 :
digitalWrite(ledmerahC, LOW);
digitalWrite(ledhijauC, HIGH);
dtk9C();
totalC=0;
lampukuningC();
break;
default :
digitalWrite(ledmerahC, HIGH);
digitalWrite(ledhijauC, LOW);
totalC=0;
break;
}
// ============= SIMPANG D ==============================
irstD=digitalRead(ir1D);//perhitungan volume kendaraan
irndD=digitalRead(ir2D);
if(irstD==LOW){
totalD++;
if(irndD==LOW){
totalD++;
}
}
Serial.print("Simpang D: ");//total perhitungan
Serial.println(totalD);//total perhitungan
switch (totalD) { //pemilihan waktu lampu hijau
case 1 :
digitalWrite(ledmerahD, LOW);
digitalWrite(ledhijauD, HIGH);
dtk5D();
totalD=0;
lampukuningD();
break;
case 2 :
digitalWrite(ledmerahD, LOW);
digitalWrite(ledhijauD, HIGH);
dtk9D();
totalD=0;
lampukuningD();
break;
default :
digitalWrite(ledmerahD, HIGH);
digitalWrite(ledhijauD, LOW);
totalD=0;
break;
}
// ============= LAMPU JALAN ==============================
ldrVal = analogRead(ir_jalan); // Read the analog value of the LDR
float voltage = ldrVal / 1024. * 5;
float resistance = 2000 * voltage / (1 - voltage / 5);
float lux = pow(RL10 * 1e3 * pow(10, GAMMA) / resistance, (1 / GAMMA));
if (lux < 200) { // If the LDR value is lower than 200
digitalWrite(lampu_jalan, HIGH); // Turn buildin LED on
} else {
digitalWrite(lampu_jalan, LOW); // Turn buildin LED off
}
Serial.print("lux: "); // Show the value in the serial monitor
Serial.println(lux); // Show the value in the serial monitor
}
//******** END LOOP *******
// ================== Lampu Kuning Simpang A ===========
void lampukuningA(){
digitalWrite(ledhijauA, LOW);
for(int i=1; i<3; i++){
digitalWrite(ledkuningA, HIGH);
delay(500);
digitalWrite(ledkuningA, LOW);
delay(500);
}
digitalWrite(ledmerahA, HIGH);
delay(500);
minA();
}
// ================== Lampu Kuning Simpang B ===========
void lampukuningB(){
digitalWrite(ledhijauB, LOW);
for(int i=1; i<3; i++){
digitalWrite(ledkuningB, HIGH);
delay(500);
digitalWrite(ledkuningB, LOW);
delay(500);
}
digitalWrite(ledmerahB, HIGH);
delay(500);
minB();
}
// ================== Lampu Kuning Simpang C ===========
void lampukuningC(){
digitalWrite(ledhijauC, LOW);
for(int i=1; i<3; i++){
digitalWrite(ledkuningC, HIGH);
delay(500);
digitalWrite(ledkuningC, LOW);
delay(500);
}
digitalWrite(ledmerahC, HIGH);
delay(500);
minC();
}
// ================== Lampu Kuning Simpang D ===========
void lampukuningD(){
digitalWrite(ledhijauD, LOW);
for(int i=1; i<3; i++){
digitalWrite(ledkuningD, HIGH);
delay(500);
digitalWrite(ledkuningD, LOW);
delay(500);
}
digitalWrite(ledmerahD, HIGH);
delay(500);
minD();
}
// ==================dtk5A ===========
void dtk5A(){
limaA();
delay(500);
empatA();
delay(500);
tigaA();
delay(500);
duaA();
delay(500);
satuA();
delay(500);
nolA();
}
// ==================dtk5B ===========
void dtk5B(){
limaB();
delay(500);
empatB();
delay(500);
tigaB();
delay(500);
duaB();
delay(500);
satuB();
delay(500);
nolB();
}
// ==================dtk5C ===========
void dtk5C(){
limaC();
delay(500);
empatC();
delay(500);
tigaC();
delay(500);
duaC();
delay(500);
satuC();
delay(500);
nolC();
}
// ==================dtk5D ===========
void dtk5D(){
limaD();
delay(500);
empatD();
delay(500);
tigaD();
delay(500);
duaD();
delay(500);
satuD();
delay(500);
nolD();
}
// ==================dtk9A ===========
void dtk9A(){
sembilanA();
delay(200);
delapanA();
delay(500);
tujuhA();
delay(500);
enamA();
delay(500);
limaA();
delay(500);
empatA();
delay(500);
tigaA();
delay(500);
duaA();
delay(500);
satuA();
delay(500);
nolA();
delay(500);
}
// ==================dtk9B ===========
void dtk9B(){
sembilanB();
delay(200);
delapanB();
delay(500);
tujuhB();
delay(500);
enamB();
delay(500);
limaB();
delay(500);
empatB();
delay(500);
tigaB();
delay(500);
duaB();
delay(500);
satuB();
delay(500);
nolB();
delay(500);
}
// ==================dtk9C ===========
void dtk9C(){
sembilanC();
delay(200);
delapanC();
delay(500);
tujuhC();
delay(500);
enamC();
delay(500);
limaC();
delay(500);
empatC();
delay(500);
tigaC();
delay(500);
duaC();
delay(500);
satuC();
delay(500);
nolC();
delay(500);
}
// ==================dtk9D ===========
void dtk9D(){
sembilanD();
delay(200);
delapanD();
delay(500);
tujuhD();
delay(500);
enamD();
delay(500);
limaD();
delay(500);
empatD();
delay(500);
tigaD();
delay(500);
duaD();
delay(500);
satuD();
delay(500);
nolD();
delay(500);
}
// ==================7 SEGMENT SIMPANG A ===========
void nolA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 1);
digitalWrite(segCA, 1);
digitalWrite(segDA, 1);
digitalWrite(segEA, 1);
digitalWrite(segFA, 1);
digitalWrite(segGA, 0);
delay(500);
}
void satuA() {
digitalWrite(segAA, 0);
digitalWrite(segBA, 1);
digitalWrite(segCA, 1);
digitalWrite(segDA, 0);
digitalWrite(segEA, 0);
digitalWrite(segFA, 0);
digitalWrite(segGA, 0);
delay(500);
}
void duaA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 1);
digitalWrite(segCA, 0);
digitalWrite(segDA, 1);
digitalWrite(segEA, 1);
digitalWrite(segFA, 0);
digitalWrite(segGA, 1);
delay(500);
}
void tigaA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 1);
digitalWrite(segCA, 1);
digitalWrite(segDA, 1);
digitalWrite(segEA, 0);
digitalWrite(segFA, 0);
digitalWrite(segGA, 1);
delay(500);
}
void empatA() {
digitalWrite(segAA, 0);
digitalWrite(segBA, 1);
digitalWrite(segCA, 1);
digitalWrite(segDA, 0);
digitalWrite(segEA, 0);
digitalWrite(segFA, 1);
digitalWrite(segGA, 1);
delay(500);
}
void limaA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 0);
digitalWrite(segCA, 1);
digitalWrite(segDA, 1);
digitalWrite(segEA, 0);
digitalWrite(segFA, 1);
digitalWrite(segGA, 1);
delay(500);
}
void enamA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 0);
digitalWrite(segCA, 1);
digitalWrite(segDA, 1);
digitalWrite(segEA, 1);
digitalWrite(segFA, 1);
digitalWrite(segGA, 1);
delay(500);
}
void tujuhA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 1);
digitalWrite(segCA, 1);
digitalWrite(segDA, 0);
digitalWrite(segEA, 0);
digitalWrite(segFA, 0);
digitalWrite(segGA, 0);
delay(500);
}
void delapanA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 1);
digitalWrite(segCA, 1);
digitalWrite(segDA, 1);
digitalWrite(segEA, 1);
digitalWrite(segFA, 1);
digitalWrite(segGA, 1);
delay(500);
}
void sembilanA() {
digitalWrite(segAA, 1);
digitalWrite(segBA, 1);
digitalWrite(segCA, 1);
digitalWrite(segDA, 1);
digitalWrite(segEA, 0);
digitalWrite(segFA, 1);
digitalWrite(segGA, 1);
delay(500);
}
void minA() {
digitalWrite(segAA, 0);
digitalWrite(segBA, 0);
digitalWrite(segCA, 0);
digitalWrite(segDA, 0);
digitalWrite(segEA, 0);
digitalWrite(segFA, 0);
digitalWrite(segGA, 1);
delay(500);
}
// ==================7 SEGMENT SIMPANG B ===========
void nolB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 1);
digitalWrite(segCB, 1);
digitalWrite(segDB, 1);
digitalWrite(segEB, 1);
digitalWrite(segFB, 1);
digitalWrite(segGB, 0);
delay(500);
}
void satuB() {
digitalWrite(segAB, 0);
digitalWrite(segBB, 1);
digitalWrite(segCB, 1);
digitalWrite(segDB, 0);
digitalWrite(segEB, 0);
digitalWrite(segFB, 0);
digitalWrite(segGB, 0);
delay(500);
}
void duaB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 1);
digitalWrite(segCB, 0);
digitalWrite(segDB, 1);
digitalWrite(segEB, 1);
digitalWrite(segFB, 0);
digitalWrite(segGB, 1);
delay(500);
}
void tigaB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 1);
digitalWrite(segCB, 1);
digitalWrite(segDB, 1);
digitalWrite(segEB, 0);
digitalWrite(segFB, 0);
digitalWrite(segGB, 1);
delay(500);
}
void empatB() {
digitalWrite(segAB, 0);
digitalWrite(segBB, 1);
digitalWrite(segCB, 1);
digitalWrite(segDB, 0);
digitalWrite(segEB, 0);
digitalWrite(segFB, 1);
digitalWrite(segGB, 1);
delay(500);
}
void limaB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 0);
digitalWrite(segCB, 1);
digitalWrite(segDB, 1);
digitalWrite(segEB, 0);
digitalWrite(segFB, 1);
digitalWrite(segGB, 1);
delay(500);
}
void enamB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 0);
digitalWrite(segCB, 1);
digitalWrite(segDB, 1);
digitalWrite(segEB, 1);
digitalWrite(segFB, 1);
digitalWrite(segGB, 1);
delay(500);
}
void tujuhB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 1);
digitalWrite(segCB, 1);
digitalWrite(segDB, 0);
digitalWrite(segEB, 0);
digitalWrite(segFB, 0);
digitalWrite(segGB, 0);
delay(500);
}
void delapanB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 1);
digitalWrite(segCB, 1);
digitalWrite(segDB, 1);
digitalWrite(segEB, 1);
digitalWrite(segFB, 1);
digitalWrite(segGB, 1);
delay(500);
}
void sembilanB() {
digitalWrite(segAB, 1);
digitalWrite(segBB, 1);
digitalWrite(segCB, 1);
digitalWrite(segDB, 1);
digitalWrite(segEB, 0);
digitalWrite(segFB, 1);
digitalWrite(segGB, 1);
delay(500);
}
void minB() {
digitalWrite(segAB, 0);
digitalWrite(segBB, 0);
digitalWrite(segCB, 0);
digitalWrite(segDB, 0);
digitalWrite(segEB, 0);
digitalWrite(segFB, 0);
digitalWrite(segGB, 1);
delay(500);
}
// ==================7 SEGMENT SIMPANG c ===========
void nolC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 1);
digitalWrite(segCC, 1);
digitalWrite(segDC, 1);
digitalWrite(segEC, 1);
digitalWrite(segFC, 1);
digitalWrite(segGC, 0);
delay(500);
}
void satuC() {
digitalWrite(segAC, 0);
digitalWrite(segBC, 1);
digitalWrite(segCC, 1);
digitalWrite(segDC, 0);
digitalWrite(segEC, 0);
digitalWrite(segFC, 0);
digitalWrite(segGC, 0);
delay(500);
}
void duaC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 1);
digitalWrite(segCC, 0);
digitalWrite(segDC, 1);
digitalWrite(segEC, 1);
digitalWrite(segFC, 0);
digitalWrite(segGC, 1);
delay(500);
}
void tigaC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 1);
digitalWrite(segCC, 1);
digitalWrite(segDC, 1);
digitalWrite(segEC, 0);
digitalWrite(segFC, 0);
digitalWrite(segGC, 1);
delay(500);
}
void empatC() {
digitalWrite(segAC, 0);
digitalWrite(segBC, 1);
digitalWrite(segCC, 1);
digitalWrite(segDC, 0);
digitalWrite(segEC, 0);
digitalWrite(segFC, 1);
digitalWrite(segGC, 1);
delay(500);
}
void limaC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 0);
digitalWrite(segCC, 1);
digitalWrite(segDC, 1);
digitalWrite(segEC, 0);
digitalWrite(segFC, 1);
digitalWrite(segGC, 1);
delay(500);
}
void enamC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 0);
digitalWrite(segCC, 1);
digitalWrite(segDC, 1);
digitalWrite(segEC, 1);
digitalWrite(segFC, 1);
digitalWrite(segGC, 1);
delay(500);
}
void tujuhC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 1);
digitalWrite(segCC, 1);
digitalWrite(segDC, 0);
digitalWrite(segEC, 0);
digitalWrite(segFC, 0);
digitalWrite(segGC, 0);
delay(500);
}
void delapanC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 1);
digitalWrite(segCC, 1);
digitalWrite(segDC, 1);
digitalWrite(segEC, 1);
digitalWrite(segFC, 1);
digitalWrite(segGC, 1);
delay(500);
}
void sembilanC() {
digitalWrite(segAC, 1);
digitalWrite(segBC, 1);
digitalWrite(segCC, 1);
digitalWrite(segDC, 1);
digitalWrite(segEC, 0);
digitalWrite(segFC, 1);
digitalWrite(segGC, 1);
delay(500);
}
void minC() {
digitalWrite(segAC, 0);
digitalWrite(segBC, 0);
digitalWrite(segCC, 0);
digitalWrite(segDC, 0);
digitalWrite(segEC, 0);
digitalWrite(segFC, 0);
digitalWrite(segGC, 1);
delay(500);
}
// ==================7 SEGMENT SIMPANG D ===========
void nolD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 1);
digitalWrite(segCD, 1);
digitalWrite(segDD, 1);
digitalWrite(segED, 1);
digitalWrite(segFD, 1);
digitalWrite(segGD, 0);
delay(500);
}
void satuD() {
digitalWrite(segAD, 0);
digitalWrite(segBD, 1);
digitalWrite(segCD, 1);
digitalWrite(segDD, 0);
digitalWrite(segED, 0);
digitalWrite(segFD, 0);
digitalWrite(segGD, 0);
delay(500);
}
void duaD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 1);
digitalWrite(segCD, 0);
digitalWrite(segDD, 1);
digitalWrite(segED, 1);
digitalWrite(segFD, 0);
digitalWrite(segGD, 1);
delay(500);
}
void tigaD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 1);
digitalWrite(segCD, 1);
digitalWrite(segDD, 1);
digitalWrite(segED, 0);
digitalWrite(segFD, 0);
digitalWrite(segGD, 1);
delay(500);
}
void empatD() {
digitalWrite(segAD, 0);
digitalWrite(segBD, 1);
digitalWrite(segCD, 1);
digitalWrite(segDD, 0);
digitalWrite(segED, 0);
digitalWrite(segFD, 1);
digitalWrite(segGD, 1);
delay(500);
}
void limaD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 0);
digitalWrite(segCD, 1);
digitalWrite(segDD, 1);
digitalWrite(segED, 0);
digitalWrite(segFD, 1);
digitalWrite(segGD, 1);
delay(500);
}
void enamD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 0);
digitalWrite(segCD, 1);
digitalWrite(segDD, 1);
digitalWrite(segED, 1);
digitalWrite(segFD, 1);
digitalWrite(segGD, 1);
delay(500);
}
void tujuhD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 1);
digitalWrite(segCD, 1);
digitalWrite(segDD, 0);
digitalWrite(segED, 0);
digitalWrite(segFD, 0);
digitalWrite(segGD, 0);
delay(500);
}
void delapanD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 1);
digitalWrite(segCD, 1);
digitalWrite(segDD, 1);
digitalWrite(segED, 1);
digitalWrite(segFD, 1);
digitalWrite(segGD, 1);
delay(500);
}
void sembilanD() {
digitalWrite(segAD, 1);
digitalWrite(segBD, 1);
digitalWrite(segCD, 1);
digitalWrite(segDD, 1);
digitalWrite(segED, 0);
digitalWrite(segFD, 1);
digitalWrite(segGD, 1);
delay(500);
}
void minD() {
digitalWrite(segAD, 0);
digitalWrite(segBD, 0);
digitalWrite(segCD, 0);
digitalWrite(segDD, 0);
digitalWrite(segED, 0);
digitalWrite(segFD, 0);
digitalWrite(segGD, 1);
delay(500);
}
SIMPANG A
SIMPANG B
SIMPANG A
A : 6
B : 7
C : 9
D : 10
E : 11
F : 13
G : 12
DP : 8
LED RED : 5
LED YELLOW : 4
LED GREEN : 3
SENSOR1 : 2
SENSOR2 : 22
SENSOR3 : 23
S1
S2
S3
SIMPANG B
A : 25
B : 24
C : 31
D : 28
E : 29
F : 26
G : 27
DP :30
LED RED : 32
LED YELLOW : 33
LED GREEN : 34
SENSOR1 : 35
SENSOR2 : 36
SENSOR3 : 37
S1
S2
S3
SIMPANG C
S1
S2
S3
SIMPANG C
A : 39
B : 38
C : 44
D : 43
E : 42
F : 40
G : 41
DP :45
LED RED : 46
LED YELLOW : 47
LED GREEN : 48
SENSOR1 : 49
SENSOR2 : 50
SENSOR3 : 51
SIMPANG D
A : 53
B : 52
C : A11
D : A12
E : A13
F : A15
G : A14
DP :DP
LED RED : A9
LED YELLOW : A8
LED GREEN : A7
SENSOR1 : A6
SENSOR2 : A5
SENSOR3 : A4
SIMPANG D
S1
S2
S3
LAMPU JALAN
SIMPANG A
SIMPANG B
SIMPANG C
SIMPANG D
SIGNAL LAMPU MERAH MENYALA
KE ESP32-CAM