Tugas Pendahuluan 1




1. Foto Hardware dan Diagram Blok [Kembali]

        1. Arduino Uno

        2. Push Button

        3. LED

        4. Resistor

        5. Power Supply


     6. Ground




Diagram Blok:








2. Prosedur Percobaan [Kembali]

  • Rangkai semua komponen 
  • Buat program di aplikasi arduino IDE
  • Setelah selesai masukkan program ke arduino 
  • Jalankan program pada simulasi dan cobakan dengan modul




Prinsip Kerja

Pada rangkaian ini menggunakan komponen antara lain yaitu mikrokontroler (ATMEGA328P-PU), push button, resistor, dan LED.

Mikrokontroler ATMEGA328P-PU adalah inti rangkaian, yang mengelola pengoperasian push button dan LED. Push button terhubung ke mikrokontroler melalui pin input analog pada arduino yaitu pin A1 - A4, sedangkan LED terhubung ke pin output arduino  yaitu pin 2-7. 

Ketika total ada 2 push button yang ditekan, pin input yang terpasang di Arduino mendeteksi perubahan tegangan dan mengirimkan sinyal ke mikrokontroler. Mikrokontroler kemudian mengaktifkan pin output untuk menyalakan LED yang pertama. 
Lalu jika semua tombol yang ditekan, mikrokontroler menerima sinyal dari pin input (A1 - A4) dan mengaktifkan program yang mengalihkan suplai tegangan ke seluruh LED satu per satu dengan delay 10ms, sehingga menyebabkan LED memiliki pola running.

Pada rangkaian ini, resistor R3-R8 digunakan untuk membatasi aliran arus ke LED, sedangkan resistor R11-R14 digunakan untuk konfigurasi pull-down untuk memastikan pin input berfungsi dengan baik.


4. Flowchart dan Listing Program [Kembali]


Listing Program:

// Deklarasi pin untuk button int l1 = 2; int l2 = 3; int l3 = 4; int l4 = 5; int l5 = 6; int l6 = 7; int b1 = A1; int b2 = A2; int b3 = A3; int b4 = A4; void setup() { pinMode(l1, OUTPUT); pinMode(l2, OUTPUT); pinMode(l3, OUTPUT); pinMode(l4, OUTPUT); pinMode(l5, OUTPUT); pinMode(l6, OUTPUT); pinMode(b1, INPUT); pinMode(b2, INPUT); pinMode(b3, INPUT); pinMode(b4, INPUT); } void loop() { int b1State = digitalRead(b1); int b2State = digitalRead(b2); int b3State = digitalRead(b3); int b4State = digitalRead(b4); int pressedCount = b1State + b2State + b3State + b4State; // menyalakan 1 LED bila total 2 button ditekan if (pressedCount == 2) { digitalWrite(l1, HIGH); //LED 1 hidup // LED sisanya mati for (int i = 3; i <= 7; i++) { digitalWrite(i, LOW); } } else if (pressedCount == 4) { //semua LED akan menjalankan pattern running bila total 4 button ditekan for(int i = 7;i >= 2; i--){ digitalWrite(i, HIGH); //LED menyala satu-persatu dari kanan ke kiri delay(10); } for(int i = 7; i >= 2; i--){ digitalWrite(i, LOW); //LED mati satu-persatu dari kanan ke kiri delay(10); } } else { for (int i = 2; i <= 7; i++) { digitalWrite(i, LOW); //LED mati } } delay(10); }


5. Kondisi [Kembali]

    Percobaan 1 Kondisi 5 : "2 button menghidupkan 1 LED, 4 button menghidupkan 6 LED running"









Posting Komentar

0 Komentar