Percobaan 4 Kondisi 5
Keypad & LCD
1. Foto Hardware dan Diagram Blok [Kembali]
Arduino Uno
LCD
Diagram Blok:
2. Prosedur Percobaan [Kembali]
1. Susun semua komponen.
2. Buat program menggunakan aplikasi Arduino IDE.
3. Unggah program ke Arduino setelah selesai.
4. Jalankan program pada simulasi dan uji dengan modul.
2. Buat program menggunakan aplikasi Arduino IDE.
3. Unggah program ke Arduino setelah selesai.
4. Jalankan program pada simulasi dan uji dengan modul.
Rangkaian Simulasi
Prinsip Kerja
Rangkaian ini terdiri dari beberapa komponen, yaitu keypad, arduino uno sebagai mikrokontroler, touch sensor,serta LCD.
Prinsip kerja dari rangkaian ini adalah ketika touch sensor mendeteksi adanya sentuhan, maka inputan yang masuk ke arduino akan berlogika 1. Ketika inputan yang masuk ke arduino adalah logika 1 maka pada lcd akan keluar perintah masukkan password yang dimana password akan dimasukkan dengan tombol pada keypad. Namun ketika touch sensor berlogika 1, maka apapun tombol yang ditekan pada keypad tidak akan muncul pada LCD.
4. Flowchart dan Listing Program [Kembali]
Flowchart
Listing Program:
#include <Keypad.h>
#include <LiquidCrystal.h>
const int numRows = 4; // Jumlah baris keypad
const int numCols = 3; // Jumlah kolom keypad
// Matriks untuk keypad
char keymap[numRows][numCols] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};
// Pin untuk keypad
byte rowPins[numRows] = {3, 2, 1, 0};
byte colPins[numCols] = {4, 5, 6};
Keypad keypad = Keypad(makeKeymap(keymap), rowPins, colPins, numRows, numCols);
LiquidCrystal lcd(12, 11, 10, 9, 8, 7); // (RS, E, D4, D5, D6, D7)
const int touchSensorPin = 13; // Pin untuk sensor sentuh
bool passwordEntered = false; // Apakah password sudah dimasukkan
void setup() {
lcd.begin(16, 2);
pinMode(touchSensorPin, INPUT);
lcd.print("Masukkan password:");
}
void loop() {
char key = keypad.getKey();
if (key != NO_KEY && !passwordEntered) {
lcd.print(key);
}
if (digitalRead(touchSensorPin) == HIGH && !passwordEntered) {
// Sensor sentuh aktif, minta masukkan password
lcd.clear();
lcd.print("Password:");
passwordEntered = true;
// Tunggu sampai tombol keypad ditekan dan tampilkan karakter pada LCD
while (true) {
char key = keypad.getKey();
if (key != NO_KEY) {
lcd.print(key);
}
// Keluar dari loop jika tombol "#" ditekan
if (key == '#') {
break;
}
}
}
}
sertakan touch sensor dan tampilan masukkan password pada LCD ketika sensor berlogika HIGH maka password dapat dimasukkan.
Download HTML
Download Rangkaian
Download Program
Download Video Simulasi
Download Datasheet 7-Segment
Download Datasheet Button
Download Datasheet Arduino Uno
Tidak ada komentar:
Posting Komentar