#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. Kenapa pada percobaan 3,kaki lcd hanya
digunakan kaki D4-D7 dan jelaskan alasannya?
Jawab
:
Hal
ini karena fungsi dari kaki LCD D4
- D7 adalah jalur untuk transfer 4 dan 8 bit.
b. Apa fungsi kaki Vss, Vdd,Vee RS, RW dan
E pada LCD?
Jawab :
·
VSS, sebagai sumber catu daya ke ground
·
VDD, sebagai catu daya ke tegangan (+)
·
VEE, digunakan untuk mengatur kontras
display
·
RS, masukan yang pertama dari common
kontrol input untuk mentrasfer dari dan menuju modul.
·
RW, berfungsi untuk read atu write. Jika
RW low maka akan menuliskan karakter ke modul, jika RW high untuk membaca data
karakter dari registernya.
·
E, input yang digunakan untuk transfer aktual
dari perintah-perintah antar modul dengan hubungan data.
c. Pada listing program terdapat syntax lcd.setCursor(0,7)
apa mamksudnya?
Jawab
:
Listing
program ini untuk menunjukan bahwa penulisannya dimulai pada kolom ke-0 dan
baris ke-7
Rangkaian klik disini
Program klik disini
Flowchart klik disini
Video klik disini
Tidak ada komentar:
Posting Komentar