Modul 1 Percobaan 6
Percobaan VI
Switch 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]
Gambar 1. Rangkaian Hardware
Diagram Blok:
Prinsip Kerja:
Pada percobaan kali ini yang dimana menggunakan Switch SPDT sebagai pengaturan inputnya dan LCD yang akan menampilkan output dari arduino uno, yang dimana masing-masing dari Switch SPDT telah di berikan input berupa nama warna-warna sesuai dengan warna dari Switch tersebut. Apabila di tekan salah satu Switch maka outputnya akan tertampil pada LCD berupa nama warna dari Switch yang ditekan.4. Flowchart dan Listing Program [Kembali]
Flowchart:
Flowchart Program
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
}
Ketika Switch SPDT ditekan akan dibaca oleh Arduino dan, arduino akan memberikan perintah untuk menampilkan hasil tersebut pada LCD
᭒ Gambar Simulasi ↠ klik disini
᭒ Video Demo ↠ klik disini
᭒ Video Simulasi ↠ klik disini
᭒ Listring Program ↠ klik disini
᭒ Video Demo ↠ klik disini
᭒ Video Simulasi ↠ klik disini
᭒ Listring Program ↠ klik disini
Comments
Post a Comment