NIM : 2110951004

.

Selasa, 05 Maret 2024

M1_LA 2_Prak uPuC




1. Prosedur
[Kembali]
  1. Rangkai seluruh komponen alat dan bahan yang diperlukan sesuai dengan kondisi percobaan yang dipilih.
  2. Buat program arduino pada aplikasi Arduino IDE sesuai dengan kondisi percobaan. Pastikan aplikasi Arduino IDE sudah mendownload library yang dibutuhkan dan sudah memilih board arduino yang sesuai.
  3. Verifikasi atau upload program pada arduino. 
  4. Jalankan atau uji coba rangkaian yang telah dibuat, dengan memvariasikan keypad sesuai dengan kondisi.
  5. Perhatikan tampilan output pada LCD
  6. Rangkaian telah selesai dibuat.
2. Hardware dan Diagram Blok [Kembali]
A. Hardware

B. Diagram Blok

3. Rangkaian Simulasi dan Prinsip kerja [Kembali]
A. Rangkaian Simulasi

B. Prinsip Kerja
     Pada percobaan ini terdapat keypad sebagai input dan LCD sebagai output yang akan menampilkan keluaran di monitor sesuai dengan tombol yang ditekan pada keypad. Pertama-tama keypad dihubungkan ke arduino dengan menyambungkan pin keluaran untuk baris dan kolom secara berurutan masing-masingnya. 
Baris - Arduino
    R1 - 9
    R2 - 8
    R3 - 7
    R4 - 6

Kolom - Arduino
    C1 - 5
    C2 - 4
    C3 - 3

    Saat salah satu push button ditekan, itu menghubungkan baris dan kolom tertentu dalam matriks. Mikrokontroler kemudian memindai setiap baris secara bergantian untuk menemukan push button yang ditekan, lalu memindai setiap kolom untuk mengetahui push button mana yang ditekan dalam baris tersebut. Jika yang ditekan adalah tombol 1 pada keypad, maka pada LCD akan menampilkan "tombol = 1".

4. Flowchart [Kembali]
A. Flowchart


B. Listing Program

#include <Keypad.h>
#include <LiquidCrystal.h>

// Constants for row and column sizes
const byte ROWS = 4;
const byte COLS = 4;

LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);

// Array to represent keys on keypad
char hexaKeys[ROWS][COLS] = {
  {'1', '2', '3', 'A'},
  {'4', '5', '6', 'B'},
  {'7', '8', '9', 'C'},
  {'*', '0', '#', 'D'}
};

// Connections to Arduino
byte rowPins[ROWS] = {9, 8, 7, 6};
byte colPins[COLS] = {5, 4, 3, 2};

// Create keypad object
Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);

void setup() {
  // Setup serial monitor
  Serial.begin(9600);
  lcd.begin(16, 2);
}

void loop() {
  // Get key value if pressed
  char customKey = customKeypad.getKey();
  if (customKey) {
    // Print key value to serial monitor
    lcd.setCursor(0, 0);
    lcd.print("Tombol :");
    lcd.print(customKey);
  }
}

5. Video Demo [Kembali]

6. Kondisi [Kembali]
    
    Percobaan 4 Keypad dan LCD (sesuai dengan modul) :
Ketika tombol keypad ditekan, LCD akan menampilkan output sesuai dengan keypad yang ditekan tersebut

7. Download File [Kembali]
Video Demo
Share:

0 komentar:

Posting Komentar

Blogger news

Blogger templates