RANGKAIAN SISTEM LCD LIQUID CRYSTAL DISPLAY

commit to user 2. Bit6 -- T bit copy storage, Instruksi BLD dan BST menggunakan bit T sebagai sumber atau tujuan dalam operasi bit. Suatu bit dalam sebuah register GPR dapat disalin ke bit T menggunakan instruksi BST, dan sebaliknya bit T dapat disalin kembali kesuatu bit dalam register GPR dengan menggunakan instruksi BLD. 3. Bi5 -- H half cary flag. 4. Bit4 -- S sign bit merupakan hasil operasi EOR antara flag -N negatif dan flag V komplemen dua overflow. 5. Bit3 -- V twos component overflow flag bit ini berfungsi untuk mendukung operasi matematis. 6. Bit2 -- N negative flag flag N akan menjadi set, jika suatu operasi matematis menghasilkan bilangan negatif. 7. Bit1 -- Z zero flag bit ini akan menjadi set apabila hasil operasi matematis menghasilkan bilangan 0. 8. Bit0 -- C cary flag bit ini akan menjadi set apabila suatu operasi menghasilkan carry.

2.4 RANGKAIAN SISTEM

Pengendali yang dirancang adalah menggunakan mikrokontroler dan bekerja dalam ragam single chip operation mode operasi keping tunggal yang tidak memerlukan memori luar karena ROM untuk menyimpan sandi sumber masih mampu untuk menampung program PWM serta penggunaan RAM yang masih bias ditampung oleh RAM dalam dan tidak memerlukan komponen tambahan seperti PPI, karena penggunaan port mikrokontroler hanya 4 port yaitu keluaran sinyal penggerak, masukan keypad, keluaran penampil, pin RS dan pin enable dari LCD penampil. Kristal yang digunakan untuk pengoperasikan mikrokontroler adalah 8 MHz. Port yang digunakan pada sistem, yaitu Port C PC0..PC3, Port D PD0..PD6, Port B PB0..PB7 dan Port A PA0..PA1. II-7 commit to user II-8 commit to user

2.5 PEMOGRAMAN BASCOM

Sebelum dapat digunakan dalam berbagai aplikasi, pengembangan sebuah mikrokontroler harus melewati 3 tahapan yaitu pembuatan hardware untuk aplikasi, perancangan software aplikasi menggunakan bahasa pemrograman dan pengisian software aplikasi yang sudah dibuat ke dalam mikrokontroler. Bahasa pemrograman yang digunakan berupa bahasa pemrograman tingkat rendah Assembly Language, menengah bahasa C maupun bahasa tingkat tinggi seperti Pascal dan BASIC. Software pemrograman compiler yang digunakan adalah BASCOM AVR yang merupakan sebuah compiler BASIC. BASCOM basic compiler sendiri memiliki beberapa jenis berdasarkan seri mikrokontroler yang digunakan. BASCOM dikembangkan oleh MCS Electronics, dan merupakan BASIC compiler. Program yang dibuat dalam bahasa BASIC, akan dikompilasi menjadi machine code, untuk kemudian dimasukkan ke dalam mikrokontroler melalui sebuah programmer. Saat ini sesuai dengan referensi dari situs web MCS electronics, BASCOM baru mendukung mikrokontroler keluarga MCS51 BASCOM-8051 dan keluarga AVR BASCOM-AVR, keduanya produk dari Atmel Corp. Chip kelas AT89S5152 dengan harga sangat terjangkau dan diprogram secara ISP in-system programming. BASIC adalah bahasa interpreter artinya diterjemahkan ke dalam machine code saat program dieksekusi. Positifnya memberikan perintah pada command line dan langsung melihat hasilnya. Negatif-nya lambat. Namun cepat atau lambat tergantung pada keperluan. Bila jeda yang terjadi masih dalam batas yang dapat diterima, berarti kelambatan yang terjadi dapat diabaikan Iswanto, 2008. 2.5.1 Pengenalan BASCOM AVR Bascom memiliki tampilan yang sama dengan bahasa program lainya, hanya saja yang membedakan tampilan pada Bascom lebih sederhana. Dapat dilihat pada gambar 2.6 yang merupakan tampilan dari Bascom. II-9 commit to user Gambar 2.6 Interface BASCOM AVR Sumber: Iswanto, 2008 Pada setiap icon yang ada pada interface diatas memiliki fungsi masing- masing. Adapun fungsi dari tiap-tiap icon dapat dilihat pada tabel 2.1. Tabel 2.1 Fungsi icon pada interface BASCOM AVR Icon Nama Fungsi Shortcut File New Membuat file baru Ctrl+N Open File Untuk membuka file Ctrl+O File Save Untuk menyimpan file Ctrl+S Save as Menyimpan file dengan nama lain. - Print Untuk mencetak dokumen Ctrl+P Print preview melihat tampilan sebelum dicetak. - Syntax check Untuk memeriksa kesalahan bahasa. Ctrl+F7 Program compile mengkompile program yang dibuat. F7 Show result menampilkan hasil kompilasi program. Ctrl+W Simulate mencimulasikan program yang dibuat. F2 Sumber: Iswanto, 2008

2.5.2 Karakter Dalam BASCOM

II-10 commit to user Program BASCOM karakter dasarnya terdiri atas karakter alphabet A-Z dan a-z, karakter numeric 0-9 dan karakter spesial seperti yang ditunjukkan pada tabel 2.2. Tabel 2.2 Karakter-karakter spesial pada BASCOM Karakter Nama Blank atau spasi ‘ Apostrophe Asteriks atau simbol perkalian + Simbol Pertambahan Plus Sign , Comma - Simbol Pengurangan Minus Sign . Period decimal point Slash division symbol will be handled as \ : Colon “ Double Quotation mark ; Semicolon Less than = Equal sign assignment symbol or relation operator Greater than \ Backslash integerword division symbol Sumber: Iswanto, 2008 2.5.3 Tipe Data Setiap variabel dalam BASCOM memiliki tipe data yang menunjukkan daya tampungnya. Hal ini berhubungan dengan penggunaan memori mikrokontroler. Dapat dilihat pada tabel 2.3 yang menjelaskan ukuran dan range dari tiap tipe data BASCOM. Tabel 2. 3 Tipe data BASCOM Tipe Data Ukuran byte Range Bit 18 0-1 Byte 1 0 sampai 255 Interger 2 -32,768 sampai 32,767 Word 2 0 sampai 65535 Long 4 -2147483648 sampai 2147483647 II-11 commit to user Single 4 - String Hingga 254 byte - Sumber: Iswanto, 2008 Variabel dalam sebuah program berfungsi sebagai tempat penyimpanan data atau penampung data sementara, misalnya menampung hasil perhitungan, menampung data hasil pembacaan register. Variabel merupakan pointer yang menunjuk pada alamat memori fisik di mikrokontroler. BASCOM ada beberapa aturan dalam penamaan sebuah variabel, yaitu: 1. Nama variabel maksimum terdiri atas 32 karakter. 2. Karakter bisa berupa angka atau huruf. 3. Nama variabel harus dimulai dengan huruf. 4. Variabel tidak boleh menggunakan kata-kata yang digunakan oleh BASCOM sebagai perintah, pernyataan, internal register dan nama operator AND, OR, DIM. 2.5.4 Program Simulasi BASCOM AVR menyediakan pilihan yang dapat mensimulasikan program. Sehingga setelah membuat suatu program, dapat diperiksa terlebih dahulu apakah program yang dibuat sudah benar atau masih salah sebelum didownload ke mikrokontroler. Adapun bentuk tampilan simulasinya dapat dilihat pada gambar 2.7. II-12 commit to user Gambar 2.7 Tampilan listing BASCOM AVR Sumber: Iswanto, 2008 Tekan tombol untuk memulai simulasi dan memberhentikan simulasi maka tekan tombol . Selain itu untuk dapat melihat perubahan data pada setiap port atau ketika memberikan input pin-pin tertentu dari mikrokontroler, maka gunakan tombol maka muncul tampilan simulasi hardware. Adapun bentuk tampilannya dapat dilihat pada gambar 2.8. Gambar 2.8 Tampilan simulasi hardware Sumber: Iswanto, 2008 II-13 commit to user 2.5.5 Kontrol Program Keunggulan sebuah program terletak pada kontrol program tersebut. Kontrol program merupakan kunci dari keandalan program yang dibuat termasuk pada rule evaluation pada logika samar. Kontrol program dapat mengendalikan alur dari sebuah program dan menentukan apa yang harus dilakukan oleh sebuah program ketika menemukan suatu kondisi tertentu. Kontrol program ini meliputi kontrol pertimbangan kondisi dan keputusan, kontrol pengulangan serta kontrol alternatif. BASCOM menyediakan beberapa kontrol program yang digunakan untuk menguji sebuah kondisi, perulangan dan pertimbangan sebuah keputusan. Beberapa kontrol program yang sering digunakan dalam pemograman dengan menggunakan bahasa BASCOM, yaitu: 1.IF… THEN Dengan pernyataan ini kita dapat menguji sebuah kondisi tertentu dan kemudian menentukan tindakan yang sesuai dengan kondisi yang diinginkan. Sintak penulisannya adalah: IF Syarat Kondisi THEN Pernyataan Sintak di atas digunakan jika hanya ada satu kondisi yang diuji dan hanya melakukan satu tindakan. Jika melakukan lebih dari satu tindakan maka sintaknya harus ditulis, sebagai berikut: IF Syarat kondisi THEN Pernyataan ke-1 Pernyataan ke-2 Pernyataan ke-n END IF 2.SELECT… CASE Perintah ini akan mengeksekusi beberapa blok pernyataan tergantung dari nilai variabelnya. Perintah ini mirip dengan perintah IF... THEN, namun perintah ini memiliki kelebihan yaitu kemudahan pada penulisannya. Sintak, sebagai berikut: SELECT CASE Variabel II-14 commit to user CASE test1 : statement CASE test2 : statement CASE ELSE : statement END SELECT 3.WHILE… WEND Perintah ini mengeksekusi sebuah pernyataan secara berulang ketika masih menemukan kondisi yang sama. Perintah ini akan berhenti jika ada perubahan kondisi dan melakukan perintah selanjutnya. Sintak, sebagai berikut: WHILE Syarat kondisi Pernyataan WEND 4.DO… LOOP Perintah Do... Loop digunakan mengulangi sebuah blok pernyataan terus menerus. Membatasi pengulangannya dapat ditambahkan sebuah syarat kondisi agar perulangan berhenti dan perintahnya menjadi Do... loop Until. Sintak penggunaan perintah ini, sebagai berikut: DO Blok pernyataan LOOP Yang menggunakan perintah Do Loop Until DO Blok pernyataan LOOP UNTIL syarat kondisi 5.FOR… NEXT Perintah ini digunakan mengeksekusi sebuah blok pernyataan secara berulang. Perintah ini hampir sama dengan perintah Do... Loop, namun pada perintah For... Next ini nilai awal dan akhir perulangan serta tingkat kenaikan atau turunnya dapat ditentukan. Penggunaannya, sebagai berikut: For var = start ToDownto end [Step value] Blok pernyataan II-15 commit to user Next Menaikan nilai perulangan gunakan To dan menurunkan gunakan Downto. Tingkat kenaikan merupakan pilihan, jadi dapat digunakan ataupun tidak. Jika nilai kenaikan tidak ditentukan maka secara otomatis BASCOM akan menentukan nilainya yaitu 1. 6.EXIT Perintah ini digunakan untuk keluar secara langsung dari blok program For... Next, Do... Loop, Sub... Endsub, While... Wend. Sintak penulisannya, sebagai berikut: Exit [Do] [For] [While] [Sub] Sintak selanjutnya setelah EXIT bisa bermacam-macam tergantung perintah exit itu berada dalam perintah apa. Jika dalam perintah Do... Loop maka sintaknya menjadi Exit Do. 7.GOSUB Dengan perintah GOSUB program melompat ke sebuah label dan menjalankan program yang ada dalam rutin tersebut sampai menemui perintah return. Perintah return akan mengembalikan program ke titik setelah perintah Gosub. 8.GOTO Perintah GOTO digunakan melakukan percabangan, perbedaannya dengan GOSUB ialah Perintah GOTO tidak memerlukan perintah return sehingga programnya tidak akan kembali lagi ke titik dimana perintah GOTO itu berada. Berikut ini adalah sintak perintah GOTO: GOTO label Label: Panjang label optimum ialah 32 karakter. 2.5.6 ISP Flash Programer 3.7 ISP Programmer merupakan program yang digunakan menuliskan program ke dalam mikrokontroler ATMega8535. Pertama mikrokontroler dihubungkan dengan kabel downloader dengan port paralel pada komputer, II-16 commit to user kemudian nyalakan catu daya mikrokontroler. Lalu tekan tombol OpenFile untuk membuka file yang akan didownload pada mikrokontroler. Setelah itu tekan tombol program tunggu sampai 100, setelah 100 maka program sudah ditulis pada mikrokontroler, dan mikrokontroler siap untuk digunakan. Adapun tampilannya dapat dilihat pada gambar 2.9. Gambar 2.9 Software SPI Sumber: Iswanto, 2008

2.6 LCD LIQUID CRYSTAL DISPLAY

LCD adalah suatu display dari bahan cairan kristal yang pengoperasiannya menganut sistem dotmatrix. LCD banyak diaplikasikan untuk alat-alat elektronika seperti kalkulator, laptop, handphone. Komunikasi data yang dipakai menggunakan mode teks, artinya semua informasi yang dikomunikasikan memakai kode ASCII American Standard Code for Information Interchange. Huruf dan angka yang akan ditampilkan dalam bentuk kode ASCII, kode ini diterima dan diolah oleh mikroprosesor LCD menjadi titik-titik pada dot matrix yang terbaca sebagai huruf dan angka. Tugas mikrokontroler hanyalah mengirim kode-kode ASCII untuk ditampilkan. LCD yang paling sering digunakan untuk operasi standar mempunyai ukuran lebar display 2 baris 16 kolom atau disebut II-17 commit to user sebagai LCD Character 16x2. LCD ini mempunyai 16 buah pin konektor, yang secara umum tiap pinnya didefinisikan seperti pada tabel 2.4. Gambar 2.10 Susunan alamat pada LCD Sumber: Delta-Elektronik.com Pin-pin yang terdapat pada LCD 2x16 memiliki fungsi masing-masing, dapat dilihat pada tabel 2.4 susunan dari kaki-kaki LCD. Tabel 2.4 Susunan kaki LCD No Nama Pin Deskripsi Port 1 VCC +5 V VCC 2 GND 0 V GND 3 VEE Tegangan Kotras LCD 4 RS Registe Slect, 0 = input instruksi, 1 = input data PD7 5 RW 1 = Read, 0 = Write PD5 6 E Enable Clock PD6 7 D4 Data Bus 4 PD4 8 D5 Data Bus 5 PD5 9 D6 Data Bus 6 PD6 10 D7 Data Bus 7 PD7 11 Anode Teganan Positif backlight 12 Katode Tegangan Negatif backlight Sumber: Iswanto.com LCD 2x16 tersusun oleh 2 baris dan 6 kolom alamat yang nantinya akan membentuk karakter. Dapat dilihat pada gambar 2.11 yang memperlihatkan susunan alamat pada LCD 2x16. II-18 commit to user Gambar 2.11 Susunan alamat pada LCD Sumber: Iswanto.com Alamat awal karakter 00H dan alamat akhir 39H. Jadi, alamat awal di baris kedua dimulai dari 40H. Jika Anda ingin meletakkan suatu karakter pada baris ke-2 kolom pertama, maka harus di set pada alamat 40H. Jadi, meskipun LCD yang digunakan 2x16 atau 2x24, atau bahkan 2x40, maka penulisan programnya sama saja. Display karakter pada LCD diatur oleh pin EN, RS dan RW: Jalur EN dinamakan enable. Jalur ini digunakan untuk memberitahu LCD bahwa sedang mengirimkan sebuah data. Mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low “0” 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 dengan datasheet dari LCD tersebut dan berikutnya set EN ke logika low “0” lagi. Jalur RS adalah jalur register select. Ketika RS berlogika low “0”, data dianggap sebagai sebuah perintah atau instruksi khusus seperti clear screen, posisi kursor. Ketika RS berlogika high “1”, data yang dikirim adalah data text yang akan ditampilkan pada display LCD. Selain menampilkan karakter atau angka sesuai keyboard, LCD juga mampu menampilkan karakter khusus lainnya Iswanto, 2008. DDRAM merupakan memori tempat karakter yang ditampilkan berada. Contoh, untuk karakter ‘A’ atau 41H yang ditulis pada alamat 00, maka karakter tersebut akan tampil pada baris pertama dan kolom pertama dari LCD. Apabila karakter tersebut ditulis di alamat 40, maka karakter tersebut tampil pada baris kedua kolom pertama dari LCD www.Delta-Elektronik.com. II-19 commit to user Gambar 2.12 DDRAM M1632 Sumber: Delta-Elektronik.com, 2010 CGRAM merupakan memori untuk menggambarkan pola sebuah karakter di mana bentuk dari karakter dapat diubah-ubah sesuai keinginan. Namun memori ini akan hilang saat powersupply tidak aktif, sehingga pola karakter akan hilang. CGROM merupakan memori untuk menggambarkan pola sebuah karakter di mana pola tersebut sudah ditentukan secara permanen dari HD44780, sehingga pengguna tidak dapat mengubah lagi. Namun ROM bersifat permanen, maka pola karakter tersebut tidak akan hilang walaupun powersupply tidak aktif. Pada saat HD44780 menampilkan data 41H yang tersimpan pada DDRAM, maka HD44780 mengambil data di alamat 41H 0100 0001 yang ada pada CGROM yaitu pola karakter A. II-20 commit to user Gambar 2.13 Karakter Sumber: Newtec.com, 2010

2.7 KEYPAD 4x4