NIM : 2110951004

.

Selasa, 05 Maret 2024

M1_LA 1_Prak uPuC




1. Prosedur
[Kembali]
    
  1. Rangkai seluruh komponen alat dan bahan yang diperlukan sesuai dengan kondisi percobaan yang dipilih.
  2. Buat program arduino pada aplikasi Arduino IDE sesuai dengan kondisi percobaan. Pastikan aplikasi Arduino IDE sudah mendownload library yang dibutuhkan dan sudah memilih board arduino yang sesuai.
  3. Verifikasi atau upload program pada arduino. 
  4. Jalankan atau uji coba rangkaian yang telah dibuat, dengan memvariasikan button sesuai dengan kondisi.
  5. Perhatikan tampilan output pada LED
  6. Rangkaian telah selesai dibuat.
2. Hardware dan Diagram Blok [Kembali]
A. Hardware

B. Diagram Blog



3. Rangkaian Simulasi dan Prinsip kerja [Kembali]
A. Rangkaian Simulasi

B. Prinsip Kerja
     Pada percobaan ini terdapat 8 buah button sebagai input dan 8 buah LED sebagai output yang mewakili setiap button tersebut. Pada mulanya LED dalam kondisi mati karena tidak ada button yang ditekan. Namun, ketika salah satu button ditekan, maka button tersebut akan memberikan sinyal kepada arduino, lalu arduino akan meneruskan sinyal tersebut ke LED. 

1. Pada rangkaian simulasi LED disini bersifat forward bias, sehingga ketika sinyal keluaran bernilai 1 LED akan hidup. Berikut program ketika LED bersifat forward bias :
// Matikan semua LED terlebih dahulu
  for (int i = 0; i < 8; i++) {
    digitalWrite(led[i], LOW);
  }
 
  // Hidupkan LED sesuai dengan tombol yang ditekan
  if (b8 == HIGH) digitalWrite(led[7], HIGH);
  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);
}

2. Sedangkan pada rangkaian percobaan di praktikum, LED bersifat reverse bias. Sehingga, ketika sinyal keluaran bernilai 0 LED akan menyala. Berikut adalah program ketika LED bersifat forward bias :
// Matikan semua LED terlebih dahulu
  for (int i = 0; i < 8; i++) {
    digitalWrite(led[i], HIGH);
  }
 
  // Hidupkan LED sesuai dengan tombol yang ditekan
  if (b8 == HIGH) digitalWrite(led[7], LOW);
  if (b7 == HIGH) digitalWrite(led[6], LOW);
  if (b6 == HIGH) digitalWrite(led[5], LOW);
  if (b5 == HIGH) digitalWrite(led[4], LOW);
  if (b4 == HIGH) digitalWrite(led[3], LOW);
  if (b3 == HIGH) digitalWrite(led[2], LOW);
  if (b2 == HIGH) digitalWrite(led[1], LOW);
  if (b1 == HIGH) digitalWrite(led[0], LOW);
}

4. Flowchart dan Listing Program [Kembali]
A. Flowchart

B. Listing Program

int led[] = {2, 3, 4, 5, 6, 7, 8, 9};
#define PB1 A0
#define PB2 A1
#define PB3 A2
#define PB4 A3
#define PB5 A4
#define PB6 A5
#define PB7 12
#define PB8 13

void setup() {
  Serial.begin(9600);
  pinMode(PB1, INPUT);
  pinMode(PB2, INPUT);
  pinMode(PB3, INPUT);
  pinMode(PB4, INPUT);
  pinMode(PB5, INPUT);
  pinMode(PB6, INPUT);
  pinMode(PB7, INPUT);
  pinMode(PB8, INPUT);
 
  for (int i = 0; i < 8; i++) {
    pinMode(led[i], OUTPUT);
  }
}

void loop() {
  int b7 = digitalRead(PB7);
  int b8 = digitalRead(PB8);
  int b6 = digitalRead(PB6);
  int b5 = digitalRead(PB5);
  int b4 = digitalRead(PB4);
  int b3 = digitalRead(PB3);
  int b2 = digitalRead(PB2);
  int b1 = digitalRead(PB1);
 
  // Matikan semua LED terlebih dahulu
  for (int i = 0; i < 8; i++) {
    digitalWrite(led[i], LOW);
  }
 
  // Hidupkan LED sesuai dengan tombol yang ditekan
  if (b8 == HIGH) digitalWrite(led[7], HIGH);
  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);
}

5. Video Demo [Kembali]

6. Kondisi [Kembali]
    Percobaan 1 LED & Switch (sesuai modul 1) :
    Ketika button ditekan maka LED akan hidup sesuai dengan button keberapa yang ditekan.

7. Download File [Kembali]
Video Demo
HTML
Share:

0 komentar:

Posting Komentar

Blogger news

Blogger templates