Rabu, 20 Januari 2010

Mengakses LCD 2x16 Dengan Micro Controller AVR8535

Mikrokontroler adalah suatu chip yang memiliki banyak kelebihan, karena dalam bentuk yang kecil telah memiliki ROM, RAM, Input/Output, dan Clock. Oleh sebab itu, mikrokontroler sering disebut juga sebagai mikroprosessor atau komputer mini hal ini dikarenakan dalam bentuk sekecil itu telah memiliki sistem yang sama dengan sistem komputer.

Dengan mikrokontroler kita dapat mengendalikan suatu peralatan agar dapat bekerja secara otomatis. Untuk mengakses LCD 2x16 kita harus mengkonfigurasikan pin dari LCD dengan pin I/O mikrokontroler tersebut. Konfigurasi dari pin-pin tersebut sebagai berikut:


Pin LCD

Keterangan

Pin Mikrokontroller

Keterangan

1

GND

11

GND

2

+5VDC

10

VCC

4

RS

22

Port C.0

5

RD

23

Port C.1

6

EN

24

Port C.2

11

D4

26

Port C.4

12

D5

27

Port C.5

13

D6

28

Port C.6

14

D7

29

Port C.7


Untuk membuat program dan mengkompail agar program tersebut dapat didownload ke mikrokontroler dapat digunakan software CodeVisionAVR, software ini mendukung bahasa pemrograman C.

Di dalam CodeVisionAVR telah menyediakan fungsi pustaka kusus untuk menagani pengaksesan modul LCD yaitu fungsi pustaka lcd.h. Beberapa fungsi yang dimiliki fungsi lcd.h adalah sebagai berikut:

  • void lcd_init (unsigned char lcd_columns)
    Fungsi ini berfungsi untuk menginisialisasi modul LCD yang meliputi sub rutin untuk menghapus tampilan LCD, meletakkan posisi kursor di baris 0 dan kolom 0 serta mendefinisikan jumlah kolom LCD sesuai isi variable lcd_columns. Fungsi ini dipangeil pertama kali sebelum fungsi-fungsi yang lain digunakan.
  • void lcd_clear (void)
    Fungsi inidigunakan untuk menghapus LCD dan meletakkan posisi kursor kembali ke baris 0 dan kolom 0.
  • void lcd_gotoxyt (unsigned char x, unsigned char y)
    Fungsi ini digunakan untuk meletakkan posisi kursor ke baris y dan kolom x masing-masing sesuai isi variable y dan x. Penomoran baris dan kolom selalu dimulai dari 0 untuk pojok kiri atas. Contoh: lcd_gotoxy(8,0) berarti meletakkan posisi kursor pada baris ke 8 kolom 0
  • void lcd_putchar (char c)
    Fungsi ini berguna untuk menampilkan karakter sesuai isi variable c ke LCD dengan posisi kursor saat ini.
  • void lcd_puts (char *str)
    Fungsi ini digunakan untuk menampilkan karakter yang ada di memori RAM pada alamat yang ditunjuk oleh pointer str ke LCD dengan posisi kursor saat ini.
  • void lcd_putsfr (char flash *str)
    Fungsi ini digunakan untuk menampilkan karakter yang ada di memori Flash pada alamat yang ditunjuk oleh pointer str ke LCD dengan posisi kursor saat ini.

Contoh program menampilkan tulisan di LCD:
#include
#asm
.equ __lcd_port=0x12 ;PORTD
#endasm
#include


void main(void)
{
lcd_init(16);
lcd_gotoxy(0,0); &nb sp; // menampilkan pada baris 0 dari kolom 0
lcd_putsf("Naskan"); & nbsp;
lcd_gotoxy(0,1); &nb sp; // menampilkan pada baris 1 dari kolom 0
lcd_putsf("STMIK AMIKOM");
while (1);
}

http://www.beritanet.com