TP MODUL 1 PERCOBAAN 6


Percobaan VI

8X Swicth SPDT dan LCD

1. Prosedur
[Kembali]

  • Rangkailah seperti rangkaian berikut
  • Buka Arduino IDE dan masukan listing program
  • Upload program ke arduino
  • Variasikan tombol yang ditekan dan amati keluarannya pada LCD

2. Hardware dan diagram blok [Kembali]
  •           Hardware
                                                                  

     


  •          Digram Blok



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

Switch 1-4 berlogika high

Switch 5-8 berlogika high




Swicth berlogika high semua


  • Prinsip Kerja

Program diunggah ke Arduino Uno dan rangkaian pada proteus untuk mengontrol layar LCD serta membaca status dari beberapa tombol,

  • 1) Dilakukan inisialisasi komunikasi serial dan LCD, serta penugasan pin yang terhubung ke tombol sebagai input di dalam bagian setup().

  • 2) Dalam bagian utama program, terjadi pengawasan terus-menerus terhadap status masing-masing tombol dengan menggunakan fungsi digitalRead()

  • Terdapat di kondisi, PB1-PB4 pada baris pertama (Button1 hingga Button4) ditekan, maka pesan "LEI" akan ditampilkan di baris pertama layar LCD.

    Terdapat di kondisi, PB5-PB8 pada baris kedua (Button5 hingga Button8) ditekan, maka pesan "DTE" akan ditampilkan di baris kedua layar LCD.

    Dan jika di proteus semua berlogika low dan tidak ada tombol yang ditekan, tampilan layar LCD akan dihapus.


    4. FlowChart [Kembali]
    • Flowchart






    • Listing Program
    #include <LiquidCrystal.h>
    
    // Definisi pin untuk tombol dan LCD
    #define PB1 A0
    #define PB2 A1
    #define PB3 A2
    #define PB4 A3
    #define PB5 A4
    #define PB6 A5
    #define PB7 2
    #define PB8 1
    
    // Inisialisasi objek untuk LCD
    const int rs = 13, en = 12, d4 = 9, d5 = 8, d6 = 7, d7 = 6;
    LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
    
    // Variabel boolean untuk status tombol
    bool Button1, Button2, Button3, Button4, Button5, Button6, Button7, Button8;
    
    void setup() {
      // Inisialisasi komunikasi serial dan LCD
      Serial.begin(9600);
      lcd.begin(16, 2); // Inisialisasi LCD 16x2
      // Konfigurasi pin tombol 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() {
      // Baca status tombol
      Button1 = digitalRead(PB1);
      Button2 = digitalRead(PB2);
      Button3 = digitalRead(PB3);
      Button4 = digitalRead(PB4);
      Button5 = digitalRead(PB5);
      Button6 = digitalRead(PB6);
      Button7 = digitalRead(PB7);
      Button8 = digitalRead(PB8); 
    
      // Tampilkan pesan pada LCD berdasarkan status tombol
      if (Button1 || Button2 || Button3 || Button4) {
        lcd.setCursor(0, 0); // Posisi kursor di kolom 1, baris 1
        lcd.print("LEI"); // Menampilkan pesan "LEI" di kolom 1
      } 
      else if (Button5 || Button6 || Button7 || Button8) {
        lcd.setCursor(0, 1); // Posisi kursor di kolom 1, baris 2
        lcd.print("DTE"); // Menampilkan pesan "DTE" di kolom 1
      }
      else {
        lcd.clear(); // Membersihkan tampilan LCD jika tidak ada tombol yang ditekan
      }
      
      delay(100); // Tambahkan penundaan agar tampilan tidak berubah terlalu cepat
    }
    




    5. Kondisi [Kembali]

            Button 1 - 4 menampilkan “LEI” di kolom 1 ,button 5 - 8 menampilkan “DTE” di kolom 2 (Percobaan 6 Kondisi 5)

    6. Video Simulasi [Kembali]



    7. Download File [Kembali]

    Download HMTL Klik disini
    Download Simulasi Rangkaian Klik disini
    Gambar Simulasi  Klik disini
    Download Video Simulasi Klik disini
    Listring Program  Klik disini
    Download Datasheet ARDUINO UNO klik disini
    Download Datasheet LCD 2X16 klik disini








    Tidak ada komentar:

    Posting Komentar