Pages

Programming Arduino, Keypad dan LCD

Pada tutorial ini, kita menggunakan arduino nano. Arduino nano memiliki ukuran yang kecil, kurang lebih seperti flashdisk dengan menggunakan miniUSB untuk komunikasi ke PC. Untuk chip yang digunakan pada board arduino nano adalah Atmega328 (versi 3.x) atau Atmega168 (versi 2.x).



Namun fokus kita pada tutorial ini adalah mengenai penggunaan keypad 4x4 dan LCD 16x2. Perlu diketahui bahwa pada pemerogramman arduino fungsi-fungsi modul sudah didesain untuk sesederhana mungkin diprogram dan dihubungkan ke board arduino dengan library yang terus ter-update seiring waktu,

Seperti modul keypad 4x4, Kita tidak memerlukan coding yang rumit seperti ketika kita menggunakan AVR dengan library yang masih level dasar sehingga kita harus menyusun sebuah fungsi dari mulai inisialisasi input dan output, menyiapkan variable-variable dan fungsi-fungsi yang dibutuhkan sampai kita dapat membaca sebuah keypad. Akan tetapi pada arduino semua fungsi-fungsi dasar tersebut sudah dibuat dalam bentuk library, seperti untuk keypad 4x4 hanya cukup memanggil library atau pada LCD 16x2, cukup memanggil library.

Untuk instalasi dan wiring kabel bisa mengikuti diagram berikut ini :



Berikut program :


#include Keypad.h
#include LiquidCrystal.h

long customKey;

const byte numRows= 4; 
const byte numCols= 4; 
char keymap[numRows][numCols]= 
{
{'1', '2', '3', 'A'}, 
{'4', '5', '6', 'B'}, 
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte rowPins[numRows] = {A0,A1,A2,A3}; 
byte colPins[numCols]= {A4,A5,A6,A7}; 
Keypad myKeypad= Keypad(makeKeymap(keymap), rowPins, colPins, numRows, numCols);

LiquidCrystal lcd(7,6,5,4,3,2);

void setup() {
Serial.begin(9600);
lcd.begin(16,2);
}

void loop() {
   customKey = myKeypad.getKey();

     if (customKey != NO_KEY){
     lcd.print(customKey); delay(1000); lcd.clear();
     }
}

Author : jamal