Tugas Pendahuluan 1 modul 1 P1K6

Percobaan I Kondisi 6

1. Prosedur [Kembali]

1. Rangkai rangkaian di proteus sesuai dengan kondisi percobaan.
2. Tulis program untuk arduino di software Arduino IDE.
3. Compile program tadi, lalu upload ke dalam arduino.
4. Setelah program selesai di upload, jalankan simulasi rangkaian pada proteus.

2. Hardware dan Diagram Blok [Kembali]

Hardware :

1. Arduino





2. Push Button





3. LED





4. Resistor





Diagram Blok :


3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]



Prinsip Kerja:

Pada percobaan terdapat 7 button sebagai input dan 7 LED sebagai output. Button dihubungkan dengan pin analog (A0- A5, 13) Arduino Uno dan LED dihubungkan dengan pin 2- 7 Arduino Uno serta pin 13 juga dihubungkan dengan button. Pada rangkaian, button menggunakan rangkaian pull down, jadi ketika button ditekan, maka tegangan dari VCC akan mengalir menuju arduino dan memeberikan logika high, sedangkan ketika button dalam posisi terbuka, maka akan memberikan logika low pada arduino. Ketika 3 button ditekan, maka 3 LED akan aktif. ketika button 1, 2, dan 3 ditekan makan LED 1, 2, 3 juga akan aktif, begitu juga ketika button  3, 4, 6 ditekan maka LED 3, 4, 6 akan aktif. Sedangkan ketika 2 buah button ditekan, baik button nomor berapa pun, maka semua LED kan aktif secara running. Ketika kedua kondisi tersebut tidak terpenuhi ( 3 button menghidupkan 3 LED, 2 button menghidupkan 7 LED running) maka tidak akan ada LED yang aktif. 


Flowchart :



Listing Program:

int led[] = {2, 3, 4, 5, 6, 7, 8}; // Array untuk menyimpan pin LED
#define PB1 A0  // Tentukan nomor pin tombol tekan
#define PB2 A1
#define PB3 A2
#define PB4 A3
#define PB5 A4
#define PB6 A5
#define PB7 13

void setup() 
 Serial.begin(9600); // Memulai komunikasi serial untuk debug
 pinMode(PB1, INPUT); // Mengatur pin tombol tekan sebagai input
 pinMode(PB2, INPUT);
 pinMode(PB3, INPUT);
 pinMode(PB4, INPUT);
 pinMode(PB5, INPUT);
 pinMode(PB6, INPUT);
 pinMode(PB7, INPUT);
 
 for (int i = 0; i < 7; i++) 
 {
   pinMode(led[i], OUTPUT); // Mengatur pin LED sebagai output
 } 
}

void loop()
{
 // Membaca status setiap tombol tekan
 int b7 = digitalRead(PB7);
 int b6 = digitalRead(PB6);
 int b5 = digitalRead(PB5);
 int b4 = digitalRead(PB4);
 int b3 = digitalRead(PB3);
 int b2 = digitalRead(PB2);
 int b1 = digitalRead(PB1);
 
 // Mengatur variabel untuk menghitung jumlah pin input yang berlogika tinggi
 int highCount = 0;
 if (b7 == HIGH) highCount++;
 if (b6 == HIGH) highCount++;
 if (b5 == HIGH) highCount++;
 if (b4 == HIGH) highCount++;
 if (b3 == HIGH) highCount++;
 if (b2 == HIGH) highCount++;
 if (b1 == HIGH) highCount++;
 
 // Jika 3 pin input berlogika tinggi, nyalakan 3 LED yang bersangkutan
 if (highCount == 3) {
    for (int i = 0; i < 7; i++) {
        digitalWrite(led[i], LOW);
    }
    if (b7 == HIGH) digitalWrite(led[6], HIGH);
    if (b6 == HIGH) digitalWrite(led[5], HIGH);
    if (b5 == HIGH) digitalWrite(led[4], HIGH);
    if (b4 == HIGH) digitalWrite(led[3], HIGH);
    if (b3 == HIGH) digitalWrite(led[2], HIGH);
    if (b2 == HIGH) digitalWrite(led[1], HIGH);
    if (b1 == HIGH) digitalWrite(led[0], HIGH);
 }
 // Jika 2 pin input berlogika tinggi, hidupkan 7 LED secara berjalan
 else if (highCount == 2) {
    for (int i = 0; i < 7; i++) {
        digitalWrite(led[i], HIGH);
        delay(100);
        digitalWrite(led[i], LOW);
    }
 }
 // Jika tidak ada kondisi yang terpenuhi, matikan semua LED
 else {
    for (int i = 0; i < 7; i++) {
        digitalWrite(led[i], LOW);
    }
 }
}

Percobaan 1 Kondisi 6: 
3 button menghidupkan 3 LED, 2 button menghidupkan 7 LED running 




7. Download File [Kembali]


HTML                        klik disini
fILE RANGKAIAN     klik disini
Video Percobaan      klik disini
Listing Program         klik disini
datasheet arudino     klik disini
Datasheet Button      klik disini
Datasheet LED         klik disini


Tidak ada komentar:

Posting Komentar

MODUL 4 PRATIKUM uP dan uC

[KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI     1. Pendahuluan     2. Tujuan     3. Alat dan Bahan     4. Dasar Teori     5. Percob...