1. Arduino uno
2. Keypad
3. LCD
2. Keypad
3. LCD
#include <LiquidCrystal.h>
#include <Keypad.h>
const byte ROWS = 4; //Deklarasi jumlah baris
const byte COLS = 3; //Deklarasi jumlah kolom
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'}, //Inisialisasi keypad matriks 4x3
{'7','8','9'},
{'*','0','#'}
};
byte rowPins[ROWS] = {10, 9, 8, 7}; //Deklarasi pin yang digunakan untuk baris
byte colPins[COLS] = {13, 12, 11}; //Deklarasi pin yang digunakan untuk kolom
// Inisialisasi library dengan pin yang digunakan
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup() { //Semua kode dalam fungsi ini akan dieksekusi sekali
// Set baris dan kolom LCD
lcd.begin(20, 4);
lcd.setCursor(1,2);
lcd.setCursor(4,3);
lcd.setCursor(0,0);
}
void loop() { //Semua kode dalam fungsi ini akan dieksekusi berulang
char key = keypad.getKey(); //Membaca keypad
if (key) { //Kondisi pilihan jika keypad ditekan
lcd.print(key); //Menampilkan input dari keypad pada LCD
}
}
a. 1. Kenapa pada percobaan 3, kaki LCD hanya digunakan kaki D4-D7 dan jelaskan
alasannya?
Jawab :
Pada percobaan 3 mode LCD yang dipakai adalah mode 4 bit. Hal ini dikarenakan
untuk menghemat penggunaan pin arduino yang digunakan. Artinya, arduino akan
mengirim bit dalam 2 fase, yaitu 4 bit pertama kemudian 4 bit selanjutnya.
2. Apa fungsi kaki RS, RW dan E pada LCD?
Jawab :
RS adalah singkatan dari register select, berfungsi untuk memilih apakah kita ingin
memberikan perintah atau data kepada LCD. R/W adalah singkatan dari read/write,
berfungsi untuk menentukan mode LCD apakah untuk membaca atau menulis. E
adalah singkatan dari enable, berfungsi untuk membolehkan menulis pada register.
3. Pada listing program terdapat syntax lcd.setCursor(1,2) apa maksudnya?
Jawab :
Untuk menentukan cursor pada lcd. Dalam kasus ini, cursor terletak pada kolom
kedua dan baris 3 di lcd.
Rangkaian simulasi disini.
Video simulasi disini.
Listing program disini.
HTML disini.
Tidak ada komentar:
Posting Komentar