/* Nama : Aulia Rahmat
Nim : 2105106010037
Mata Kuliah : Mikrokontroler
Kelas : Senin, 16:35
*/
const int simpang1_R = 3; // Pin untuk merah simpang pertama
const int simpang1_G = 2; // Pin untuk hijau simpang pertama
const int simpang1_B = 1; // Pin untuk kuning simpang pertama
const int simpang2_R = 6; // Pin untuk merah simpang kedua
const int simpang2_G = 5; // Pin untuk hijau simpang kedua
const int simpang2_B = 4; // Pin untuk kuning simpang kedua
const int simpang3_R = 9; // Pin untuk merah simpang ketiga
const int simpang3_G = 8; // Pin untuk hijau simpang ketiga
const int simpang3_B = 7; // Pin untuk kuning simpang ketiga
const int simpang4_R = 12; // Pin untuk merah simpang keempat
const int simpang4_G = 11; // Pin untuk hijau simpang keempat
const int simpang4_B = 10; // Pin untuk kuning simpang keempat
void setup() {
pinMode(simpang1_R, OUTPUT);
pinMode(simpang1_G, OUTPUT);
pinMode(simpang1_B, OUTPUT);
pinMode(simpang2_R, OUTPUT);
pinMode(simpang2_G, OUTPUT);
pinMode(simpang2_B, OUTPUT);
pinMode(simpang3_R, OUTPUT);
pinMode(simpang3_G, OUTPUT);
pinMode(simpang3_B, OUTPUT);
pinMode(simpang4_R, OUTPUT);
pinMode(simpang4_G, OUTPUT);
pinMode(simpang4_B, OUTPUT);
}
void loop() {
// Simpang 1: Hijau, simpang 2: Merah, simpang 3: Merah, simpang 4: Merah
aturWarna(255, 0, 255, 0, 255, 255, 0, 255, 255, 0, 255, 255);
delay(5000);
// Simpang 1: Kuning, simpang 2: Merah, simpang 3: Merah, simpang 4: Merah
aturWarna(0, 0, 255, 0, 255, 255, 0, 255, 255, 0, 255, 255);
delay(500);
// Simpang 1: Merah, simpang 2: Hijau, simpang 3: Merah, simpang 4: Merah
aturWarna(0, 255, 255, 255, 0, 255, 0, 255, 255, 0, 255, 255);
delay(5000);
// Simpang 1: Merah, simpang 2: Kuning, simpang 3: Merah, simpang 4: Merah
aturWarna(0, 255, 255, 0, 0, 255, 0, 255, 255, 0, 255, 255);
delay(500);
// Simpang 1: Merah, simpang 2: Merah, simpang 3: Hijau, simpang 4: Merah
aturWarna(0, 255, 255, 0, 255, 255, 255, 0, 255, 0, 255, 255);
delay(5000);
// Simpang 1: Merah, simpang 2: Merah, simpang 3: Kuning, simpang 4: Merah
aturWarna(0, 255, 255, 0, 255, 255, 0, 0, 255, 0, 255, 255);
delay(500);
// Simpang 1: Merah, simpang 2: Merah, simpang 3: Merah, simpang 4: Hijau
aturWarna(0, 255, 255, 0, 255, 255, 0, 255, 255, 255, 0, 255);
delay(5000);
// Simpang 1: Merah, simpang 2: Merah, simpang 3: Merah, simpang 4: Kuning
aturWarna(0, 255, 255, 0, 255, 255, 0, 255, 255, 0, 0, 255);
delay(500);
}
void aturWarna(int simpang1_WarnaR, int simpang1_WarnaG, int simpang1_WarnaB, int simpang2_WarnaR, int simpang2_WarnaG, int simpang2_WarnaB, int simpang3_WarnaR, int simpang3_WarnaG, int simpang3_WarnaB, int simpang4_WarnaR, int simpang4_WarnaG, int simpang4_WarnaB) {
// Atur warna RGB untuk simpang pertama
analogWrite(simpang1_R, simpang1_WarnaR);
analogWrite(simpang1_G, simpang1_WarnaG);
analogWrite(simpang1_B, simpang1_WarnaB);
// Atur warna RGB untuk simpang kedua
analogWrite(simpang2_R, simpang2_WarnaR);
analogWrite(simpang2_G, simpang2_WarnaG);
analogWrite(simpang2_B, simpang2_WarnaB);
// Atur warna RGB untuk simpang ketiga
analogWrite(simpang3_R, simpang3_WarnaR);
analogWrite(simpang3_G, simpang3_WarnaG);
analogWrite(simpang3_B, simpang3_WarnaB);
// Atur warna RGB untuk simpang keempat
analogWrite(simpang4_R, simpang4_WarnaR);
analogWrite(simpang4_G, simpang4_WarnaG);
analogWrite(simpang4_B, simpang4_WarnaB);
}