Laporan Akhir Percobaan 3 ( Menampilkan input keypad pada LCD )





1. Komponen [back]
    
     a. Arduino 

gambar 1. Arduino Uno

Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain.

   b. Keypad 

gambar 2. Keypad



Keypad adalah bagian penting dari suatu perangkat elektronika yang membutuhkan interaksi manusia. Keypad berfungsi sebagai interface antara perangkat (mesin) elektronik dengan manusia atau dikenal dengan istilah HMI (Human Machine Interface). Keypad adalah kumpulan tombol numerik atau alfanumerik dengan jumlah tombol yang terbatas. Keypad numerik hanya berisi tombol karakter angka, dari 0 – 9, sedangkan keypad alfanumerik sama dengan keypad numeric dengan ditambahi karakter alphabet A – D. Kedua tipe keypad ini dilengkapi dengan spesial karakter ‘*’ dan ‘#’. Dengan demikian, sebuah keypad numerik akan berisi 12 karakter (12 tombol), sedangkan keypad alfanumerik terdiri dari 16 karakter (16 tombol).


 c. LCD 

gambar 3. LCD

 LCD (Liquid Cristal Display) adalah salah satu jenis display elektronik yang dibuat dengan teknologi CMOS logic yang bekerja dengan tidak menghasilkan cahaya tetapi memantulkan cahaya yang ada di sekelilingnya terhadap front-lit atau mentransmisikan cahaya dari back-lit. LCD (Liquid Cristal Display) berfungsi sebagai penampil data baik dalam bentuk karakter, huruf, angka ataupun grafik.



2. Rangkaian Simulasi [back]



gambar 4. Rangkaian sebelum di RUN



gambar 5. Rangkain setelh di RUN dan di beri input pada keypad



3. Flowchart [back]







4. Listing Program [back]

#include <LiquidCrystal.h> //Deklarasi library LCD
#include <Keypad.h>   //Deklarasi library keypad

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(16,2);
  lcd.setCursor(0,1);
  
}

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
    }
}



5. Video [back]







6. Kondisi [back]

Pada praktikum modul 1 ini. Kondisi percobaan 3 diperintahkan untuk menampilkan input keypad pada LCD.


      a. Kenapa pada percobaan 3,kaki lcd hanya digunakan kaki D4-D7 dan jelaskan alasannya

          Jawab:

        Karena kita menggunakan keypad 4x3, jadi untuk menampilkan output pada LCD kita membutuhkan input sebanyak 4 bit. Dimana:

·       D1 sebagai bit pertama ( 2 pangkat 0)

·       D2 sebagai bit kedua (2 pangkat 1 )

·       D3 sebagai bit ketiga ( 2 pangkat 2 )

·       D4 sebagai bit ke empat ( 2 pangkat 3 )

               Ke empat bit ini akan aktif berdasarkan kode( angka atau symbol ) yang teah di inputkan di keypad.


 b. Apa fungsi kaki RS, RW dan E pada LCD.?

          Jawab: 

        RS ( Register select) , berfungsi ketika dibarikan logika high,maka data dapat di transfer dari dan menuju modulnya.

       R/W (Read/Write) ,berfungsi sebagai perintah write apabila berlogika 0 (low), dan berfungsi sebagai read apabila diberi logika 1 (High)

      Enable ,berfungsi  untik transfer atual dari perintah-perintahatau karektaer antara modul dengan hambatan data.

 

 c. Pada listing program terdapat syntax 

            lcd.setCursor(1,2)


            apa maksudnya?

              Jawab:

c.                           Syntax lcd.setCursor(1,2) maksudya adalah perintah untuk memulai penulisan pada LCD itu di mulai pada baris ke 2 dan kolom ke 3. Karena pada rangkaian digital penulisan di mulai dari angka 0.

contoh :

 lcd.setCursor(0,0)  = penulisan di mulai dari baris pertama dan kolom pertama

 lcd.setCursor(0,1)   = penulisan di mulai dari baris pertama dan kolom kedua

untuk lebih jelasnya silahkan dilihat komponen LCD di atas.


7. Link Download [back]

           Rangkaian Simulasi [Download]

           Video Simulasi [Download]

          HTML[Download]




Tidak ada komentar:

Posting Komentar

Bahan Presentasi Kuliah     Mikroprosesor dan Mikrokontroler  Oleh: Taufik Alridho (1810953026) Dosen Pengampu: Dr. Darwison, M.T. Referensi...