16
AKSES KEYPAD MATRIK 4X4 DENGAN TAMPILAN LCD KARAKTER 16X2 PADA MODUL PRAKTIKUM MIKROKONTROLER AVR STK500 MAKALAH PRAKTIK KERJA LAPANGAN LABORATORIUM MIKROPROSESOR DIPLOMA III TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS DIPONEGORO Makalah Ditulis dan Dipresentasikan pada Seminar Kerja Praktik Program Studi Diploma III Teknik Elektro Universitas Diponegoro Pada Tanggal 27 Maret 2013 OLEH R OBY ADI WIBOWO NIM : 21060110060011

Makalah Seminar KP 2

Embed Size (px)

DESCRIPTION

Makalah

Citation preview

AKSES KEYPAD MATRIK 4X4 DENGAN TAMPILAN LCD KARAKTER 16X2 PADA MODUL PRAKTIKUM MIKROKONTROLER AVR STK500

MAKALAH PRAKTIK KERJA LAPANGAN

LABORATORIUM MIKROPROSESOR

DIPLOMA III TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS DIPONEGORO

Makalah Ditulis dan Dipresentasikan pada Seminar Kerja Praktik

Program Studi Diploma III Teknik Elektro

Universitas Diponegoro

Pada Tanggal

27 Maret 2013

OLEH

ROBY ADI WIBOWO

NIM: 21060110060011

PROGRAM STUDI DIPLOMA III TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS DIPONEGORO

SEMARANG

2013

BAB I

PENDAHULUAN

1.1 Latar Belakang

Kemajuan teknologi saat ini sangat pesat, terutama dalam bidang system kontrol dan automasi system. Penggunaan mikrokontroler sebagai sebuah otak dari suatu system kontrol sangat banyak, karena mikrokontroler itu sendiri yang murah, mudah, ekonomis, dan dengan space ruang yang sangat kecil, sehingga sangat digemari oleh para desainer system kontrol.

Selain itu, penggunaan mikrokontroler dianggap sangat ampuh untuk memecahkan masalah-masalah dalam suatu system digital, mulai dari fungsi yang sangat sederhana, hingga pada fungsi yang sangat kompleks. Karena fasilitas-fasilitas yang dimiliki oleh mikrokontroler itu sendiri sudahlah sangat banyak untuk memenuhi kebutuhan system kontrol kita saat ini. Dan juga pada system keamanan sekalipun menggunakan sebuah mikrokontroler sebagai otaknya. Sistem keamanan ini menggunakan beberapa HMI (Human Machine Interface). Yaitu antarmuka yang digunakan untuk komuikasi antara manusia dengan mesin sehingga terjadi suatu kesepahaman antara perintah yang dijalankan dan yang memberi perintah. HMI itu sendiri dapat berupa display dan tombol sebagai alat komunikasi dengan mesin. Display itu senddiri dapat berupa LCD, dan seven segment, sedangkan tombol itu dapat berupa keypad, ataupun hanya button-button.

1.2 Tujuan

Tujuan penulisan makalah ini yaitu agar para peserta seminar dapat mengetahui cara kerja keypad dan LCD sebagai HMI, mengetahui cara akses LCD dan keypad dengan menggunakan STK500

1.3 Rumusan Masalah

Konfigurasi tombol-tombol pada keypad yang dirangkai pada AVR STK500 untuk mengetahui data yang ditampilkan melalui LCD karakter 16x2.

BAB II

PERMASALAHAN

Sebagai salah satu Human Machine Interface, Keypad dan LCD merupakan komponen yang sangat penting dalam system kontrol maupun system monitoring. Kedua device ini dalam cara aksesnya mempunyai cara dan konfigurasi tertentu, sehingga tidak dapat secara langsung dihubungkan begitu saja dengan device yang lain.

Untuk itu, maka perlu penjelasan lebih lanjut mengenai akses keypad dan LCD ini pada AVR STK500.

BAB III

AKSES KEYPAD MATRIK DENGAN TAMPILAN LCD KARAKTER 16X2 PADA MODUL PRAKTIKUM MIKROKONTROLER

AVR STK500

3.1 LCD Karakter 16x2

LCD atau Liquid Crystal Display merupakan salah satu HMI yang bertugas sebagai penampil atau display. LCD di sini berupa karakter 16x2 yaitu LCD yang tersusun dari pixel-pixel berkarakter sebanyak 32 karakter. Yang terdiri dari 16 kolom dan 2 baris. Pada LCD ini terdapat pin-pin yang mempunyai fungsi berbeda-beda. Konfigurasi pin pada LCD karakter 16x2 ini dapat ditunjukkan pada tabel 1.

Tabel 1 konfigurasi pin LCD karakter 16x2

DB0-DB7 merupakan data bus inputan 8 bit. Dari kedelapan data ini untuk penghematan port untuk komunikasi pada LCD, maka yang diaktifkan hanyalah 4 bit data bus, yaitu data bus DB4-DB7.

3.2 Keypad

Keypad Adalah salah satu HMI yang sudah terkonfigurasi sedemikian rupa sehingga terbentuk menjadi suatu tombol-tombol yang tersusun. Keypad ini tersusun secara matrik antara baris dan kolomnya. Misalnya matrik 3x4, 4x4, 8x8, dan lain-lain. Keypad matrik 3x4 yaitu keypad matrik yang mempunyai 3 kolom dan 4 baris, matrik 4x4 mempunyai 4 kolom dan 4 baris, dan begitu seterusnya. Susunan keypad matrik 4x4 ditunjukkan oleh gambar

Gambar 3.1 Konfigurasi Jalur Tombol Keypad

Pembacaan tombol pada keypad tersebut dilakukan dengan cara scanning. Yaitu pemeriksaan tombol satu-persatu secara matrik. Pada baris mengirimkan logika 1, saat terjadi penekanan tombol, baris benjadi berlogika 0 dan mikro menunggu umpan balik dari kolom manakah berubah menjadi logika 1. Mikro akan melakukan pergesaeran bit pada kolom hingga menemukan logika 1 pada kolom.

3.3 AVR STK500

AVR STK500 merupakan trainer kit buatan Atmel. Yaitu perusahaan semikonduktor yang khusus dalam pembuatan mikrokontroler. Pada STK500 ini, berbagai IC mikrokontroler keluarga AVR dengan packing DIP dapat dimasukkan dalam soketnya. Karena pada STK500 ini mendukung berbagai soket DIP, mulai dari 40 pin hingga 20 pin.

Gambar 3.2 Konfigurasi Pin STK500

3.4 Akses Keypad pada Modul Praktikum AVR STK500

(Konektor LCD) (PORTC)Agar dapat mengakses keypad dan LCD dengan STK500, maka device harus dikoneksikan seperti pada gambar 3.3

(Konektor Keypad) (PORTD)Gambar 3.3 Koneksi STK500 dengan Driver

Setelah sudah terkoneksi, masukkan listing program berikut dengan metode HVPP.

$regfile = "m8535.dat"

$crystal = 4000000

Config Kbd = Portd

Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5

Cursor Off

Dim Keypad As Byte

Cls

Do

Keypad = Getkbd()

Waitms 10

Locate 1 , 1

Lcd "DATA KEYPAD"

Locate 2 , 2

Lcd " ' " ; Keypad ; " ' "

Loop

Data dari hasil percobaan keypad dengan tampilan LCD pada modul praktikum mikrokontroler AVR STK500 ditunjukkan pada tabel 2.

Tabel 2 scanning keypad

ANGKA KEYPAD

DITEKAN

PORTD

KOLOM

BARIS

D7

D6

D5

D4

D3

D2

D1

D0

DEFAULT

0

0

0

0

1

1

1

1

1

0

0

0

1

1

1

1

0

2

0

0

1

0

1

1

1

0

3

0

1

0

0

1

1

1

0

A

1

0

0

0

1

1

1

0

4

0

0

0

1

1

1

0

1

5

0

0

1

0

1

1

0

1

6

0

1

0

0

1

1

0

1

B

1

0

0

0

1

1

0

1

7

0

0

0

1

1

0

1

1

8

0

0

1

0

1

0

1

1

9

0

1

0

0

1

0

1

1

C

1

0

0

0

1

0

1

1

*

0

0

0

1

0

1

1

1

0

0

0

1

0

0

1

1

1

#

0

1

0

0

0

1

1

1

D

1

0

0

0

0

1

1

1

Sebagai ilustrasi dapat ditunjukkan pada gambar 3.4

(PD7) (PD6) (PD5) (PD4) (PD3) (PD2) (PD1) (PD0) ( 1 23 A 4 56 B7 89 C* 0# D)

Gambar 3.4 Ilustrasi Saat Terjadi Penekanan Tombol

Mula-mula dalam kondisi default (Tombol tidak ditekan), PORTD.0 PORTD.3 berlogika 1 (Sebagai Output), dan PORTD.4 PORTD.7 berlogika 0 (Sebagai Input). Pada saat ditekan 5 PD1 bernilai 0 sedangkan PD0, PD2, dan PD3 tetap bernilai 1. Setelah itu dapat diketahui bahwa asal data dari PD1, selanjutnya, mikro akan mendeteksi umpan baliknya melalui jalur input (PD4-PD7), jalur input ini akan diperiksa satu per satu oleh mikro. Apabila PD4 tetap bernilai 0 maka pemeriksaan akan bergeser pada PD5, dan ternyata PD5 telah bernilai 1, maka mikro akan memunculkan data keypad dari angka 5. Seperti itu cara scanningnya, tiap baris akan mengirimkan logika 1 dan pada kolom menunggu umpan balik, dan melakukan pergeseran 1 bit jika terjadi perubaan kondisi sampai umpan balik tersebut berkondisi 1

BAB IV

PENUTUP

4.1 Kesimpulan

Dari hasil peninjauan yang telah dilakukan terhadap keypad dan LCD sebagai alat interfacing terhadap manusia, maka dapat disimpulkan:

1. Displaykarakter pada LCD diatur oleh pin EN, RS dan RW:Jalur EN dinamakanEnable. Jalur ini digunakan untuk memberitahu LCD bahwa sedang mengirimkan sebuah data. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat logikalow0 dan set pada dua jalur kontrol yang lain RS dan RW. Ketika dua jalur yang lain telah siap, set EN dengan logika 1 dan tunggu untuk sejumlah waktu tertentu (sesuai dengandatasheetdari LCD tersebut) dan berikutnya set EN ke logikalow0 lagi.

2. Jalur RS adalah jalurRegister Select. Ketika RS berlogikalow0, data akan dianggap sebagi sebuah perintah atau instruksi khusus (seperti clear screen, posisi kursor dll). Ketika RS berlogikahigh1, data yang dikirim adalah data text yang akan ditampilkan padadisplayLCD.

3. Sebagai contoh, untuk menampilkan huruf T pada layar LCD maka RS harus diset logikahigh1. Jalur RW adalah jalur kontrolRead/ Write. Ketika RW berlogikalow(0), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogikahigh1, maka program akan melakukan pembacaan memori dari LCD. Sedangkan pada aplikasi umum pin RW selalu diberi logikalow0. Pada akhirnya, bus data terdiri dari 4 atau 8 jalur (bergantung pada mode operasi yang dipilih olehuser). Pada kasus bus data 8 bit, jalur diacukan sebagai DB0 s/d DB7

4. Pada keypad, terdapat 8 pin yang merupakan kombinasi dari input dan output. Mikrokontroler akan memberikan logika high, dan jalur menunggu keypad hingga diteka, jika keypad ditekan, logika high menjadi low, dan low menjadi high.

5. Starter kit AVR STK500, pada pengunduhan file .hex ke mikrokontroler dapat melalui beberapa cara, yaitu: HVPP (High Volt Paralel Programming), HVSP (High Volt Serial Programming), dan ISP (In System Programming). Dengan menggunakan HVPP ataupun HVSP kita tidak perlu bingung terhadap mikrokontroler yang ter-lock karena salah setting fuse bit, karena pada HVPP program dimasukkan secara parallel, tanpa masuk ke register ISP.

Saat mengakses keypad dengan tampilan LCD, saat dalam kondisi default LCD akan menampilkan angka 16, ini dikarenakan proses scanning menganggap bahwa semua pin terkonfigurasi input dan output saat pembacaan 16.

DAFTAR PUSTAKA

Iswanto. 2008. Design dan Implementasi Sistem Embeded Mikrokontroller ATMega8535 dengan Bahasa Basic. Yogyakarta: Gava Media.

Putra, Agfianto Eko. 2010. Tip dan Trik Mikrokontroller AT89 dan AVR. Yogyakarta: Gava Media.

Susilo Deddy. 2010. 48 Jam Kupas Tuntas Mikrokontroler MCS51 dan AVR. Yogyakarta: Penerbit Andi