LAPORAN MIKROKONTROLER KEYPAD

PRAKTIKUM MIKROKONTROLER
AKSES KEYPAD

Disusun Oleh

Khairinnisa Siregar         16507134042
       




TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA









A.    Tujuan
Setelah melakukan praktik mahasiswa diharapkan dapat:
1.      Memahami prinsip kerja keypad/scanning
2.      Mampu menggunakan keypad sebagai input
B.     Dasar Teori
Keypad dapat dibuat dari susunan push button yang terdiri dari baris dan kolom. Untuk mengontrol sebuah keypad diperlukan proses scanning (penelusuran) melalui kolom atau baris. Jika kolom dipakai untuk scanning maka baris berfungsi sebagai input, begitu sebaliknya. Sehingga dengan demikian, melalui keypad jumlah I/O akan semakin banyak disbanding akses I/O per bit. Misalnya dalam sebuah Atmega16 port c 8 bit, maka akan mampu dipakai sebagai input maks 4x4 keypad (16 input). Penggunaan keypad 4×4 setidaknya dapat memberikan gambaran bagi programmer bahwa terjadi penghematan dari sisi hardware, akan tetapi berakibat pemborosan dari sisi software.
C.     Alat dan Bahan
1.      Modul AVR Atmega8535/8/16/32
2.       Jumper
3.      Power supply 5-12V
D.    Skema Rangkaian

E.     Langkah Kerja
1.      Buatlah alat dan bahan seperti rangkaian di atas;
2.      Sebelum Anda menulis program aturlah seperti gambar berikut;
// RS - PORTD Bit 2
// RD - PORTD Bit 1
// EN - PORTD Bit 3
// D4 - PORTD Bit 4
// D5 - PORTD Bit 5
// D6 - PORTD Bit 6
// D7 - PORTD Bit 7

3.      Tuliskan list program berikut;
/*****************************************************
Author        : Muslikhin/ UNY Electronics
Comments : Jajala mesti iso, nek ra jajal ra bakal iso
 Chip type   : ATmega16 / Clock 8 MHz *****************************************************/
#include <mega16.h>
#include <alcd.h>
#include <delay.h>
#include <stdio.h>
#include <stdlib.h>

void main(void)
{
 lcd_init(16);

 while (1)
{
// KOLOM 1
DDRC = 0b00001111;
PORTC = 0b11111110; delay_us(1);
            if (PINC==0b11101110)
    {
lcd_gotoxy (0,0); 
lcd_putsf ("1"); delay_ms(100); lcd_clear ();
}
        else if(PINC==0b11011110)
              {    
lcd_gotoxy (0,0);   lcd_putsf ("4"); delay_ms(100); lcd_clear ();
 }
else if (PINC==0b10111110)
 {             
lcd_gotoxy (0,0); lcd_putsf ("7"); delay_ms(100); lcd_clear ();
}
else if (PINC==0b01111110)
{
 lcd_gotoxy (0,0);
lcd_putsf ("*"); delay_ms(100); lcd_clear ();
 };
                          // KOLOM 2
DDRC = 0b00001111;
PORTC = 0b11111101; delay_us(1);
if (PINC==0b11101101)
 {
lcd_gotoxy (0,0);
lcd_putsf ("2"); delay_ms(100);
 lcd_clear ();
}
 else if (PINC==0b11011101)
 {
 lcd_gotoxy (0,0);
 lcd_putsf ("5"); delay_ms(100);
 lcd_clear ();
 }
else if (PINC==0b10111101)
 {
lcd_gotoxy (0,0);
lcd_putsf ("8"); delay_ms(100);
lcd_clear ();
 }
else if (PINC==0b01111101)
        {
         lcd_gotoxy (0,0);
         lcd_putsf ("0");
delay_ms(100);
lcd_clear ();
};
// KOLOM 3
DDRC = 0b00001111;
PORTC = 0b11111011;
delay_us(1);
if (PINC==0b11101011)
  {
  lcd_gotoxy (0,0);
  lcd_putsf ("3");
  delay_ms(100);
  lcd_clear ();
  }
      else if (PINC==0b11011011)
 {
 lcd_gotoxy (0,0);
 lcd_putsf ("6");
delay_ms(100);
lcd_clear ();
 }
       else if (PINC==0b10111011)
{
lcd_gotoxy (0,0);
 lcd_putsf ("9");
 delay_ms(100);
 lcd_clear ();
 }
     else if (PINC==0b01111011)
{
lcd_gotoxy (0,0);
lcd_putsf ("#");
 delay_ms(100);
lcd_clear ();
  };
               }
            }















F.      Hasil dan Analisa

Analisa : pada rangkaian ini untuk menampilkan angka pada lcd digunakan push button sebagai tombol. Urutan angka pada tombol push button sesuai dengan gambar keypad yang ada dibawah yaitu misalnya ketika menekan tombol yang ke 9 maka pada lcd akan menampilkan angka 9 kemudian untuk menampilkan tampilan pada lcd digunakan lcd_gotoxy (0,0) untuk menentukan kolom dan baris pada lcd , lcd_putsf ("6") untuk menampilan angka 6 pada lcd dan lcd_clear () untuk membersihkan layar lcd kemudian keypad berfungsi untuk penghematan port mikrokontroler karena jumlah key (tombol) yang dibutuhkan banyak pada suatu sistem dengan mikrokontroler.
G.    Kesimpulan
1.   Cara kerja keypad yaitu untuk membaca penekanan tombol pada matrix keypad pada mikrokontroler dilakukan secara bertahap yaitu  kolom demi kolom dari kolom pertama sampai kolom ke 3 dan baris pertama hingga baris ke 4. Program untuk scaning matrix keypad dapat bermacam-macam, tapi pada intinya sama.
2.  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).


Komentar

Postingan populer dari blog ini

LAPORAN MIKROKONTROLER RTC

LAPORAN MIKROKONTROLER TIMER/COUNTER