Laporan Percobaan 3




1. Tujuan[ K E M B A L I] 
  1. Merangkai dan menguji aplikasi output pada mikrokontroller Arduino
  2. Merangkai dan menguji input pada mikrokontroller Arduino
  3. Merangkai dan menguji I/O pada mikrokontroller Arduino
Kondisi:
LCD menampilkan "12345678" ketika pada keypad dipencet tombol '#'.

2. Hardware[ K E M B A L I]
Bahan:
  • LCD
  • Keypad

Alat:
  • USB
  • Jumper
  • Arduino
  • Breadboard

3. Rangkaian Simulasi   [ K E M B A L I]

4.  Listing Program dan Flowchart   [ K E M B A L I]

#include <Keypad.h>

#include <LiquidCrystal.h>


const byte ROWS = 4; //Deklarasi jumlah baris 

const byte COLS = 4; //Deklarasi jumlah kolom 

char keys[ROWS][COLS] = {

{'1','2','3','A'},

{'4','5','6','B'},  //Inisialisasi keypad matriks 4x3

{'7','8','9','C'},

{'*','0','#','D'}

};

byte rowPins[ROWS] = {9, 8, 7, 6}; //Deklarasi pin yang digunakan untuk baris 

byte colPins[COLS] = {13, 12, 11, 10}; //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("12345678"); //Menampilkan input dari keypad pada LCD

}

}


5. Analisa    [ K E M B A L I]
LCD menampilkan "12345678" ketika pada keypad dipencet tombol '#'.

Analisa

1. Jelaskan listing program sesuai kondisi masing masing kelompok

Pertama-tama kita memasukan library Keypad dan LCD ke dalam arduino. Lalu kita mendeklarasikan jumlah kolom dan baris untuk keypad (4x). Selanjutnya kita menginisialisasikan tombol-tombol pada keypad dalam bentuk matriks 4x4.

Kita melakukan deklarasi pada pin-pin pada arduino yang digunakan untuk baris dan kolom keypad (pin 6, 8, 7, 9 untuk baris, pin 10, 11, 12, 13 untuk kolom). Selanjutnya dilakukan inisiasi library LCD dengan pin yang digunakan (pin A0, A1, A2, A3, A4, dan A5). Lalu fungsi void setup untuk melakukan set cursor pada baris dan kolom LCD.

Fungsi void loop digunakan untuk melakukan perulangan. Dideklarasikan program untuk menampilkan karakter “12345678” pada LCD jika ditekan tombol ‘#’ pada keypad.

2. Bagaimana jika pin D4 sampai D7 LCD dipindahkan ke pin digital 0 - 3? berikan analisa!

Jika dipindahkan ke pin D0-D3, maka data berubah menjadi 8 bit.

Setiap karakter memiliki ASCII Code dengan besar 8 bit. Dengan menggunakan pin data dari D4 sampai D7 berarti data yang diinput adalah sebesar 4 bit dan dilakukan dengan 2 tahap setelah dua kali clock. Data dikirim berupa nibble. Hanya digunakan 4 pin karena data yang akan diinput tidak banyak.

3. Apa pengaruh V0 terhadap LCD, jelaskan fungsi pin RS, RW, dan E serta bagaimana menghubungkannya agar LCD dapat menampilkan karakter

RS berfungsi sebagai pemilihan register control ataupun register data dimana jika berlogika 0 maka dia berupa perintah dan logika 1 untuk register data. Register control berfungsi sebagai konfigurasi dari LCD dan register data digunakan untuk menuliskan data berupa karakter untuk ditampilkan pada LCD. RS dihubungkan ke pin A0 arduino.

RW berfungsi sebagai membaca atau menuliskan data. RW dihubungkan ke ground.

E berfungsi mengaktifkan LCD ketika penulisan data ke register control dan register data. E dihubungkan ke pin A1 arduino.



7. Link Download   [ K E M B A L I]
a. HTML
f. Video

Tidak ada komentar:

Posting Komentar

Bahan Presentasi ini dibuat untuk Memenuhi Tugas Mata Kuliah Elektronika Oleh: MUHAMMAD FIQRA FUADDY 1910951027 Dosen Penga...