Kamis, 07 Maret 2024

 [KEMBALI KE MENU SEBELUMNYA]




PERCOBAAN 6
8 x Switch SPDT & LCD


1. Prosedur [Kembali]


  1. Rangkai semua komponen sesuai kondisi yang dipilih
  2. Buat program di aplikasi arduino IDE
  3. Setelah selesai masukkan program ke arduino (Verify and Upload)
  4. Jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
  5. Selesai

2. Hardware dan Diagram Blok [Kembali]

A. Hardware

1. LCD




2. Push Button



3. Arduino Uno




B. Diagram Blok




3. Rangkaian Simulasi dan Prinsip kerja [Kembali]

A. Rangkaian Simulasi

B. Rangkaian Pratikum





Prinsip Kerja 

    Percobaan keenam ini adalah pengujian saklar SPDT dan tampilan LCD. Komponen-komponen yang terlibat dalam rangkaian ini meliputi Arduino Uno (ATMEGA328P-PU) sebagai mikrokontroler, saklar push button SPDT sebagai pemberi input, kabel jumper untuk koneksi elektrik, potensiometer, dan LCD 16x2 yang menunjukkan output dari input tombol yang diberikan.

Mekanisme kerja dari rangkaian ini didasarkan pada logika input yang diberikan ke mikrokontroler. Misalnya, ketika tombol push button berwarna merah ditekan, mikrokontroler menerima input logika 1 khusus untuk tombol tersebut, sementara input lainnya akan bernilai logika 0. Program Arduino telah diprogram sedemikian rupa sehingga ketika menerima input logika 1 dari tombol push button, output yang sesuai akan ditampilkan pada LCD. Sebagai contoh, jika tombol push button berwarna merah yang ditekan, maka LCD akan menunjukkan kata “MERAH”. Program Arduino dirancang khusus untuk menampilkan nama warna dari tombol push button yang ditekan pada LCD. Potensiometer dalam rangkaian ini berfungsi untuk mengatur tingkat kontras pada LCD 16x2.

    

4. FlowChart [Kembali]

A. Listing Program 
#include <LiquidCrystal.h>
#define PB1 A0
#define PB2 A1
#define PB3 A2
#define PB4 A3
#define PB5 A4
#define PB6 A5
#define PB7 12
#define PB8 13
const int rs = 11, en = 10, d4 = 6, d5 = 5, d6 = 4, d7 = 3;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
bool Button1,Button2,Button3,Button4,Button5,Button6,Button7,Button8;
void setup() {
 Serial.begin(9600);
 lcd.begin(16,2);
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() {
 Button1 = digitalRead(PB1);
 Button2 = digitalRead(PB2);
 Button3 = digitalRead(PB3);
 Button4 = digitalRead(PB4);
 Button5 = digitalRead(PB5);
 Button6 = digitalRead(PB6);
 Button7 = digitalRead(PB7);
 Button8 = digitalRead(PB8);
 if(Button1==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW &
Button6==LOW & Button7==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Merah");
 }
 else if(Button2==HIGH & Button1==LOW & Button3==LOW & Button4==LOW & Button5==LOW
& Button6==LOW & Button7==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Kuning");
 }
 else if(Button3==HIGH & Button2==LOW & Button1==LOW & Button4==LOW & Button5==LOW
& Button6==LOW & Button7==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Hijau");
 }
 else if(Button4==HIGH & Button2==LOW & Button3==LOW & Button1==LOW & Button5==LOW
& Button6==LOW & Button7==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Biru");
 }
 else if(Button5==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button1==LOW
 & Button6==LOW & Button7==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 1);
 lcd.print("Merah");
 }
 else if(Button6==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW
& Button1==LOW & Button7==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 1);
 lcd.print("Hijau");
 }
 else if(Button7==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW
& Button6==LOW & Button1==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 1);
 lcd.print("Biru");
 }
 else if(Button8==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW
& Button6==LOW & Button7==LOW & Button1==LOW){
 lcd.clear();
 lcd.setCursor(0, 1);
 lcd.print("Putih");
 }
 else if(Button1==LOW & Button2==LOW & Button3==LOW & Button5==LOW & Button5==LOW
& Button6==LOW & Button7==LOW & Button8==LOW){
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Silahkan Tekan");
 lcd.setCursor(0, 1);
 lcd.print("Salah Satu SW");
 }
 else{
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Error");
 }
 delay(100); // Tambahkan penundaan agar tampilan tidak berubah terlalu cepat
}


B. Flowchart








5. Video Demo [Kembali]




6. Kondisi [Kembali]

       Menggunakan 8 Push Button untuk menampilkan nama warna push button yang ditekan pada LCD.


7. Download File [Kembali]

Download HMTL klik disini
Download Simulasi Rangkaian klik disini
Download Video Demo klik disini
Download Datasheet ARDUINO UNO klik disini
Download Datasheet Switch SPDT klik disini
Download Datasheet LCD 2x16 klik disini










Tidak ada komentar:

Posting Komentar

Mikro 2024 Modul  4 [KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI     1. Pendahuluan     2. Tujuan     3. Alat dan Bahan     4. Dasar...