Tugas Pendahuluan 1





Tugas Pendahuluan 1
== Percobaan 6 Kondisi 4 ==


  1. Membuka proteus
  2. Buka file proteus yang sudah disesuaikan dengan kondisi
  3. Running rangkaiannya
  4. Sesuaikan dengan kondisi yang diinginkan


Arduino Uno


LCD

Button







Sebelum menjalankan rangkaian, compile terlebih dahulu listing program pada arduino IDE dan pastikan kembali file .HEX pada arduino diproteus sesuai dengan yang ada di hasil compiling arduino IDE.


Pada gambar rangkaian diatas adalah kondisi awal rangkaian dijalankan. Saat belum ada button yang ditekan LCD akan mengeluarkan tulisan berupa "Silahkan Tekan Salah Satu SW". 


Dan pada rangkaian diatas ini adalah jika button 1-4 ditekan maka akan muncul tulisan "LEI" pada LCD dikolom pertama. Ini dikarenakan saat button ditekan maka button akan berlogika high (1) yang mana itu akan membuat arduino menjalankan program untuk mengeluarkan tulisan LEI pada LCD. 


Sedangkan, pada rangkaian diatas ini saat button 5-8 ditekan maka akan button akan berlogika high (1) yang membuat arduino bisa menjalankan program untuk menghasilkan tulisan "DTE" pada kolom 2 LCD.



#include <LiquidCrystal.h> 

// Define button = mendefinisikan konstanta untuk setiap pin tombol tekan
#define PB1 A0 
#define PB2 A1 
#define PB3 A2 
#define PB4 A3 
#define PB5 A4 
#define PB6 A5 
#define PB7 12 
#define PB8 13 

// Initialize LCD = LCD diinisialisasi dengan pin-pin yang ditentukan
const int rs = 11, en = 10, d4 = 6, d5 = 5, d6 = 4, d7 = 3; 
LiquidCrystal lcd(rs, en, d4, d5, d6, d7); 

// Define variables to store button states = Menyimpan status masing-masing tombol.
bool Button1, Button2, Button3, Button4, Button5, Button6, Button7, Button8; 

void setup() { 
  Serial.begin(9600); 
  lcd.begin(16, 2); // Initialize LCD: 16 columns, 2 rows

  // Pin untuk tombol tekan diatur sebagai input
  pinMode(PB1, INPUT); 
  pinMode(PB2, INPUT); 
  pinMode(PB3, INPUT); 
  pinMode(PB4, INPUT); 
  pinMode(PB5, INPUT); 
  pinMode(PB6, INPUT); 
  pinMode(PB7, INPUT); 
  pinMode(PB8, INPUT); 

void loop() { 
  // Membaca status setiap button ditekan
  Button1 = digitalRead(PB1); 
  Button2 = digitalRead(PB2); 
  Button3 = digitalRead(PB3); 
  Button4 = digitalRead(PB4); 
  Button5 = digitalRead(PB5); 
  Button6 = digitalRead(PB6); 
  Button7 = digitalRead(PB7); 
  Button8 = digitalRead(PB8);  

  // Menampilkan "LEI" jika buttons 1 ke 4 ditekan
  if (Button1 && Button2 && Button3 && Button4) { 
    lcd.clear(); 
    lcd.setCursor(0, 0); 
    lcd.print("LEI"); 
  } 
  // Menampilkan "DTE" jika buttons 5 ke 8 ditekan
  else if (Button5 && Button6 && Button7 && Button8) { 
    lcd.clear(); 
    lcd.setCursor(0, 1); 
    lcd.print("DTE"); 
  } 
  // Menampilkan default message jika tidak ada button yang ditekan
  else { 
    lcd.clear(); 
    lcd.setCursor(0, 0); 
    lcd.print("Silahkan Tekan"); 
    lcd.setCursor(0, 1); 
    lcd.print("Salah Satu SW"); 
  } 

  delay(100); // Delay ditambahkan untuk mencegah perubahan tampilan yang cepat
}


Modul 1: Percobaan 6 Kondisi 4
"Button 1 - 4 menampilkan LEI dikolom 1, Button 5 - 8 menampilkan DTE dikolom 2"

Tidak ada komentar:

Posting Komentar

  PRATIKUM SISTEM DIGITAL TAHUN 2022 OLEH : Tyas Ananda Putri 2010952036 JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS ANDALAS PADANG 2021