INTERFACE LCD DENGAN MENGGUNAKAN FPGA Lukas Tanutama 1 ; Steven 2 ; Dhanny 3 1 Jurusan Sistem Komputer, Fakultas Ilmu Komputer, Universitas Bina Nusantara Jalan K.H. Syahdan No 9, Palmerah, Jakarta Barat 11480 lukast12@binus.ac.id ABSTRACT Nowadays, in the advancement of technological science, including hardware, designing an interface could be done in the help of FPGA (Field-Programmable Gate Array). FPGA simplifies hardware designing because the hardware architecture made by stimulating inside a computer to minimize manual mistakes. The program spends minimal amount of money and could be reinstalled with no time limit. These advantages make FPGA as a standard program in hardware designing. This research uses analysis and design methods. The analysis stage covers references related to the system in printed and online sources. In the meantime, the hardware and software designing stage is done in modular and block diagram. The system made is an interface for LCD which developed using Xilinx Spartan board. The LCD interface displaying 16 characters x 2 lines is made to display texts statically and dynamically. Many input and output functions in this Xilinx board create chances in another development of the system. Keywords: FPGA, LCD, interface ABSTRAK Seiring berkembangnya ilmu teknologi, terutama hardware, merancang suatu interface pun dapat dilakukan dengan bantuan FPGA (Field-Programmable Gate Array). FPGA mempermudah pembuatan rancangan hardware karena arsitektur hardware yang dibuat langsung disimulasikan dalam komputer sehingga dapat meminimalisasi kesalahan-kesalahan manual. Program ini juga minim biaya dan dapat diprogram ulang tanpa ada batasan waktu. Keuntungankeuntungan inilah yang menjadikan FPGA menjadi standar dalam perancangan hardware. Penelitian ini menggunakan metode analisis dan metode perancangan. Tahap analisis meliputi pencarian referensi yang berhubungan dengan sistem yang dibuat, baik literatur cetak maupun internet. Sedangkan, perancangan dilakukan pada hardware dan software secara modular dibantu dengan diagram blok. Sistem yang dibuat adalah interface untuk LCD yang dikembangkan dengan menggunakan board Xilinx Spartan. Interface LCD yang dapat menampilkan 16 karakter x 2 baris pada sistem ini dibuat untuk menampilkan teks dalam bentuk statik dan dinamik. Banyaknya fungsi input dan output pada board Xilinx ini memungkinkan peluang untuk pengembangan lebih lanjut dari sistem ini. Kata kunci: FPGA, LCD, interface Interface LCD dengan (Lukas Tanutama; dkk) 101
PENDAHULUAN Latar Belakang Dewasa ini perkembangan ilmu di berbagai bidang cukup pesat, khususnya perkembangan teknologi di bidang komputer. Perkembangan itu ditandai dengan ditemukan teori-teori dan algoritma-algoritma baru yang lebih fleksibel dan implementatif. Perkembangan yang sama terjadi dalam bidang perangkat keras sehingga aplikasi menjadi lebih bervariasi serta lebih mudah penerapannya. Perkembangan aplikasi ini dipermudah dengan adanya beberapa macam komponen semi konduktor seperti Application-Specific Integrated Circuit (ASIC), Digital Signal Processor (DSP) dan sekarang Field-Programmable Gate Array (FPGA). Penggunaan FPGA sangat erat hubungannya dengan perancangan suatu perangkat keras. Khususnya dalam hal ini Integrated Circuit (IC) ataupun suatu komponen yang memiliki sebuah fungsi tertentu. Tentu saja dalam hal ini, semua orang berusaha membuat perangkat keras yang lebih baik dari sebuah fungsi umum dengan cara memanfaatkan kelebihan- kelebihan dari FPGA itu sendiri. Dengan bantuan ilmu pengetahuan yang berkembang terutama pada perangkat keras dan piranti lunak komputer pada saat ini, maka dikembangkan suatu sistem yang menggunakan FPGA untuk menampilkan data karakter yang dapat digerakan pada sebuah LCD dengan keypad sebagai input melalui FPGA yang berfungsi sebagai interface. Ruang Lingkup Dalam penulisan skripsi ini dibahas mengenai sebuah aplikasi yang menggunakan FPGA, dalam hal ini yang bekerja sebagai interface guna menampilkan karakter pada LCD. FPGA akan berfungsi menggantikan peran sejumlah Integrated Circuit (IC) yang dahulunya harus dipakai untuk melakukan fungsi interfacing ini. Dalam pembahasan ini, fungsi khusus yang didefinisikan ialah tampilan karakter yang dapat digerakan. Sebagai contoh digunakan karakter alphabet dan angka berbentuk sederhana. Kesederhanaan ini digunakan untuk menguji dan memahami sifat sifat FPGA untuk mengembangkan rangkaian yang kompleks dan mengatasi kendala yang dihadapi. Hasil penelitian ini dapat dikembangkan dengan sedikit penyesuaian untuk data yang kompleks dan gerak dinamik yang lebih kompleks seperti pada informasi multimedia. Tujuan dan Manfaat Tujuan skripsi ini adalah membuat sebuah interface antara keypad dan LCD dengan memanfaatkan kemudahan FPGA untuk melakukan tugas tertentu yang biasanya harus dilakukan sejumlah komponen diskrit. Interface yang telah dikembangkan ini dapat melakukan tampilan karakter secara statik maupun dinamik pada LCD dengan menggunakan data yang tersimpan dalam bentuk memory. Manfaat yang dapat diambil dan diharapkan dari penelitian penggunaan FPGA ini adalah didapatkannya interface LCD yang sangat fleksibel dalam arti tidak terpaku pada sekedar teks yang menampilkan saja tapi berbagai tampilan seperti karakter katakana dan yang lainnya. Interface ini dapat dibuat dalam bentuk chip untuk digunakan secara komersial dan diproduksi secara massal dapat dipakai secara meluas dengan biaya yang ekonomis. 102 Jurnal Teknik Komputer Vol. 17 No. 2 Agustus 2009: 101-112
METODE Metodologi penelitian yang digunakan dalam penelitian interface menggunakan FPGA ini yaitu melakukan studi literatur mengenai interface LCD dan keypad pada berbagai buku dan internet. Selain itu, Peneliti juga mempelajari software Xilinx untuk dapat menerapkan interface pada FPGA. Dalam tahap pembuatan sistem, Peneliti merancang fungsi interface pada FPGA dengan software Xilinx dan melakukan evaluasi terhadap sistem. Pengenalan LCD (Liquid Crystal Display) LCD merupakan suatu alat untuk menampilkan informasi (seperti monitor) berupa data. LCD yang dipakai dalam sistem ini memiliki kombinasi 2 baris dan 16 kolom. LCD ini mempunyai RAM dan ROM tersendiri di dalamnya sehingga FPGA dapat mendrive ke dalam memory LCD dan kemudian ditampilkan pada LCD. Konstruksi Internal LCD Modul LCD berkomunikasi dengan dunia luar melalui Data Register (DR) dan Instruction Regiter (IR). Data tampilan disimpan dalam Display Data RAM (DD RAM) dan tampilan karakter disimpan dalam Character Generator RAM (CG RAM). Register-register pada LCD di antaranya adalah Instruction Register (IR), Data Register (DR), Busy Flag (BF), Address Counter (AC), Display Data RAM (DDRAM), Character Generator ROM (CGROM), dan Character Generator RAM (CGRAM). Sinyal-sinyal antar muka LCD Rangkaian antar muka LCD sangat sederhana, yaitu hanya memiliki 16 pin dan akan terhubung dengan controller yang men-drive-nya. Tabel 1 Pin pada LCD serta fungsinya Pin No. Symbol Level Deskripsi 1 VSS 0V Ground 2 VDD 5.0V Supply voltage untuk logic 3 Vo (Variabel) Operating voltage untuk LCD 4 R/S H/L H: Data, L: Instruksi 5 R/W H/L H: Read, L: Write 6 E H,H L Enable signal 7-14 DB0-DB7 H/L Data bit 0 15 A 4.2V-4.6V Power supply LCD backlight (+) 16 K 0V Power supply LCD backlight (-) Keypad Keypad terdiri dari saklar yang diaktifkan oleh sentuhan atau tekanan yang disusun dalam bentuk matriks. Keypad jenis ini merupakan jenis yang paling murah yang dapat digunakan sebagai alat masukan (input). Keypad ini juga menyediakan beberapa saklar yang terbentuk dalam matriks baris dan kolom. Untuk mengenal tombol mana yang ditekan, maka operasinya perlu dibantu oleh perangkat lunak atau memakai perangkat keras lainnya. Interface LCD dengan (Lukas Tanutama; dkk) 103
FPGA (Field Programmable Gate Array) FPGA (Field Programmable Gate Array) merupakan salah satu jenis programmable device, yaitu suatu komponen logic yang dapat diprogram fungsi logic-nya sesuai keinginan user. Teknologi FPGA sendiri merupakan salah satu jenis dari Programmable Logic Device (PLD) yang menggunakan chip silikon dan terbentuk dari array dan kumpulan Configurable Logic Blocks (CLBs) dan dihubungkan oleh jalur-jalur yang dikendalikan Programmable Switch Matrix (PSM). (Wakerly, 2001) FPGA yang digunakan pada penelitian ini merupakan produk dari perusahaan Xilinx. Untuk penelitian, digunakan Development Kit dari perusahaan Digilent yang menggunakan FPGA dengan tipe XCS10-PC48, berasal dari keluarga Spartan dengan kapasitas sekitar 10.000 gate, memiliki 196 CLB, serta dapat dioperasikan dengan kecepatan hingga lebih dari 80 MHz. Akan tetapi, chip oscillator yang terpasang pada board development kit adalah 50 MHz. (Xilinx, Inc, 2000; Digilent, 2000) Xilinx Foundation Series 2.1 Untuk melakukan pemrograman ke FPGA diperlukan software yang dapat langsung mengimplementasikan sistem yang dibuat menuju board FPGA. Software yang digunakan adalah Xilinx Foundation Series 2.1. (Xilinx, Inc, 2000) Karakteristik Penggunaan FPGA Penggunaan FPGA memberikan banyak kemudahan untuk melakukan desain. Setiap gerbang pada FPGA dapat diprogram sesuai dengan arsitektur yang dikehendaki dan dapat digunakan berulang kali tanpa ada batasan waktu. Kemudahan dalam menggunakan FPGA dalam proses perancangan desain sistem yaitu rekonfigurasi sirkuit dalam proses development dapat dilakukan dengan kecepatan yang tinggi dan dapat dilakukan oleh user sendiri. Kemudian, Parallel Processing dalam sebuah chip tunggal dapat dilakukan dengan kecepatan tinggi. FPGA juga menyediakan solusi software terintegrasi untuk merancang, mensimulasi, mengimplementasi dan men-download ke alatnya. Program tersebut juga memiliki multiple design entry methods, yaitu tersedianya beberapa entry design sesuai kebutuhan seperti: schematic, HDL, dan state machine. Proses sintesis FPGA dapat mengurangi waktu desain yang diperlukan untuk mencapai dan memastikan fungsi yang diberikan karena banyak calon solusi yang dapat dibangun secara cepat dan tepat. Hasil sintesis akan disimulasi yang mana dibutuhkan untuk verifikasi dan pengurangan resiko, tetapi memakan waktu dan mungkin tidak sepenuhnya mewakili dari seluruh lingkungan sistem. Pemilihan penggunaan FPGA melakukan fungsi dan untuk pembuatan komponen fungsional yang khusus ini tergantung dari besarnya finansial yang ada serta kebutuhan yang diinginkan. HASIL DAN PEMBAHASAN Diagram Blok Sistem Secara garis besar akan digambarkan setiap modul baik perangkat keras maupun perangkat lunak yang digunakan dalam sistem ini. 104 Jurnal Teknik Komputer Vol. 17 No. 2 Agustus 2009: 101-112
Penjabaran Sistem Sistem interface LCD dan sistem interface keypad digambarkan pada gambar di bawah ini. Gambar 1 Blok Diagram Sistem Pada blok diagram gambar di atas terlihat fungsi-fungsi dari modul pada blok tersebut yaitu: Fungsi keypad adalah sebagai media input untuk memberitahu pada FPGA informasi yang harus ditampilkan. Fungsi sistem FPGA adalah sebagai pusat dari sistem yang merupakan tempat pengontrolan, pemrosesan dan penyimpanan data dalam melaksanakan tugas interfacenya. Fungsi LCD adalah sebagai alat untuk menampilkan informasi yang sudah diprogram di FPGA dengan menggunakan keypad sebagai input. Perancangan Interface Keypad Dalam perancangannya interface keypad dibagi menjadi 3 modul yaitu modul counter, modul decoder, dan modul scanning. Modul Counter Dalam penelitian ini, menggunakan 2 bit synchronous counter. Pulsa input akan diberikan secara sinkronous yang berarti semua flip flop akan mendapat clock secara bersamaan. Isi dari counter berupa 2 JK flip flop dan 1 gerbang AND. JK flip flop mendapat input dan clock dari osilator. Counter digunakan untuk memberikan input pada decoder. Modul Decoder Decoder akan memilih output yang sesuai dengan konfigurasi input-nya. Banyaknya jumlah output yang akan dipilih adalah sebesar 2 n dari jumlah input. Decoder yang digunakan adalah decoder 2 to 4. Dengan input 2 bit menghasilkan output 4 bit, dimana input didapat dari counter. Pin enable diberi Vcc sehingga enable bernilai 1. Keluaran dari data (D0-D3) disambung ke keypad melalui pin seven segment untuk men-scan baris pada keypad. Modul Scaning Modul scaning terdiri dari pin kolom sebesar 3 bit dan counter sebesar 2 bit sebagai input dan data sebesar 4 bit sebagai pin output. Interface LCD dengan (Lukas Tanutama; dkk) 105
Port kolom disambung ke keypad pada bagian pin kolom di keypad dengan menggunakan pin seven segment yang terdapat pada board Spartan FPGA. Port counter didapat dari hasil keluaran modul counter 2 bit. Isi dalam dari modul scan dapat dilihat pada lampiran. Perancangan Interface LCD Ada 3 modul yang dirancang bagi LCD. Tiap modul menjalankan fungsi khusus yaitu: Modul Display Static 1 Karakter Modul ini, seperti pada Gambar 2, melalukan display yang static pada LCD dengan tombol yang ditekan dari keypad. Port input 4 bit didapat dari hasil keluaran modul scanning dan port clock didapat dari keluaran osilator internal. Port RS, RW, E dan data 8 bit dihubungkan ke pin-pin LCD melalui keluaran pin switch 6-8 untuk RS, RW & E dan pin LED untuk data 8 bit. Pada modul ini terdapat input data yang bernilai 4 bit dari keluaran modul scanning. Port RS untuk mengatur data atau instruksi. Jika RS bernilai '1' berarti data dan jika RS bernilai '0' berarti instuksi. Port RW untuk mengatur read data atau write data ke LCD. Jika RW bernilai '1' berarti read data dan jika RW bernilai '0' berarti write data. Port E untuk enable signal. Modul Display Static per Karakter Gambar 2 Modul Static 1 karakter Modul ini melakukan display karakter per karakter sehingga membentuk informasi yang telah deprogram (disimpan) dalam memory. Port reset didapat dari hasil tombol * yang ditekan dan port clock didapat dari keluaran osilator internal. Port RS, RW, E dan data 8 bit dihubungkan ke pin-pin LCD melalui keluaran pin switch 6-8 untuk RS, RW & E dan pin LED untuk data 8 bit. Port RS untuk mengatur data atau instruksi. Jika RS bernilai '1' berarti data dan jika RS bernilai '0' berarti instruksi. Port RW untuk mengatur read data atau write data ke LCD. Jika RW bernilai '1' berarti read data dan jika RW bernilai '0' berarti write data. Port E untuk enable signal. Modul Display Dynamic Moving Modul ini, seperti pada Gambar 4, melakukan tampilan pada LCD secara bergerak dynamic. Port reset didapat dari hasil tombol # yang ditekan dan port clock didapat dari keluaran osilator internal. Port RS, RW, E dan data 8 bit dihubungkan ke pin-pin LCD melalui keluaran pin switch 6-8 untuk RS, RW & E dan pin LED untuk data 8 bit. Port RS untuk mengatur data atau instruksi. Jika RS bernilai '1' berarti data dan jika RS bernilai '0' berarti instruksi. Port RW untuk mengatur read data atau write data ke LCD. Jika RW bernilai '1' berarti read data dan jika RW bernilai '0' berarti write data. Port E untuk enable signal. 106 Jurnal Teknik Komputer Vol. 17 No. 2 Agustus 2009: 101-112
Gambar 4 Modul dynamic moving Desain Perangkat Keras LCD Untuk memastikan agar tampilan pada LCD terdapat data dari kegiatan sebelumnya, maka sebelumnya tampilan pada LCD harus melalui proses inisialisasi terlebih dahulu. Proses Inisialisasi LCD adalah sebagai berikut: Keypad 1. Sesudah LCD dinyalakan, tunggu sekitar 15ms agar Vcc naik menjadi 4,5 Volt. 2. Beri instruksi Function Set lalu berikan delay. 3. Ulangi langkah kedua sebanyak 2 kali. 4. Beri instruksi Display On 5. Beri instruksi Clear Display 6. Beri instruksi Home (kembali ke posisi awal) 7. Beri instruksi Entry Mode Rangkaian keypad yang akan dirancang menggunakan keypad standar telepon (12 tombol) dengan menggunakan modul keypad sebagai penterjemah dari tombol yang ditekan ke dalam bentuk biner. Rangkaian utama keypad terdiri dari saklar yang disusun membentuk matrik 3*4. Penulis menggunakan modul keypad untuk men-decode nilai dari keypad ukuran 3*4. Sistem lengkap interface LCD Dari hasil pengembangan modul- modul di atas diperoleh rangkaian sebagai berikut: Interface LCD dengan (Lukas Tanutama; dkk) 107
Gambar 5 Interface LCD dengan Keypad Konfigurasi ini adalah dasar dari sistem interface LCD dengan memasukkan modul-modul keypad dan memilih modul fungsi LCD yang dikehendaki untuk dikonfigurasikan pada FPGA diperoleh interface LCD yang fleksibel. Evaluasi Sistem Evaluasi yang dilakukan secara fungsional dimana hasil yang dilihat sesuai dengan program yang dibuat. Evaluasi Modul Counter Dalam penelitian ini, modul counter yang digunakan adalah counter 2 bit. Counter 2 bit terdiri dari 2 buah JK flip flop dan 1 gerbang AND. JK flip flop terdapat pin J, K, clock dan clear sebagai input. Pin Q sebagai output. Pin J, K dan clock diberi input signal dari osillator. Pin clear tidak diberi masukan. Keluaran dari JK flip flop yang pertama disambung ke gerbang AND sebagai delay. Berikut ini adalah tabel kebenaran dari gerbang AND: Tabel 6 Tabel Keluaran Modul Counter Input Output J 1 K 1 J 2 K 2 Q 1 Q 2 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 0 1 108 Jurnal Teknik Komputer Vol. 17 No. 2 Agustus 2009: 101-112
Evaluasi Modul Decoder Pada modul decoder terdapat 3 media input yang terdiri dari 2 bit masukan dari keluaran counter dan 1 port enable yang disambung ke Vcc. Media output-nya ada data 4 bit yang berfungsi sebagai sistem scanning baris untuk keypad. Jika masukkan bernilai 00 artinya modul akan melakukan decoding menjadi 4 bit yang disambung ke input baris daripada keypad yang bernilai 1000. Jika masukkan bernilai 01 maka keluarannya bernilai 0100. Jika masukkan bernilai 10 maka keluarannya bernilai 0010. Jika masukkan bernilai 11 maka keluarannya bernilai 0001. Berikut ini tabel keluaran dari modul decoder: Evaluasi Modul Scanning Tabel 2 Tabel Keluaran dari Modul Decoder Input Output Q 1 Q 2 D 0 D 1 D 2 D 3 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 0 0 0 1 Pada modul scanning terdapat 2 input dan 1 output. Input pertama dari port kolom yang terdiri dari 3 bit dan input yang kedua adalah port counter yang terdiri dari 2 bit. Output merupakan data hasil dari scanning antara input counter dan kolom. Input counter mewakili baris pada keypad. Pada port kolom menunjukkan kolom ke berapa keypad yang ditekan sedangkan pada port counter menunjukkan baris yang sedang di-scan. Port data menunjukkan koordinat pada keypad sehingga dapat diketahui angka berapa yang ditekan. Pada saat kolom bernilai 100 artinya modul akan melakukan scanning pada kolom pertama pada keypad, yaitu angka 1, 4, 7 dan *. Kemudian counter akan bertugas melakukan pengecekan pada baris ke berapa keypad ditekan. Pada saat counter 00, data di set 0001 atau bernilai 1, sehingga jika ditekan akan teridentifikasi tombol angka 1, kemudian counter akan berubah menjadi 01, data di set 0100 atau bernilai 4, kemudian counter akan berubah menjadi 10, data di-set 0111 atau bernilai 7, kemudian counter berubah menjadi 11, data di-set 1010 atau bernilai *. Pada saat kolom bernilai 010 artinya modul akan melakukan scanning pada kolom kedua pada keypad, yaitu angka 2, 5, 8, dan 0. Kemudian counter akan bertugas melakukan pengecekan pada baris ke berapa keypad ditekan. Pada saat counter 00, data di set 0010 atau bernilai 2, sehingga jika ditekan akan teridentifikasi tombol angka 2, kemudian counter akan berubah menjadi 01, data di-set 0101 atau bernilai 5, kemudian counter akan berubah menjadi 10, data di-set 1000 atau bernilai 8, kemudian counter berubah menjadi 11, data di-set 0000 atau bernilai 0. Pada saat kolom bernilai 001 artinya modul akan melakukan scanning pada kolom ketiga pada keypad, yaitu angka 3, 6, 9, dan #. Kemudian counter akan bertugas melakukan pengecekan pada baris ke berapa keypad ditekan. Pada saat counter 00, data di-set 0011 atau bernilai 3, sehingga jika ditekan akan teridentifikasi tombol angka 3, kemudian counter akan berubah menjadi 01, data di-set 0110 atau bernilai 6, kemudian counter akan berubah menjadi 10, data di-set 1001 atau bernilai 9, kemudian counter berubah menjadi 11, data di-set 1011 atau bernilai #. Data keluaran pada modul scanning keypad masuk ke modul display static 1 karakter pada perancangan interface LCD sebagai input. Berikut ini tabel keluaran dari modul scanning: Interface LCD dengan (Lukas Tanutama; dkk) 109
Tabel 3 Tabel Keluaran Modul Scanning Input Output Kolom Counter Data Kolom 0 Kolom 1 Kolom 2 Baris 1 Baris 2 Baris 3 Baris 4 D 0 D 1 D 2 D 3 1 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 1 0 1 0 1 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 0 0 1 1 1 0 1 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 Evaluasi Modul Display Static 1 Karakter Modul ini mendapat masukan dari keypad dengan menggunakan sistem scanning. Pada setiap selesai program Xilinx Foundation Series 2.1 melakukan programming ke dalam board FPGA, hal yang dilakukan adalah dengan melakukan proses inisialisasi pada LCD lalu scanning keypad untuk memilih tombol mana yang ditekan. Setelah mengetahui tombol yang tekan, mengikuti instruksi display clear, dan menampilkan angka atau huruf sesuai tombol yang ditekan. Hasil keluaran dari LCD jika input keypad ditekan sebagai berikut: Tabel 3 Tampilan Display pada LCD Angka Tampilan 1 1 2 Two 3 3 4 Four 5 5 6 Six 7 7 8 Eight 9 9 * BiNus pada baris 1 0 0 # BiNus pada baris 2 Evaluasi Modul Display Static per Karakter Modul ini diprogram untuk menampilkan tulisan Universitas Bina Nusantara. Tulisan Universitas berada pada baris pertama dan tulisan Bina Nusantara berada pada baris kedua. Pada modul ini akan bekerja jika tombol * pada keypad ditekan. Hal yang dilakukan oleh modul ini bila program berjalan adalah proses inisialisasi pada LCD, memberi instruksi set 8 bit transfer, memberi instruksi dis on, memberi instruksi LCD increase, menampilkan data tulisan 110 Jurnal Teknik Komputer Vol. 17 No. 2 Agustus 2009: 101-112
Universitas, memberi instruksi untuk pindah baris ke 2, menampilkan data tulisan Bina Nusantara, memberi instruksi Home (kembali ke awal). Tampilan tulisan yang keluar pada LCD sebagai berikut: U N i v E r s i t a s B I n a N u s a n t a r a Evaluasi Modul Display Dynamic moving Pada modul ini, diprogram untuk menampilkan display dynamic moving dengan tulisan BiNus pada baris pertama dan TK98 pada baris kedua. Setelah itu, tulisan TK98 berpindah posisi ke baris pertama dan tulisan BiNus berpindah ke baris kedua. Kemudian dilakukan pergeseran dari kiri ke kanan sampai tulisan berada pada posisi tengah. Pada modul ini akan bekerja jika tombol # pada keypad ditekan. Hal yang dilakukan oleh modul ini waktu program berjalan adalah (1) proses inisialisasi pada LCD; (2) memberi instruksi set 8 bit transfer; (3) memberi instruksi dis on; (4) memberi instruksi LCD increase; (5) menampilkan data tulisan BiNus ; (6) memberi instruksi untuk pindah baris ke 2; (7) menampilkan data tulisan TK 98 ; (8) memberi instruksi Home (kembali ke awal); (9) memberi instruksi delay; (10) menampilkan data tulisan TK 98 ; (11) memberi instruksi untuk pindah baris ke 2; (12) menampilkan data tulisan BiNus ; (13) memberi instruksi shift ke kanan 2 kali; (14) memberi instruksi shift ke kiri 1 kali, (15) memberi instruksi shift ke kanan 3 kali; (16) memberi instruksi shift ke kiri 1 kali; (17) memberi instruksi shift ke kanan 2 kali. Tahap - tahap tampilan yang keluar pada layer LCD sebagai berikut: Tahap pertama tampilannya sebagai berikut: B i N u s T K 9 8 Tahap kedua tampilannya sebagai berikut: T K 9 8 B i N u s Tahap ketiga tampilannya sebagai berikut: T K 9 8 B i N u s PENUTUP Sistem ini dibuat untuk men-drive LCD, dengan kata lain berfungsi sebagai IC yang khusus melakukan interface ke LCD dengan menggunakan FPGA. Kesimpulan yang didapat dalam perancangan sistem ini adalah (1) sistem berhasil menampilkan karakter, baik secara statik maupun dinamik; (2) VHDL code berhasil menjadi sebuah fungsi, yaitu men-drive LCD; (3) sistem ini Interface LCD dengan (Lukas Tanutama; dkk) 111
dapat langsung diproduksi massal jika diperlukan banyak; (4) penggunaan FPGA mengurangi resiko kesalahan dalam merancang. Saran untuk penelitian selanjutnya yaitu pengembangan agar data dapat dimasukkan ke dalam memori. Kemudian bisa mengggunakan memori external untuk kebutuhan memori yang besar. Pengembangkan FPGA untuk tampilan lain, misalnya papan iklan atau tampilan lain yang mempunyai cost lebih besar dari FPGA. DAFTAR PUSTAKA Anonim (1999). Foundation Series 2.li In-Depth Tutorials. Xilinx, Inc. USA Anonim (1999). Foundation Series 2.li Quick Start Guide. Xilinx, Inc. USA Anonim (1999). Foundation Series 2.li User Guide. Xilinx, Inc. USA Anonim (2001), Introduction to Programmable Logic Device. Xilinx, USA. Anonim (2001), Xilinx Foundation Series Help System. Xilinx, USA. Anonim (2001), Xilinx University Program Educational Support Documents. Xilinx, USA. http://xup.msu.edu Diligent. (2001), Digilab XL Board User s Manual. Digilent Corporation, USA. http://www.digilent.cc Wakerly, John F. (2000). Digital Design: Principles and Practices 3/e. Prentice Hall Engineering, Science & Math. New Jersey. 112 Jurnal Teknik Komputer Vol. 17 No. 2 Agustus 2009: 101-112